From e4787b4a088b30624c025dc9d36a65c54592e65b Mon Sep 17 00:00:00 2001 From: hmiao <739025250@qq.com> Date: Fri, 17 Dec 2021 18:11:21 +0800 Subject: [PATCH 1/2] [feature] change hfl contract --- .../{DeltaContract.json => HFLContract.json} | 55284 +++++++++------- contracts/hfl.sol | 288 +- 2 files changed, 32503 insertions(+), 23069 deletions(-) rename compile/{DeltaContract.json => HFLContract.json} (60%) diff --git a/compile/DeltaContract.json b/compile/HFLContract.json similarity index 60% rename from compile/DeltaContract.json rename to compile/HFLContract.json index 9845718..1cb003e 100644 --- a/compile/DeltaContract.json +++ b/compile/HFLContract.json @@ -1,5 +1,5 @@ { - "contractName": "DeltaContract", + "contractName": "HFLContract", "abi": [ { "inputs": [ @@ -80,13 +80,13 @@ { "indexed": false, "internalType": "address", - "name": "owner", + "name": "sender", "type": "address" }, { "indexed": false, "internalType": "address", - "name": "sharer", + "name": "reciver", "type": "address" }, { @@ -219,6 +219,12 @@ "internalType": "bytes32", "name": "commitment", "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "taskType", + "type": "string" } ], "name": "TaskCreated", @@ -270,13 +276,18 @@ "name": "commitment", "type": "bytes32" }, + { + "internalType": "string", + "name": "taskType", + "type": "string" + }, { "internalType": "uint64", "name": "currentRound", "type": "uint64" } ], - "internalType": "struct DeltaContract.Task", + "internalType": "struct HFLContract.Task", "name": "task", "type": "tuple" } @@ -296,6 +307,11 @@ "internalType": "bytes32", "name": "commitment", "type": "bytes32" + }, + { + "internalType": "string", + "name": "taskType", + "type": "string" } ], "name": "createTask", @@ -385,9 +401,9 @@ "type": "uint64" }, { - "internalType": "address", - "name": "candidateAddr", - "type": "address" + "internalType": "address[]", + "name": "candidateAddrs", + "type": "address[]" } ], "name": "getClientPublickeys", @@ -405,9 +421,9 @@ "type": "bytes" } ], - "internalType": "struct DeltaContract.Candidate", - "name": "candidate", - "type": "tuple" + "internalType": "struct HFLContract.Candidate[]", + "name": "", + "type": "tuple[]" } ], "stateMutability": "view", @@ -457,7 +473,7 @@ "type": "address[]" } ], - "internalType": "struct DeltaContract.ExtCallTaskRoundStruct", + "internalType": "struct HFLContract.ExtCallTaskRoundStruct", "name": "taskround", "type": "tuple" } @@ -532,9 +548,9 @@ "type": "uint64" }, { - "internalType": "address", - "name": "sender", - "type": "address" + "internalType": "address[]", + "name": "senders", + "type": "address[]" }, { "internalType": "address", @@ -542,7 +558,7 @@ "type": "address" } ], - "name": "getSecretSharingData", + "name": "getSecretSharingDatas", "outputs": [ { "components": [ @@ -567,9 +583,9 @@ "type": "bytes" } ], - "internalType": "struct DeltaContract.SSData", - "name": "ssdata", - "type": "tuple" + "internalType": "struct HFLContract.SSData[]", + "name": "", + "type": "tuple[]" } ], "stateMutability": "view", @@ -676,14 +692,14 @@ "type": "uint64" }, { - "internalType": "address", - "name": "sharee", - "type": "address" + "internalType": "address[]", + "name": "receivers", + "type": "address[]" }, { - "internalType": "bytes", - "name": "seedCommitment", - "type": "bytes" + "internalType": "bytes[]", + "name": "seedCommitments", + "type": "bytes[]" } ], "name": "uploadSeedCommitment", @@ -704,14 +720,14 @@ "type": "uint64" }, { - "internalType": "address", - "name": "sharee", - "type": "address" + "internalType": "address[]", + "name": "senders", + "type": "address[]" }, { - "internalType": "bytes", - "name": "seed", - "type": "bytes" + "internalType": "bytes[]", + "name": "seeds", + "type": "bytes[]" } ], "name": "uploadSeed", @@ -732,14 +748,14 @@ "type": "uint64" }, { - "internalType": "address", - "name": "sharee", - "type": "address" + "internalType": "address[]", + "name": "receivers", + "type": "address[]" }, { - "internalType": "bytes", - "name": "secretKeyCommitment", - "type": "bytes" + "internalType": "bytes[]", + "name": "secretKeyCommitments", + "type": "bytes[]" } ], "name": "uploadSecretKeyCommitment", @@ -760,14 +776,14 @@ "type": "uint64" }, { - "internalType": "address", - "name": "sender", - "type": "address" + "internalType": "address[]", + "name": "senders", + "type": "address[]" }, { - "internalType": "bytes", - "name": "secretkeyMask", - "type": "bytes" + "internalType": "bytes[]", + "name": "secretkeyMasks", + "type": "bytes[]" } ], "name": "uploadSecretkeyMask", @@ -848,9 +864,9 @@ "constant": true } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IdentityContract\",\"name\":\"_addr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"AggregateStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"CalculateStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sharer\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"contentType\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"content\",\"type\":\"bytes\"}],\"name\":\"ContentUploaded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnerSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"PartnerSelected\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"RoundEnd\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"RoundStart\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"creator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"creatorUrl\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"}],\"name\":\"TaskCreated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"}],\"name\":\"createTask\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"endRound\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"candidateAddr\",\"type\":\"address\"}],\"name\":\"getClientPublickeys\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"pk1\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"pk2\",\"type\":\"bytes\"}],\"internalType\":\"struct DeltaContract.Candidate\",\"name\":\"candidate\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxCommitmentsLength\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"sslength\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"weightLength\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"clientaddress\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"getResultCommitment\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"commitment\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"getSecretSharingData\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"seedPiece\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"seedCommitment\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyPiece\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyMaskCommitment\",\"type\":\"bytes\"}],\"internalType\":\"struct DeltaContract.SSData\",\"name\":\"ssdata\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"}],\"name\":\"getTaskData\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"creator\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"creatorUrl\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"currentRound\",\"type\":\"uint64\"}],\"internalType\":\"struct DeltaContract.Task\",\"name\":\"task\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"getTaskRound\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"currentRound\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"maxSample\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minSample\",\"type\":\"uint32\"},{\"internalType\":\"uint8\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"joinedAddrs\",\"type\":\"address[]\"}],\"internalType\":\"struct DeltaContract.ExtCallTaskRoundStruct\",\"name\":\"taskround\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"idContract\",\"outputs\":[{\"internalType\":\"contract IdentityContract\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"pk1\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"pk2\",\"type\":\"bytes\"}],\"name\":\"joinRound\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"selectCandidates\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"maxLength\",\"type\":\"uint64\"}],\"name\":\"setMaxSSCommitmentLength\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"maxLength\",\"type\":\"uint64\"}],\"name\":\"setMaxWeightCommitmentLength\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"onlineClients\",\"type\":\"address[]\"}],\"name\":\"startAggregate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"onlineClients\",\"type\":\"address[]\"}],\"name\":\"startCalculate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"maxSample\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minSample\",\"type\":\"uint32\"}],\"name\":\"startRound\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"resultCommitment\",\"type\":\"bytes\"}],\"name\":\"uploadResultCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"sharee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyCommitment\",\"type\":\"bytes\"}],\"name\":\"uploadSecretKeyCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"secretkeyMask\",\"type\":\"bytes\"}],\"name\":\"uploadSecretkeyMask\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"sharee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"seed\",\"type\":\"bytes\"}],\"name\":\"uploadSeed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"sharee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"seedCommitment\",\"type\":\"bytes\"}],\"name\":\"uploadSeedCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Delta Contract For Mpc\",\"kind\":\"dev\",\"methods\":{\"changeOwner(address)\":{\"details\":\"Change owner\",\"params\":{\"newOwner\":\"address of new owner\"}},\"constructor\":{\"details\":\"Set contract deployer as owner\"},\"createTask(string,bytes32)\":{\"details\":\"called by task developer, notifying all clients that a new learning task has been published\",\"params\":{\"commitment\":\"training code hash (client validation purpose)\",\"dataSet\":\"data set name (file/folder name of training data)\"},\"returns\":{\"taskId\":\"taskId\"}},\"endRound(bytes32,uint64)\":{\"details\":\"called by task developer, close round\",\"params\":{\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"getClientPublickeys(bytes32,uint64,address)\":{\"details\":\"called by anyone, get Client Pks\",\"returns\":{\"candidate\":\" (pk1,pk2)\"}},\"getOwner()\":{\"details\":\"Return owner address\",\"returns\":{\"_0\":\"address of owner\"}},\"getResultCommitment(bytes32,address,uint64)\":{\"details\":\"called by task developer, get commitments from blockchain(Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\",\"params\":{\"clientaddress\":\"the client that publish the commitments\",\"round\":\"the round of that commitment\",\"taskId\":\"taskId\"},\"returns\":{\"commitment\":\"commitment data\"}},\"getSecretSharingData(bytes32,uint64,address,address)\":{\"details\":\"called by any participants\"},\"getTaskData(bytes32)\":{\"details\":\"get task info data\",\"params\":{\"taskId\":\"taskId\"}},\"getTaskRound(bytes32,uint64)\":{\"details\":\"getting task round infos\",\"params\":{\"round\":\"the round to fetch\",\"taskId\":\"taskId\"},\"returns\":{\"taskround\":\"the task round infos\"}},\"joinRound(bytes32,uint64,bytes,bytes)\":{\"details\":\"called by client, join for that round of computation\",\"params\":{\"pk1\":\"used for secure communication channel establishment\",\"pk2\":\"used for mask generation\",\"round\":\"the round to join\",\"taskId\":\"taskId\"}},\"selectCandidates(bytes32,uint64,address[])\":{\"details\":\"called by task developer, randomly choose candidates to be computation nodesclients now should start secret sharing phase\",\"params\":{\"addrs\":\"selected client addresses\"}},\"startAggregate(bytes32,uint64,address[])\":{\"details\":\"called by task developer, notifying all participants that the ss and gradient transfer phase has finishedclient now should send corresponded ss share pieces to task developer according to the online status given by the task developer\",\"params\":{\"onlineClients\":\"clients that has transfered gradient to task developer\",\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"startCalculate(bytes32,uint64,address[])\":{\"details\":\"called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\",\"params\":{\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"startRound(bytes32,uint64,uint32,uint32)\":{\"details\":\"called by task developer, notifying all clients that a new computing round is started and open for joining\",\"params\":{\"round\":\"the round to start\",\"taskId\":\"taskId\"}},\"uploadResultCommitment(bytes32,uint64,bytes)\":{\"details\":\"called by client, upload weight commitment\",\"params\":{\"resultCommitment\":\"masked model incremental commitment\",\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"uploadSecretKeyCommitment(bytes32,uint64,address,bytes)\":{\"details\":\"called by client, upload secret sharing sk commitment\",\"params\":{\"round\":\"the task round\",\"secretKeyCommitment\":\"secret sharing piece of seed mask\",\"sharee\":\"the sharee address\",\"taskId\":\"taskId\"}},\"uploadSecretkeyMask(bytes32,uint64,address,bytes)\":{\"details\":\"called by client, upload secret sharing sk commitment\",\"params\":{\"round\":\"the task round\",\"secretkeyMask\":\"the crypted skmask\",\"sender\":\"the sender address\",\"taskId\":\"taskId\"}},\"uploadSeed(bytes32,uint64,address,bytes)\":{\"details\":\"called by client, upload secret sharing seed commitment\",\"params\":{\"round\":\"the task round\",\"seed\":\"the seed piece\",\"sharee\":\"the sharee address\",\"taskId\":\"taskId\"}},\"uploadSeedCommitment(bytes32,uint64,address,bytes)\":{\"details\":\"called by client, upload secret sharing seed commitment\",\"params\":{\"round\":\"the task round\",\"seedCommitment\":\"secret sharing piece of seed mask\",\"sharee\":\"the sharee address\",\"taskId\":\"taskId\"}}},\"title\":\"Delta Contract\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/DeltaContract.sol\":\"DeltaContract\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/DeltaContract.sol\":{\"keccak256\":\"0x9f62efa63e367406035d17ece65b8c08014a267d67bb13d46a100dbcbe0c7081\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://b978495608b41d00ac2df050b26475717422e5cf4945609ae0b8605038cc47a1\",\"dweb:/ipfs/QmYqNMSVmTFxgWstxKAfstzHmeZYvLrhuqRMxawHcZegdm\"]},\"project:/contracts/Identity.sol\":{\"keccak256\":\"0x9a1b17d491a0f8194413917595bd70eb795307779a2c5ab2b7ce057ac4974bcf\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://5cbf30353d05ba5f01a507daf760a8fdffeae118e607aa4221d552bd634fd807\",\"dweb:/ipfs/Qmat9bD6Ym9mLj2qfw6R3nk5XkBsMJASLUVgDauXDTkup5\"]}},\"version\":1}", - "bytecode": "0x6080604052600580546001608060020a0319166901000000000000a000001790553480156200002d57600080fd5b5060405162003df638038062003df68339810160408190526200005091620000aa565b60008054600160a060020a0319908116600160a060020a03841617825560018054339216821790556040519091907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735908290a350620000dc565b600060208284031215620000bd57600080fd5b8151600160a060020a0381168114620000d557600080fd5b9392505050565b613d0a80620000ec6000396000f3fe60806040526004361061015d576000357c01000000000000000000000000000000000000000000000000000000009004806390ec5deb116100d3578063d6f021421161008c578063d6f02142146103f2578063da0fe89814610412578063e36bb28c1461043f578063ebd3e8361461046c578063ee9dc1bd1461048c578063f9dd18a7146104ac57600080fd5b806390ec5deb1461032257806391d48f5214610342578063a6f9dae114610372578063abf2013a14610392578063b71b768d146103b2578063c99f61d4146103d257600080fd5b80634956219b116101255780634956219b1461022e578063589e23381461024e57806358af9f731461027b5780635d3d7e63146102a857806375cb2a0e146102e3578063893d20e81461030457600080fd5b806301bd72691461016257806307dcfa8e146101845780633045a939146101a457806341e865cb146101e15780634893b36214610201575b600080fd5b34801561016e57600080fd5b5061018261017d366004612f1d565b6104cc565b005b34801561019057600080fd5b5061018261019f366004612f5d565b610612565b3480156101b057600080fd5b506000546101c490600160a060020a031681565b604051600160a060020a0390911681526020015b60405180910390f35b3480156101ed57600080fd5b506101826101fc366004612faa565b61097a565b34801561020d57600080fd5b5061022161021c366004612f1d565b610ba2565b6040516101d89190613033565b34801561023a57600080fd5b50610182610249366004612faa565b610d37565b34801561025a57600080fd5b5061026e6102693660046130e6565b610f8c565b6040516101d89190613184565b34801561028757600080fd5b5061029b610296366004613202565b61135b565b6040516101d8919061321b565b3480156102b457600080fd5b506005546040805167ffffffffffffffff680100000000000000008404811682529092166020830152016101d8565b6102f66102f13660046132db565b611536565b6040519081526020016101d8565b34801561031057600080fd5b50600154600160a060020a03166101c4565b34801561032e57600080fd5b5061018261033d366004613327565b611771565b34801561034e57600080fd5b5061036261035d366004613396565b611a2f565b60405190151581526020016101d8565b34801561037e57600080fd5b5061018261038d366004613420565b611d1c565b34801561039e57600080fd5b506101826103ad366004612faa565b611db2565b3480156103be57600080fd5b506101826103cd366004613442565b611f45565b3480156103de57600080fd5b506101826103ed366004613327565b611f96565b3480156103fe57600080fd5b5061018261040d366004613442565b612215565b34801561041e57600080fd5b5061043261042d36600461345d565b61227a565b6040516101d89190613499565b34801561044b57600080fd5b5061045f61045a3660046134d2565b612473565b6040516101d89190613505565b34801561047857600080fd5b50610182610487366004613518565b61262d565b34801561049857600080fd5b506101826104a7366004613327565b612889565b3480156104b857600080fd5b506101826104c7366004613327565b612ad2565b6000828152600260205260409020548290600160a060020a031633146105105760405160e560020a62461bcd02815260040161050790613572565b60405180910390fd5b6000838152600360205260409020805484918491600110801561053d5750805467ffffffffffffffff8316105b61055c5760405160e560020a62461bcd028152600401610507906135a9565b6000868152600360205260408120805467ffffffffffffffff8816908110610586576105866135e0565b600091825260209182902060039190910201805470ff000000000000000000000000000000001916700400000000000000000000000000000000178155604080518a815267ffffffffffffffff8a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b6000848152600260205260409020548490600160a060020a031661064b5760405160e560020a62461bcd02815260040161050790613612565b6000858152600260205260409020548590600160a060020a031633146106865760405160e560020a62461bcd02815260040161050790613572565b6000868152600360205260409020805467ffffffffffffffff87161461073d5760405160e560020a62461bcd02815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f742065786960648201527f7374000000000000000000000000000000000000000000000000000000000000608482015260a401610507565b600087815260026020526040902060048101805467ffffffffffffffff191667ffffffffffffffff89161790555b815415806107905750815467ffffffffffffffff88169061078e90600190613662565b105b156107a65781546001018255600082905261076b565b86828867ffffffffffffffff16815481106107c3576107c36135e0565b60009182526020909120600390910201805467ffffffffffffffff191667ffffffffffffffff928316179055825487918491908a16908110610807576108076135e0565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff16021790555084828867ffffffffffffffff1681548110610853576108536135e0565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff1602179055506000828867ffffffffffffffff16815481106108a0576108a06135e0565b60009182526020909120600390910201805470ff000000000000000000000000000000001916608060020a8360048111156108dd576108dd6135f9565b021790555060008881526004602052604090205b805415806109165750805467ffffffffffffffff89169061091490600190613662565b105b1561092c578054600101815560008190526108f1565b604080518a815267ffffffffffffffff8a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b6000848152600260205260409020548490600160a060020a031633146109b55760405160e560020a62461bcd02815260040161050790613572565b600085815260036020526040902080548691869160011080156109e25750805467ffffffffffffffff8316105b610a015760405160e560020a62461bcd028152600401610507906135a9565b84610a515760405160e560020a62461bcd02815260206004820152601660248201527f4d7573742070726f7669646520616464726573736573000000000000000000006044820152606401610507565b6000888152600360205260408120805467ffffffffffffffff8a16908110610a7b57610a7b6135e0565b9060005260206000209060030201905060005b86811015610b4d5760008260010160008a8a85818110610ab057610ab06135e0565b9050602002016020810190610ac59190613420565b600160a060020a0316815260208101919091526040016000208054610ae990613679565b905011610b3b5760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610507565b80610b45816136b7565b915050610a8e565b50805470ff000000000000000000000000000000001916608060020a1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f90610967908b908b908b908b906136d2565b6040805160a081018252600080825260208083018290528284018290526060808401839052608084015285825260039052919091208054849184916001108015610bf65750805467ffffffffffffffff8316105b610c155760405160e560020a62461bcd028152600401610507906135a9565b6000868152600360205260408120805467ffffffffffffffff8816908110610c3f57610c3f6135e0565b60009182526020918290206040805160a0810182526003909302909101805467ffffffffffffffff8116845263ffffffff6801000000000000000082048116958501959095526c01000000000000000000000000810490941691830191909152925090606082019060ff608060020a909104166004811115610cc357610cc36135f9565b60ff16815260200182600201805480602002602001604051908101604052809291908181526020018280548015610d2357602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610d05575b505050505081525094505050505092915050565b6000848152600260205260409020548490600160a060020a03163314610d725760405160e560020a62461bcd02815260040161050790613572565b60008581526003602052604090208054869186916001108015610d9f5750805467ffffffffffffffff8316105b610dbe5760405160e560020a62461bcd028152600401610507906135a9565b6000888152600360205260408120805467ffffffffffffffff8a16908110610de857610de86135e0565b60009182526020909120600390910201905060028154608060020a900460ff166004811115610e1957610e196135f9565b14610e695760405160e560020a62461bcd02815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f74207374617274656400000000006044820152606401610507565b805470ff00000000000000000000000000000000191670030000000000000000000000000000000017815560005b86811015610f565760008260010160008a8a85818110610eb957610eb96135e0565b9050602002016020810190610ece9190613420565b600160a060020a0316815260208101919091526040016000208054610ef290613679565b905011610f445760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610507565b80610f4e816136b7565b915050610e97565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f8989898960405161096794939291906136d2565b610fb76040518060800160405280606081526020016060815260200160608152602001606081525090565b60008581526003602052604090208054869186916001108015610fe45750805467ffffffffffffffff8316105b6110035760405160e560020a62461bcd028152600401610507906135a9565b600088815260046020526040902080548991899167ffffffffffffffff8316106110425760405160e560020a62461bcd0281526004016105079061373c565b60008b8152600460205260409020805467ffffffffffffffff8c16111561107e5760405160e560020a62461bcd0281526004016105079061373c565b6000818c67ffffffffffffffff168154811061109c5761109c6135e0565b906000526020600020906002020190508060010160008c600160a060020a0316600160a060020a0316815260200190815260200160002060008b600160a060020a0316600160a060020a0316815260200190815260200160002060405180608001604052908160008201805461111190613679565b80601f016020809104026020016040519081016040528092919081815260200182805461113d90613679565b801561118a5780601f1061115f5761010080835404028352916020019161118a565b820191906000526020600020905b81548152906001019060200180831161116d57829003601f168201915b505050505081526020016001820180546111a390613679565b80601f01602080910402602001604051908101604052809291908181526020018280546111cf90613679565b801561121c5780601f106111f15761010080835404028352916020019161121c565b820191906000526020600020905b8154815290600101906020018083116111ff57829003601f168201915b5050505050815260200160028201805461123590613679565b80601f016020809104026020016040519081016040528092919081815260200182805461126190613679565b80156112ae5780601f10611283576101008083540402835291602001916112ae565b820191906000526020600020905b81548152906001019060200180831161129157829003601f168201915b505050505081526020016003820180546112c790613679565b80601f01602080910402602001604051908101604052809291908181526020018280546112f390613679565b80156113405780601f1061131557610100808354040283529160200191611340565b820191906000526020600020905b81548152906001019060200180831161132357829003601f168201915b50505050508152505098505050505050505050949350505050565b6040805160a081018252600080825260606020830181905292820183905291810182905260808101919091526000828152600260205260409020548290600160a060020a03166113c05760405160e560020a62461bcd02815260040161050790613612565b600083815260026020908152604091829020825160a081019093528054600160a060020a0316835260018101805491928401916113fc90613679565b80601f016020809104026020016040519081016040528092919081815260200182805461142890613679565b80156114755780601f1061144a57610100808354040283529160200191611475565b820191906000526020600020905b81548152906001019060200180831161145857829003601f168201915b5050505050815260200160028201805461148e90613679565b80601f01602080910402602001604051908101604052809291908181526020018280546114ba90613679565b80156115075780601f106114dc57610100808354040283529160200191611507565b820191906000526020600020905b8154815290600101906020018083116114ea57829003601f168201915b50505091835250506003820154602082015260049091015467ffffffffffffffff166040909101529392505050565b600080423386868660405160200161155295949392919061379c565b60408051808303601f19018152908290528051602090910120600080547f582115fb00000000000000000000000000000000000000000000000000000000845233600485015291935091600160a060020a039091169063582115fb90602401600060405180830381865afa1580156115ce573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115f69190810190613878565b90506040518060a0016040528033600160a060020a031681526020018260000151815260200187878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093855250505060208083018890526040928301829052858252600281529190208251815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390911617815582820151805191926116b192600185019290910190612df3565b50604082015180516116cd916002840191602090910190612df3565b5060608201516003828101919091556080909201516004909101805467ffffffffffffffff191667ffffffffffffffff90921691909117905560008381526020919091526040808220805460010181559182905282519051939450849333917fa18549eb85158cc952d808a07e5f220d767881f3f687aff0f32466231ee0a8be9161175f9187918c918c918c9061391f565b60405180910390a25050509392505050565b6000858152600360205260409020805486918691600110801561179e5750805467ffffffffffffffff8316105b6117bd5760405160e560020a62461bcd028152600401610507906135a9565b83158015906117e4575060055468010000000000000000900467ffffffffffffffff168411155b6118035760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a1690811061182d5761182d6135e0565b6000918252602090912060039182020191508154608060020a900460ff16600481111561185c5761185c6135f9565b146118ac5760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610507565b60008981526004602052604081208054909190829067ffffffffffffffff8c169081106118db576118db6135e0565b60009182526020808320338452600160029093020182810182526040808520600160a060020a038f16865290925290832090910180549193509061191e90613679565b9050116119705760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610507565b3360009081526001820160209081526040808320600160a060020a038d168452909152902080546119a090613679565b1590506119c25760405160e560020a62461bcd028152600401610507906139bb565b3360009081526001820160209081526040808320600160a060020a038d16845290915290206119f2908989612e77565b50600080516020613cb58339815191528b8b338c8c8c604051611a1a96959493929190613a18565b60405180910390a15050505050505050505050565b6000868152600260205260408120548790600160a060020a0316611a685760405160e560020a62461bcd02815260040161050790613612565b60008881526003602052604090208054899189916001108015611a955750805467ffffffffffffffff8316105b611ab45760405160e560020a62461bcd028152600401610507906135a9565b60008b815260036020526040812080549091908290611ad590600190613662565b81548110611ae557611ae56135e0565b906000526020600020906003020190508b67ffffffffffffffff1660018380549050611b119190613662565b148015611b3a575060008154608060020a900460ff166004811115611b3857611b386135f9565b145b611b895760405160e560020a62461bcd02815260206004820152601560248201527f6a6f696e207068617365206861732070617373656400000000000000000000006044820152606401610507565b33600090815260018201602052604090208054611ba590613679565b159050611c1d5760405160e560020a62461bcd02815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c746960448201527f706c652074696d657300000000000000000000000000000000000000000000006064820152608401610507565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611cbb928492910190612df3565b506020828101518051611cd49260018501920190612df3565b5050506002018054600181810183556000928352602090922001805473ffffffffffffffffffffffffffffffffffffffff191633179055955050505050509695505050505050565b600154600160a060020a03163314611d495760405160e560020a62461bcd02815260040161050790613a9d565b600154604051600160a060020a038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000848152600260205260409020548490600160a060020a03163314611ded5760405160e560020a62461bcd02815260040161050790613572565b60008581526003602052604090208054869186916001108015611e1a5750805467ffffffffffffffff8316105b611e395760405160e560020a62461bcd028152600401610507906135a9565b6000888152600360205260408120805467ffffffffffffffff8a16908110611e6357611e636135e0565b60009182526020909120600390910201905060018154608060020a900460ff166004811115611e9457611e946135f9565b14611ee45760405160e560020a62461bcd02815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f770000006044820152606401610507565b805470ff0000000000000000000000000000000019167002000000000000000000000000000000001781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d90610967908b908b908b908b906136d2565b600154600160a060020a03163314611f725760405160e560020a62461bcd02815260040161050790613a9d565b6005805467ffffffffffffffff191667ffffffffffffffff92909216919091179055565b60008581526003602052604090208054869186916001108015611fc35750805467ffffffffffffffff8316105b611fe25760405160e560020a62461bcd028152600401610507906135a9565b8315801590612009575060055468010000000000000000900467ffffffffffffffff168411155b6120285760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a16908110612052576120526135e0565b60009182526020909120600390910201905060018154608060020a900460ff166004811115612083576120836135f9565b146120d35760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610507565b60008981526004602052604081208054909190829067ffffffffffffffff8c16908110612102576121026135e0565b60009182526020808320338452600160029093020182810182526040808520600160a060020a038f16865290925292200180549192509061214290613679565b1590506121ba5760405160e560020a62461bcd02815260206004820152602660248201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c6560448201527f2074696d657300000000000000000000000000000000000000000000000000006064820152608401610507565b336000908152600180830160209081526040808420600160a060020a038e1685529091529091206121ed91018989612e77565b50600080516020613cb58339815191528b8b338c8c8c604051611a1a96959493929190613ad4565b600154600160a060020a031633146122425760405160e560020a62461bcd02815260040161050790613a9d565b6005805467ffffffffffffffff90921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055565b6040805180820190915260608082526020820152600084815260036020526040902080548591859160011080156122bb5750805467ffffffffffffffff8316105b6122da5760405160e560020a62461bcd028152600401610507906135a9565b6000878152600360205260409020805467ffffffffffffffff8816908110612304576123046135e0565b9060005260206000209060030201600101600086600160a060020a0316600160a060020a0316815260200190815260200160002060405180604001604052908160008201805461235390613679565b80601f016020809104026020016040519081016040528092919081815260200182805461237f90613679565b80156123cc5780601f106123a1576101008083540402835291602001916123cc565b820191906000526020600020905b8154815290600101906020018083116123af57829003601f168201915b505050505081526020016001820180546123e590613679565b80601f016020809104026020016040519081016040528092919081815260200182805461241190613679565b801561245e5780601f106124335761010080835404028352916020019161245e565b820191906000526020600020905b81548152906001019060200180831161244157829003601f168201915b50505050508152505093505050509392505050565b60008381526003602052604090208054606091859184919060011080156124a45750805467ffffffffffffffff8316105b6124c35760405160e560020a62461bcd028152600401610507906135a9565b600087815260046020526040902080548891879167ffffffffffffffff8316106125025760405160e560020a62461bcd0281526004016105079061373c565b60008a8152600460205260409020805467ffffffffffffffff8a16111561253e5760405160e560020a62461bcd0281526004016105079061373c565b6000818a67ffffffffffffffff168154811061255c5761255c6135e0565b906000526020600020906002020190508060000160008c600160a060020a0316600160a060020a03168152602001908152602001600020805461259e90613679565b80601f01602080910402602001604051908101604052809291908181526020018280546125ca90613679565b80156126175780601f106125ec57610100808354040283529160200191612617565b820191906000526020600020905b8154815290600101906020018083116125fa57829003601f168201915b5050505050985050505050505050509392505050565b6000848152600360205260409020805485918591600110801561265a5750805467ffffffffffffffff8316105b6126795760405160e560020a62461bcd028152600401610507906135a9565b8315801590612694575060055467ffffffffffffffff168411155b6126b35760405160e560020a62461bcd0281526004016105079061395e565b6000878152600360205260408120805467ffffffffffffffff89169081106126dd576126dd6135e0565b60009182526020909120600390910201905060028154608060020a900460ff16600481111561270e5761270e6135f9565b1461275e5760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164696e67207068617365000000000000000000006044820152606401610507565b60008881526004602052604081208054909190829067ffffffffffffffff8b1690811061278d5761278d6135e0565b6000918252602080832033845260029092029091019081905260409091208054919250906127ba90613679565b1590506128325760405160e560020a62461bcd02815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201527f756c7469706c652074696d6573000000000000000000000000000000000000006064820152608401610507565b33600090815260208290526040902061284c908989612e77565b50600080516020613cb58339815191528a8a3360008c8c60405161287596959493929190613b4c565b60405180910390a150505050505050505050565b600085815260036020526040902080548691869160011080156128b65750805467ffffffffffffffff8316105b6128d55760405160e560020a62461bcd028152600401610507906135a9565b83158015906128fc575060055468010000000000000000900467ffffffffffffffff168411155b61291b5760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a16908110612945576129456135e0565b60009182526020909120600390910201905060018154608060020a900460ff166004811115612976576129766135f9565b146129c65760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610507565b6000898152600460205260409020805467ffffffffffffffff8a1614156129f4578054600101815560008190525b6000818a67ffffffffffffffff1681548110612a1257612a126135e0565b60009182526020808320338452600160029093020191820181526040808420600160a060020a038e168552909152909120600301805491925090612a5590613679565b159050612a775760405160e560020a62461bcd028152600401610507906139bb565b3360009081526001820160209081526040808320600160a060020a038d1684529091529020612aaa906003018989612e77565b50600080516020613cb58339815191528b8b338c8c8c604051611a1a96959493929190613bc4565b60008581526003602052604090208054869186916001108015612aff5750805467ffffffffffffffff8316105b612b1e5760405160e560020a62461bcd028152600401610507906135a9565b8315801590612b45575060055468010000000000000000900467ffffffffffffffff168411155b612b645760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a16908110612b8e57612b8e6135e0565b6000918252602090912060039182020191508154608060020a900460ff166004811115612bbd57612bbd6135f9565b14612c0d5760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610507565b6000898152600460205260409020805467ffffffffffffffff8a161415612c3b578054600101815560008190525b6000818a67ffffffffffffffff1681548110612c5957612c596135e0565b60009182526020808320600160a060020a038d1684526001600290930201918201815260408084203385529091528220600301805491935090612c9b90613679565b905011612ced5760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610507565b600160a060020a0389166000908152600182016020908152604080832033845290915290206002018054612d2090613679565b159050612d985760405160e560020a62461bcd02815260206004820152602360248201527f63616e6e6f742075706c6f616420736b6d61736b206d756c7469706c6520746960448201527f6d657300000000000000000000000000000000000000000000000000000000006064820152608401610507565b600160a060020a038916600090815260018201602090815260408083203384529091529020612dcb906002018989612e77565b50600080516020613cb58339815191528b8b8b338c8c604051611a1a96959493929190613c3c565b828054612dff90613679565b90600052602060002090601f016020900481019282612e215760008555612e67565b82601f10612e3a57805160ff1916838001178555612e67565b82800160010185558215612e67579182015b82811115612e67578251825591602001919060010190612e4c565b50612e73929150612eeb565b5090565b828054612e8390613679565b90600052602060002090601f016020900481019282612ea55760008555612e67565b82601f10612ebe5782800160ff19823516178555612e67565b82800160010185558215612e67579182015b82811115612e67578235825591602001919060010190612ed0565b5b80821115612e735760008155600101612eec565b803567ffffffffffffffff81168114612f1857600080fd5b919050565b60008060408385031215612f3057600080fd5b82359150612f4060208401612f00565b90509250929050565b803563ffffffff81168114612f1857600080fd5b60008060008060808587031215612f7357600080fd5b84359350612f8360208601612f00565b9250612f9160408601612f49565b9150612f9f60608601612f49565b905092959194509250565b60008060008060608587031215612fc057600080fd5b84359350612fd060208601612f00565b9250604085013567ffffffffffffffff80821115612fed57600080fd5b818701915087601f83011261300157600080fd5b81358181111561301057600080fd5b886020808302850101111561302457600080fd5b95989497505060200194505050565b6000602080835260c0830167ffffffffffffffff855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b808310156130c4578351600160a060020a0316825292840192600192909201919084019061309b565b509695505050505050565b8035600160a060020a0381168114612f1857600080fd5b600080600080608085870312156130fc57600080fd5b8435935061310c60208601612f00565b925061311a604086016130cf565b9150612f9f606086016130cf565b60005b8381101561314357818101518382015260200161312b565b83811115613152576000848401525b50505050565b60008151808452613170816020860160208601613128565b601f01601f19169290920160200192915050565b6020815260008251608060208401526131a060a0840182613158565b90506020840151601f19808584030160408601526131be8383613158565b925060408601519150808584030160608601526131db8383613158565b92506060860151915080858403016080860152506131f98282613158565b95945050505050565b60006020828403121561321457600080fd5b5035919050565b60208152600160a060020a0382511660208201526000602083015160a0604084015261324a60c0840182613158565b90506040840151601f198483030160608501526132678282613158565b9150506060840151608084015267ffffffffffffffff60808501511660a08401528091505092915050565b60008083601f8401126132a457600080fd5b50813567ffffffffffffffff8111156132bc57600080fd5b6020830191508360208285010111156132d457600080fd5b9250929050565b6000806000604084860312156132f057600080fd5b833567ffffffffffffffff81111561330757600080fd5b61331386828701613292565b909790965060209590950135949350505050565b60008060008060006080868803121561333f57600080fd5b8535945061334f60208701612f00565b935061335d604087016130cf565b9250606086013567ffffffffffffffff81111561337957600080fd5b61338588828901613292565b969995985093965092949392505050565b600080600080600080608087890312156133af57600080fd5b863595506133bf60208801612f00565b9450604087013567ffffffffffffffff808211156133dc57600080fd5b6133e88a838b01613292565b9096509450606089013591508082111561340157600080fd5b5061340e89828a01613292565b979a9699509497509295939492505050565b60006020828403121561343257600080fd5b61343b826130cf565b9392505050565b60006020828403121561345457600080fd5b61343b82612f00565b60008060006060848603121561347257600080fd5b8335925061348260208501612f00565b9150613490604085016130cf565b90509250925092565b6020815260008251604060208401526134b56060840182613158565b90506020840151601f198483030160408501526131f98282613158565b6000806000606084860312156134e757600080fd5b833592506134f7602085016130cf565b915061349060408501612f00565b60208152600061343b6020830184613158565b6000806000806060858703121561352e57600080fd5b8435935061353e60208601612f00565b9250604085013567ffffffffffffffff81111561355a57600080fd5b61356687828801613292565b95989497509550505050565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b60e060020a634e487b7102600052603260045260246000fd5b60e060020a634e487b7102600052602160045260246000fd5b6020808252600f908201527f5461736b206e6f74206578697374730000000000000000000000000000000000604082015260600190565b60e060020a634e487b7102600052601160045260246000fd5b60008282101561367457613674613649565b500390565b60028104600182168061368d57607f821691505b602082108114156136b15760e060020a634e487b7102600052602260045260246000fd5b50919050565b60006000198214156136cb576136cb613649565b5060010190565b600060608201868352602067ffffffffffffffff871681850152606060408501528185835260808501905086925060005b8681101561372f57600160a060020a0361371c856130cf565b1682529282019290820190600101613703565b5098975050505050505050565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b858152600160a060020a03851660208201526080604082015260006137c5608083018587613773565b90508260608301529695505050505050565b60e060020a634e487b7102600052604160045260246000fd5b600082601f83011261380157600080fd5b815167ffffffffffffffff8082111561381c5761381c6137d7565b604051601f8301601f19908116603f01168101908282118183101715613844576138446137d7565b8160405283815286602085880101111561385d57600080fd5b61386e846020830160208901613128565b9695505050505050565b60006020828403121561388a57600080fd5b815167ffffffffffffffff808211156138a257600080fd5b90830190604082860312156138b657600080fd5b6040516040810181811083821117156138d1576138d16137d7565b6040528251828111156138e357600080fd5b6138ef878286016137f0565b82525060208301518281111561390457600080fd5b613910878286016137f0565b60208301525095945050505050565b858152608060208201526000613939608083018688613773565b828103604084015261394b8186613158565b9150508260608301529695505050505050565b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201527f6f7220697420697320656d707479000000000000000000000000000000000000606082015260800190565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6560408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600460c08301527f534545440000000000000000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b9998505050505050505050565b60208082526013908201527f43616c6c6572206973206e6f74206f776e657200000000000000000000000000604082015260600190565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600860c08301527f53454544434d4d5400000000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f574549474854000000000000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600a60c08301527f534b4d41534b434d4d540000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f534b4d41534b000000000000000000000000000000000000000000000000000060e08301526101008060a0840152613a90818401858761377356feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa264697066735822122091803c41a977ed95a673d1a7eb35cbfb903e13e63fa7968d2fd0a90b374bf70164736f6c634300080a0033", - "deployedBytecode": "0x60806040526004361061015d576000357c01000000000000000000000000000000000000000000000000000000009004806390ec5deb116100d3578063d6f021421161008c578063d6f02142146103f2578063da0fe89814610412578063e36bb28c1461043f578063ebd3e8361461046c578063ee9dc1bd1461048c578063f9dd18a7146104ac57600080fd5b806390ec5deb1461032257806391d48f5214610342578063a6f9dae114610372578063abf2013a14610392578063b71b768d146103b2578063c99f61d4146103d257600080fd5b80634956219b116101255780634956219b1461022e578063589e23381461024e57806358af9f731461027b5780635d3d7e63146102a857806375cb2a0e146102e3578063893d20e81461030457600080fd5b806301bd72691461016257806307dcfa8e146101845780633045a939146101a457806341e865cb146101e15780634893b36214610201575b600080fd5b34801561016e57600080fd5b5061018261017d366004612f1d565b6104cc565b005b34801561019057600080fd5b5061018261019f366004612f5d565b610612565b3480156101b057600080fd5b506000546101c490600160a060020a031681565b604051600160a060020a0390911681526020015b60405180910390f35b3480156101ed57600080fd5b506101826101fc366004612faa565b61097a565b34801561020d57600080fd5b5061022161021c366004612f1d565b610ba2565b6040516101d89190613033565b34801561023a57600080fd5b50610182610249366004612faa565b610d37565b34801561025a57600080fd5b5061026e6102693660046130e6565b610f8c565b6040516101d89190613184565b34801561028757600080fd5b5061029b610296366004613202565b61135b565b6040516101d8919061321b565b3480156102b457600080fd5b506005546040805167ffffffffffffffff680100000000000000008404811682529092166020830152016101d8565b6102f66102f13660046132db565b611536565b6040519081526020016101d8565b34801561031057600080fd5b50600154600160a060020a03166101c4565b34801561032e57600080fd5b5061018261033d366004613327565b611771565b34801561034e57600080fd5b5061036261035d366004613396565b611a2f565b60405190151581526020016101d8565b34801561037e57600080fd5b5061018261038d366004613420565b611d1c565b34801561039e57600080fd5b506101826103ad366004612faa565b611db2565b3480156103be57600080fd5b506101826103cd366004613442565b611f45565b3480156103de57600080fd5b506101826103ed366004613327565b611f96565b3480156103fe57600080fd5b5061018261040d366004613442565b612215565b34801561041e57600080fd5b5061043261042d36600461345d565b61227a565b6040516101d89190613499565b34801561044b57600080fd5b5061045f61045a3660046134d2565b612473565b6040516101d89190613505565b34801561047857600080fd5b50610182610487366004613518565b61262d565b34801561049857600080fd5b506101826104a7366004613327565b612889565b3480156104b857600080fd5b506101826104c7366004613327565b612ad2565b6000828152600260205260409020548290600160a060020a031633146105105760405160e560020a62461bcd02815260040161050790613572565b60405180910390fd5b6000838152600360205260409020805484918491600110801561053d5750805467ffffffffffffffff8316105b61055c5760405160e560020a62461bcd028152600401610507906135a9565b6000868152600360205260408120805467ffffffffffffffff8816908110610586576105866135e0565b600091825260209182902060039190910201805470ff000000000000000000000000000000001916700400000000000000000000000000000000178155604080518a815267ffffffffffffffff8a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b6000848152600260205260409020548490600160a060020a031661064b5760405160e560020a62461bcd02815260040161050790613612565b6000858152600260205260409020548590600160a060020a031633146106865760405160e560020a62461bcd02815260040161050790613572565b6000868152600360205260409020805467ffffffffffffffff87161461073d5760405160e560020a62461bcd02815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f742065786960648201527f7374000000000000000000000000000000000000000000000000000000000000608482015260a401610507565b600087815260026020526040902060048101805467ffffffffffffffff191667ffffffffffffffff89161790555b815415806107905750815467ffffffffffffffff88169061078e90600190613662565b105b156107a65781546001018255600082905261076b565b86828867ffffffffffffffff16815481106107c3576107c36135e0565b60009182526020909120600390910201805467ffffffffffffffff191667ffffffffffffffff928316179055825487918491908a16908110610807576108076135e0565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff16021790555084828867ffffffffffffffff1681548110610853576108536135e0565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff1602179055506000828867ffffffffffffffff16815481106108a0576108a06135e0565b60009182526020909120600390910201805470ff000000000000000000000000000000001916608060020a8360048111156108dd576108dd6135f9565b021790555060008881526004602052604090205b805415806109165750805467ffffffffffffffff89169061091490600190613662565b105b1561092c578054600101815560008190526108f1565b604080518a815267ffffffffffffffff8a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b6000848152600260205260409020548490600160a060020a031633146109b55760405160e560020a62461bcd02815260040161050790613572565b600085815260036020526040902080548691869160011080156109e25750805467ffffffffffffffff8316105b610a015760405160e560020a62461bcd028152600401610507906135a9565b84610a515760405160e560020a62461bcd02815260206004820152601660248201527f4d7573742070726f7669646520616464726573736573000000000000000000006044820152606401610507565b6000888152600360205260408120805467ffffffffffffffff8a16908110610a7b57610a7b6135e0565b9060005260206000209060030201905060005b86811015610b4d5760008260010160008a8a85818110610ab057610ab06135e0565b9050602002016020810190610ac59190613420565b600160a060020a0316815260208101919091526040016000208054610ae990613679565b905011610b3b5760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610507565b80610b45816136b7565b915050610a8e565b50805470ff000000000000000000000000000000001916608060020a1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f90610967908b908b908b908b906136d2565b6040805160a081018252600080825260208083018290528284018290526060808401839052608084015285825260039052919091208054849184916001108015610bf65750805467ffffffffffffffff8316105b610c155760405160e560020a62461bcd028152600401610507906135a9565b6000868152600360205260408120805467ffffffffffffffff8816908110610c3f57610c3f6135e0565b60009182526020918290206040805160a0810182526003909302909101805467ffffffffffffffff8116845263ffffffff6801000000000000000082048116958501959095526c01000000000000000000000000810490941691830191909152925090606082019060ff608060020a909104166004811115610cc357610cc36135f9565b60ff16815260200182600201805480602002602001604051908101604052809291908181526020018280548015610d2357602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610d05575b505050505081525094505050505092915050565b6000848152600260205260409020548490600160a060020a03163314610d725760405160e560020a62461bcd02815260040161050790613572565b60008581526003602052604090208054869186916001108015610d9f5750805467ffffffffffffffff8316105b610dbe5760405160e560020a62461bcd028152600401610507906135a9565b6000888152600360205260408120805467ffffffffffffffff8a16908110610de857610de86135e0565b60009182526020909120600390910201905060028154608060020a900460ff166004811115610e1957610e196135f9565b14610e695760405160e560020a62461bcd02815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f74207374617274656400000000006044820152606401610507565b805470ff00000000000000000000000000000000191670030000000000000000000000000000000017815560005b86811015610f565760008260010160008a8a85818110610eb957610eb96135e0565b9050602002016020810190610ece9190613420565b600160a060020a0316815260208101919091526040016000208054610ef290613679565b905011610f445760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610507565b80610f4e816136b7565b915050610e97565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f8989898960405161096794939291906136d2565b610fb76040518060800160405280606081526020016060815260200160608152602001606081525090565b60008581526003602052604090208054869186916001108015610fe45750805467ffffffffffffffff8316105b6110035760405160e560020a62461bcd028152600401610507906135a9565b600088815260046020526040902080548991899167ffffffffffffffff8316106110425760405160e560020a62461bcd0281526004016105079061373c565b60008b8152600460205260409020805467ffffffffffffffff8c16111561107e5760405160e560020a62461bcd0281526004016105079061373c565b6000818c67ffffffffffffffff168154811061109c5761109c6135e0565b906000526020600020906002020190508060010160008c600160a060020a0316600160a060020a0316815260200190815260200160002060008b600160a060020a0316600160a060020a0316815260200190815260200160002060405180608001604052908160008201805461111190613679565b80601f016020809104026020016040519081016040528092919081815260200182805461113d90613679565b801561118a5780601f1061115f5761010080835404028352916020019161118a565b820191906000526020600020905b81548152906001019060200180831161116d57829003601f168201915b505050505081526020016001820180546111a390613679565b80601f01602080910402602001604051908101604052809291908181526020018280546111cf90613679565b801561121c5780601f106111f15761010080835404028352916020019161121c565b820191906000526020600020905b8154815290600101906020018083116111ff57829003601f168201915b5050505050815260200160028201805461123590613679565b80601f016020809104026020016040519081016040528092919081815260200182805461126190613679565b80156112ae5780601f10611283576101008083540402835291602001916112ae565b820191906000526020600020905b81548152906001019060200180831161129157829003601f168201915b505050505081526020016003820180546112c790613679565b80601f01602080910402602001604051908101604052809291908181526020018280546112f390613679565b80156113405780601f1061131557610100808354040283529160200191611340565b820191906000526020600020905b81548152906001019060200180831161132357829003601f168201915b50505050508152505098505050505050505050949350505050565b6040805160a081018252600080825260606020830181905292820183905291810182905260808101919091526000828152600260205260409020548290600160a060020a03166113c05760405160e560020a62461bcd02815260040161050790613612565b600083815260026020908152604091829020825160a081019093528054600160a060020a0316835260018101805491928401916113fc90613679565b80601f016020809104026020016040519081016040528092919081815260200182805461142890613679565b80156114755780601f1061144a57610100808354040283529160200191611475565b820191906000526020600020905b81548152906001019060200180831161145857829003601f168201915b5050505050815260200160028201805461148e90613679565b80601f01602080910402602001604051908101604052809291908181526020018280546114ba90613679565b80156115075780601f106114dc57610100808354040283529160200191611507565b820191906000526020600020905b8154815290600101906020018083116114ea57829003601f168201915b50505091835250506003820154602082015260049091015467ffffffffffffffff166040909101529392505050565b600080423386868660405160200161155295949392919061379c565b60408051808303601f19018152908290528051602090910120600080547f582115fb00000000000000000000000000000000000000000000000000000000845233600485015291935091600160a060020a039091169063582115fb90602401600060405180830381865afa1580156115ce573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115f69190810190613878565b90506040518060a0016040528033600160a060020a031681526020018260000151815260200187878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093855250505060208083018890526040928301829052858252600281529190208251815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390911617815582820151805191926116b192600185019290910190612df3565b50604082015180516116cd916002840191602090910190612df3565b5060608201516003828101919091556080909201516004909101805467ffffffffffffffff191667ffffffffffffffff90921691909117905560008381526020919091526040808220805460010181559182905282519051939450849333917fa18549eb85158cc952d808a07e5f220d767881f3f687aff0f32466231ee0a8be9161175f9187918c918c918c9061391f565b60405180910390a25050509392505050565b6000858152600360205260409020805486918691600110801561179e5750805467ffffffffffffffff8316105b6117bd5760405160e560020a62461bcd028152600401610507906135a9565b83158015906117e4575060055468010000000000000000900467ffffffffffffffff168411155b6118035760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a1690811061182d5761182d6135e0565b6000918252602090912060039182020191508154608060020a900460ff16600481111561185c5761185c6135f9565b146118ac5760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610507565b60008981526004602052604081208054909190829067ffffffffffffffff8c169081106118db576118db6135e0565b60009182526020808320338452600160029093020182810182526040808520600160a060020a038f16865290925290832090910180549193509061191e90613679565b9050116119705760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610507565b3360009081526001820160209081526040808320600160a060020a038d168452909152902080546119a090613679565b1590506119c25760405160e560020a62461bcd028152600401610507906139bb565b3360009081526001820160209081526040808320600160a060020a038d16845290915290206119f2908989612e77565b50600080516020613cb58339815191528b8b338c8c8c604051611a1a96959493929190613a18565b60405180910390a15050505050505050505050565b6000868152600260205260408120548790600160a060020a0316611a685760405160e560020a62461bcd02815260040161050790613612565b60008881526003602052604090208054899189916001108015611a955750805467ffffffffffffffff8316105b611ab45760405160e560020a62461bcd028152600401610507906135a9565b60008b815260036020526040812080549091908290611ad590600190613662565b81548110611ae557611ae56135e0565b906000526020600020906003020190508b67ffffffffffffffff1660018380549050611b119190613662565b148015611b3a575060008154608060020a900460ff166004811115611b3857611b386135f9565b145b611b895760405160e560020a62461bcd02815260206004820152601560248201527f6a6f696e207068617365206861732070617373656400000000000000000000006044820152606401610507565b33600090815260018201602052604090208054611ba590613679565b159050611c1d5760405160e560020a62461bcd02815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c746960448201527f706c652074696d657300000000000000000000000000000000000000000000006064820152608401610507565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611cbb928492910190612df3565b506020828101518051611cd49260018501920190612df3565b5050506002018054600181810183556000928352602090922001805473ffffffffffffffffffffffffffffffffffffffff191633179055955050505050509695505050505050565b600154600160a060020a03163314611d495760405160e560020a62461bcd02815260040161050790613a9d565b600154604051600160a060020a038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000848152600260205260409020548490600160a060020a03163314611ded5760405160e560020a62461bcd02815260040161050790613572565b60008581526003602052604090208054869186916001108015611e1a5750805467ffffffffffffffff8316105b611e395760405160e560020a62461bcd028152600401610507906135a9565b6000888152600360205260408120805467ffffffffffffffff8a16908110611e6357611e636135e0565b60009182526020909120600390910201905060018154608060020a900460ff166004811115611e9457611e946135f9565b14611ee45760405160e560020a62461bcd02815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f770000006044820152606401610507565b805470ff0000000000000000000000000000000019167002000000000000000000000000000000001781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d90610967908b908b908b908b906136d2565b600154600160a060020a03163314611f725760405160e560020a62461bcd02815260040161050790613a9d565b6005805467ffffffffffffffff191667ffffffffffffffff92909216919091179055565b60008581526003602052604090208054869186916001108015611fc35750805467ffffffffffffffff8316105b611fe25760405160e560020a62461bcd028152600401610507906135a9565b8315801590612009575060055468010000000000000000900467ffffffffffffffff168411155b6120285760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a16908110612052576120526135e0565b60009182526020909120600390910201905060018154608060020a900460ff166004811115612083576120836135f9565b146120d35760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610507565b60008981526004602052604081208054909190829067ffffffffffffffff8c16908110612102576121026135e0565b60009182526020808320338452600160029093020182810182526040808520600160a060020a038f16865290925292200180549192509061214290613679565b1590506121ba5760405160e560020a62461bcd02815260206004820152602660248201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c6560448201527f2074696d657300000000000000000000000000000000000000000000000000006064820152608401610507565b336000908152600180830160209081526040808420600160a060020a038e1685529091529091206121ed91018989612e77565b50600080516020613cb58339815191528b8b338c8c8c604051611a1a96959493929190613ad4565b600154600160a060020a031633146122425760405160e560020a62461bcd02815260040161050790613a9d565b6005805467ffffffffffffffff90921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055565b6040805180820190915260608082526020820152600084815260036020526040902080548591859160011080156122bb5750805467ffffffffffffffff8316105b6122da5760405160e560020a62461bcd028152600401610507906135a9565b6000878152600360205260409020805467ffffffffffffffff8816908110612304576123046135e0565b9060005260206000209060030201600101600086600160a060020a0316600160a060020a0316815260200190815260200160002060405180604001604052908160008201805461235390613679565b80601f016020809104026020016040519081016040528092919081815260200182805461237f90613679565b80156123cc5780601f106123a1576101008083540402835291602001916123cc565b820191906000526020600020905b8154815290600101906020018083116123af57829003601f168201915b505050505081526020016001820180546123e590613679565b80601f016020809104026020016040519081016040528092919081815260200182805461241190613679565b801561245e5780601f106124335761010080835404028352916020019161245e565b820191906000526020600020905b81548152906001019060200180831161244157829003601f168201915b50505050508152505093505050509392505050565b60008381526003602052604090208054606091859184919060011080156124a45750805467ffffffffffffffff8316105b6124c35760405160e560020a62461bcd028152600401610507906135a9565b600087815260046020526040902080548891879167ffffffffffffffff8316106125025760405160e560020a62461bcd0281526004016105079061373c565b60008a8152600460205260409020805467ffffffffffffffff8a16111561253e5760405160e560020a62461bcd0281526004016105079061373c565b6000818a67ffffffffffffffff168154811061255c5761255c6135e0565b906000526020600020906002020190508060000160008c600160a060020a0316600160a060020a03168152602001908152602001600020805461259e90613679565b80601f01602080910402602001604051908101604052809291908181526020018280546125ca90613679565b80156126175780601f106125ec57610100808354040283529160200191612617565b820191906000526020600020905b8154815290600101906020018083116125fa57829003601f168201915b5050505050985050505050505050509392505050565b6000848152600360205260409020805485918591600110801561265a5750805467ffffffffffffffff8316105b6126795760405160e560020a62461bcd028152600401610507906135a9565b8315801590612694575060055467ffffffffffffffff168411155b6126b35760405160e560020a62461bcd0281526004016105079061395e565b6000878152600360205260408120805467ffffffffffffffff89169081106126dd576126dd6135e0565b60009182526020909120600390910201905060028154608060020a900460ff16600481111561270e5761270e6135f9565b1461275e5760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164696e67207068617365000000000000000000006044820152606401610507565b60008881526004602052604081208054909190829067ffffffffffffffff8b1690811061278d5761278d6135e0565b6000918252602080832033845260029092029091019081905260409091208054919250906127ba90613679565b1590506128325760405160e560020a62461bcd02815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201527f756c7469706c652074696d6573000000000000000000000000000000000000006064820152608401610507565b33600090815260208290526040902061284c908989612e77565b50600080516020613cb58339815191528a8a3360008c8c60405161287596959493929190613b4c565b60405180910390a150505050505050505050565b600085815260036020526040902080548691869160011080156128b65750805467ffffffffffffffff8316105b6128d55760405160e560020a62461bcd028152600401610507906135a9565b83158015906128fc575060055468010000000000000000900467ffffffffffffffff168411155b61291b5760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a16908110612945576129456135e0565b60009182526020909120600390910201905060018154608060020a900460ff166004811115612976576129766135f9565b146129c65760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610507565b6000898152600460205260409020805467ffffffffffffffff8a1614156129f4578054600101815560008190525b6000818a67ffffffffffffffff1681548110612a1257612a126135e0565b60009182526020808320338452600160029093020191820181526040808420600160a060020a038e168552909152909120600301805491925090612a5590613679565b159050612a775760405160e560020a62461bcd028152600401610507906139bb565b3360009081526001820160209081526040808320600160a060020a038d1684529091529020612aaa906003018989612e77565b50600080516020613cb58339815191528b8b338c8c8c604051611a1a96959493929190613bc4565b60008581526003602052604090208054869186916001108015612aff5750805467ffffffffffffffff8316105b612b1e5760405160e560020a62461bcd028152600401610507906135a9565b8315801590612b45575060055468010000000000000000900467ffffffffffffffff168411155b612b645760405160e560020a62461bcd0281526004016105079061395e565b6000888152600360205260408120805467ffffffffffffffff8a16908110612b8e57612b8e6135e0565b6000918252602090912060039182020191508154608060020a900460ff166004811115612bbd57612bbd6135f9565b14612c0d5760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610507565b6000898152600460205260409020805467ffffffffffffffff8a161415612c3b578054600101815560008190525b6000818a67ffffffffffffffff1681548110612c5957612c596135e0565b60009182526020808320600160a060020a038d1684526001600290930201918201815260408084203385529091528220600301805491935090612c9b90613679565b905011612ced5760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610507565b600160a060020a0389166000908152600182016020908152604080832033845290915290206002018054612d2090613679565b159050612d985760405160e560020a62461bcd02815260206004820152602360248201527f63616e6e6f742075706c6f616420736b6d61736b206d756c7469706c6520746960448201527f6d657300000000000000000000000000000000000000000000000000000000006064820152608401610507565b600160a060020a038916600090815260018201602090815260408083203384529091529020612dcb906002018989612e77565b50600080516020613cb58339815191528b8b8b338c8c604051611a1a96959493929190613c3c565b828054612dff90613679565b90600052602060002090601f016020900481019282612e215760008555612e67565b82601f10612e3a57805160ff1916838001178555612e67565b82800160010185558215612e67579182015b82811115612e67578251825591602001919060010190612e4c565b50612e73929150612eeb565b5090565b828054612e8390613679565b90600052602060002090601f016020900481019282612ea55760008555612e67565b82601f10612ebe5782800160ff19823516178555612e67565b82800160010185558215612e67579182015b82811115612e67578235825591602001919060010190612ed0565b5b80821115612e735760008155600101612eec565b803567ffffffffffffffff81168114612f1857600080fd5b919050565b60008060408385031215612f3057600080fd5b82359150612f4060208401612f00565b90509250929050565b803563ffffffff81168114612f1857600080fd5b60008060008060808587031215612f7357600080fd5b84359350612f8360208601612f00565b9250612f9160408601612f49565b9150612f9f60608601612f49565b905092959194509250565b60008060008060608587031215612fc057600080fd5b84359350612fd060208601612f00565b9250604085013567ffffffffffffffff80821115612fed57600080fd5b818701915087601f83011261300157600080fd5b81358181111561301057600080fd5b886020808302850101111561302457600080fd5b95989497505060200194505050565b6000602080835260c0830167ffffffffffffffff855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b808310156130c4578351600160a060020a0316825292840192600192909201919084019061309b565b509695505050505050565b8035600160a060020a0381168114612f1857600080fd5b600080600080608085870312156130fc57600080fd5b8435935061310c60208601612f00565b925061311a604086016130cf565b9150612f9f606086016130cf565b60005b8381101561314357818101518382015260200161312b565b83811115613152576000848401525b50505050565b60008151808452613170816020860160208601613128565b601f01601f19169290920160200192915050565b6020815260008251608060208401526131a060a0840182613158565b90506020840151601f19808584030160408601526131be8383613158565b925060408601519150808584030160608601526131db8383613158565b92506060860151915080858403016080860152506131f98282613158565b95945050505050565b60006020828403121561321457600080fd5b5035919050565b60208152600160a060020a0382511660208201526000602083015160a0604084015261324a60c0840182613158565b90506040840151601f198483030160608501526132678282613158565b9150506060840151608084015267ffffffffffffffff60808501511660a08401528091505092915050565b60008083601f8401126132a457600080fd5b50813567ffffffffffffffff8111156132bc57600080fd5b6020830191508360208285010111156132d457600080fd5b9250929050565b6000806000604084860312156132f057600080fd5b833567ffffffffffffffff81111561330757600080fd5b61331386828701613292565b909790965060209590950135949350505050565b60008060008060006080868803121561333f57600080fd5b8535945061334f60208701612f00565b935061335d604087016130cf565b9250606086013567ffffffffffffffff81111561337957600080fd5b61338588828901613292565b969995985093965092949392505050565b600080600080600080608087890312156133af57600080fd5b863595506133bf60208801612f00565b9450604087013567ffffffffffffffff808211156133dc57600080fd5b6133e88a838b01613292565b9096509450606089013591508082111561340157600080fd5b5061340e89828a01613292565b979a9699509497509295939492505050565b60006020828403121561343257600080fd5b61343b826130cf565b9392505050565b60006020828403121561345457600080fd5b61343b82612f00565b60008060006060848603121561347257600080fd5b8335925061348260208501612f00565b9150613490604085016130cf565b90509250925092565b6020815260008251604060208401526134b56060840182613158565b90506020840151601f198483030160408501526131f98282613158565b6000806000606084860312156134e757600080fd5b833592506134f7602085016130cf565b915061349060408501612f00565b60208152600061343b6020830184613158565b6000806000806060858703121561352e57600080fd5b8435935061353e60208601612f00565b9250604085013567ffffffffffffffff81111561355a57600080fd5b61356687828801613292565b95989497509550505050565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b60e060020a634e487b7102600052603260045260246000fd5b60e060020a634e487b7102600052602160045260246000fd5b6020808252600f908201527f5461736b206e6f74206578697374730000000000000000000000000000000000604082015260600190565b60e060020a634e487b7102600052601160045260246000fd5b60008282101561367457613674613649565b500390565b60028104600182168061368d57607f821691505b602082108114156136b15760e060020a634e487b7102600052602260045260246000fd5b50919050565b60006000198214156136cb576136cb613649565b5060010190565b600060608201868352602067ffffffffffffffff871681850152606060408501528185835260808501905086925060005b8681101561372f57600160a060020a0361371c856130cf565b1682529282019290820190600101613703565b5098975050505050505050565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b858152600160a060020a03851660208201526080604082015260006137c5608083018587613773565b90508260608301529695505050505050565b60e060020a634e487b7102600052604160045260246000fd5b600082601f83011261380157600080fd5b815167ffffffffffffffff8082111561381c5761381c6137d7565b604051601f8301601f19908116603f01168101908282118183101715613844576138446137d7565b8160405283815286602085880101111561385d57600080fd5b61386e846020830160208901613128565b9695505050505050565b60006020828403121561388a57600080fd5b815167ffffffffffffffff808211156138a257600080fd5b90830190604082860312156138b657600080fd5b6040516040810181811083821117156138d1576138d16137d7565b6040528251828111156138e357600080fd5b6138ef878286016137f0565b82525060208301518281111561390457600080fd5b613910878286016137f0565b60208301525095945050505050565b858152608060208201526000613939608083018688613773565b828103604084015261394b8186613158565b9150508260608301529695505050505050565b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201527f6f7220697420697320656d707479000000000000000000000000000000000000606082015260800190565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6560408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600460c08301527f534545440000000000000000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b9998505050505050505050565b60208082526013908201527f43616c6c6572206973206e6f74206f776e657200000000000000000000000000604082015260600190565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600860c08301527f53454544434d4d5400000000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f574549474854000000000000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600a60c08301527f534b4d41534b434d4d540000000000000000000000000000000000000000000060e08301526101008060a0840152613a908184018587613773565b86815267ffffffffffffffff861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f534b4d41534b000000000000000000000000000000000000000000000000000060e08301526101008060a0840152613a90818401858761377356feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa264697066735822122091803c41a977ed95a673d1a7eb35cbfb903e13e63fa7968d2fd0a90b374bf70164736f6c634300080a0033", + "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IdentityContract\",\"name\":\"_addr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"AggregateStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"CalculateStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"reciver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"contentType\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"content\",\"type\":\"bytes\"}],\"name\":\"ContentUploaded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnerSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"PartnerSelected\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"RoundEnd\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"RoundStart\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"creator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"creatorUrl\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"taskType\",\"type\":\"string\"}],\"name\":\"TaskCreated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"taskType\",\"type\":\"string\"}],\"name\":\"createTask\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"endRound\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"candidateAddrs\",\"type\":\"address[]\"}],\"name\":\"getClientPublickeys\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"pk1\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"pk2\",\"type\":\"bytes\"}],\"internalType\":\"struct HFLContract.Candidate[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxCommitmentsLength\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"sslength\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"weightLength\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"clientaddress\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"getResultCommitment\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"commitment\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"senders\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"getSecretSharingDatas\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"seedPiece\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"seedCommitment\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyPiece\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyMaskCommitment\",\"type\":\"bytes\"}],\"internalType\":\"struct HFLContract.SSData[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"}],\"name\":\"getTaskData\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"creator\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"creatorUrl\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"taskType\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"currentRound\",\"type\":\"uint64\"}],\"internalType\":\"struct HFLContract.Task\",\"name\":\"task\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"getTaskRound\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"currentRound\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"maxSample\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minSample\",\"type\":\"uint32\"},{\"internalType\":\"uint8\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"joinedAddrs\",\"type\":\"address[]\"}],\"internalType\":\"struct HFLContract.ExtCallTaskRoundStruct\",\"name\":\"taskround\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"idContract\",\"outputs\":[{\"internalType\":\"contract IdentityContract\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"pk1\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"pk2\",\"type\":\"bytes\"}],\"name\":\"joinRound\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"selectCandidates\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"maxLength\",\"type\":\"uint64\"}],\"name\":\"setMaxSSCommitmentLength\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"maxLength\",\"type\":\"uint64\"}],\"name\":\"setMaxWeightCommitmentLength\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"onlineClients\",\"type\":\"address[]\"}],\"name\":\"startAggregate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"onlineClients\",\"type\":\"address[]\"}],\"name\":\"startCalculate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"maxSample\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minSample\",\"type\":\"uint32\"}],\"name\":\"startRound\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"resultCommitment\",\"type\":\"bytes\"}],\"name\":\"uploadResultCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"receivers\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"secretKeyCommitments\",\"type\":\"bytes[]\"}],\"name\":\"uploadSecretKeyCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"senders\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"secretkeyMasks\",\"type\":\"bytes[]\"}],\"name\":\"uploadSecretkeyMask\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"senders\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"seeds\",\"type\":\"bytes[]\"}],\"name\":\"uploadSeed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"receivers\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"seedCommitments\",\"type\":\"bytes[]\"}],\"name\":\"uploadSeedCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Delta Contract For Mpc\",\"kind\":\"dev\",\"methods\":{\"changeOwner(address)\":{\"details\":\"Change owner\",\"params\":{\"newOwner\":\"address of new owner\"}},\"constructor\":{\"details\":\"Set contract deployer as owner\"},\"createTask(string,bytes32,string)\":{\"details\":\"called by task developer, notifying all clients that a new learning task has been published\",\"params\":{\"commitment\":\"training code hash (client validation purpose)\",\"dataSet\":\"data set name (file/folder name of training data)\"},\"returns\":{\"taskId\":\"taskId\"}},\"endRound(bytes32,uint64)\":{\"details\":\"called by task developer, close round\",\"params\":{\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"getClientPublickeys(bytes32,uint64,address[])\":{\"details\":\"called by anyone, get Client Pks\",\"returns\":{\"_0\":\"candidate (pk1,pk2)\"}},\"getOwner()\":{\"details\":\"Return owner address\",\"returns\":{\"_0\":\"address of owner\"}},\"getResultCommitment(bytes32,address,uint64)\":{\"details\":\"called by task developer, get commitments from blockchain(Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\",\"params\":{\"clientaddress\":\"the client that publish the commitments\",\"round\":\"the round of that commitment\",\"taskId\":\"taskId\"},\"returns\":{\"commitment\":\"commitment data\"}},\"getSecretSharingDatas(bytes32,uint64,address[],address)\":{\"details\":\"called by any participants\"},\"getTaskData(bytes32)\":{\"details\":\"get task info data\",\"params\":{\"taskId\":\"taskId\"}},\"getTaskRound(bytes32,uint64)\":{\"details\":\"getting task round infos\",\"params\":{\"round\":\"the round to fetch\",\"taskId\":\"taskId\"},\"returns\":{\"taskround\":\"the task round infos\"}},\"joinRound(bytes32,uint64,bytes,bytes)\":{\"details\":\"called by client, join for that round of computation\",\"params\":{\"pk1\":\"used for secure communication channel establishment\",\"pk2\":\"used for mask generation\",\"round\":\"the round to join\",\"taskId\":\"taskId\"}},\"selectCandidates(bytes32,uint64,address[])\":{\"details\":\"called by task developer, randomly choose candidates to be computation nodesclients now should start secret sharing phase\",\"params\":{\"addrs\":\"selected client addresses\"}},\"startAggregate(bytes32,uint64,address[])\":{\"details\":\"called by task developer, notifying all participants that the ss and gradient transfer phase has finishedclient now should send corresponded ss share pieces to task developer according to the online status given by the task developer\",\"params\":{\"onlineClients\":\"clients that has transfered gradient to task developer\",\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"startCalculate(bytes32,uint64,address[])\":{\"details\":\"called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\",\"params\":{\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"startRound(bytes32,uint64,uint32,uint32)\":{\"details\":\"called by task developer, notifying all clients that a new computing round is started and open for joining\",\"params\":{\"round\":\"the round to start\",\"taskId\":\"taskId\"}},\"uploadResultCommitment(bytes32,uint64,bytes)\":{\"details\":\"called by client, upload weight commitment\",\"params\":{\"resultCommitment\":\"masked model incremental commitment\",\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"uploadSecretKeyCommitment(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing sk commitment\",\"params\":{\"receivers\":\"the receiver addresses\",\"round\":\"the task round\",\"secretKeyCommitments\":\"secretKeyCommitments[i] is the commitment send to receivers[i]\",\"taskId\":\"taskId\"}},\"uploadSecretkeyMask(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing sk commitment\",\"params\":{\"round\":\"the task round\",\"secretkeyMasks\":\"secretkeyMasks[i] is the secretKeyMask send by senders[i]\",\"senders\":\"senders address\",\"taskId\":\"taskId\"}},\"uploadSeed(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing seed commitment\",\"params\":{\"round\":\"the task round\",\"seeds\":\"seeds[i] is the seed send by senders[i]\",\"senders\":\"senders address\",\"taskId\":\"taskId\"}},\"uploadSeedCommitment(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing seed commitment\",\"params\":{\"receivers\":\"the receiver addresses\",\"round\":\"the task round\",\"seedCommitments\":\"seedCommitments[i] is the commitment send to receivers[i]\",\"taskId\":\"taskId\"}}},\"title\":\"Delta Contract\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/HFLContract.sol\":\"HFLContract\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/HFLContract.sol\":{\"keccak256\":\"0xe1056d14131d97c455fdacfcd7469e033683a3aa76a4d9f7a1fb0113c7227906\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://4724727c1d5406499f27e7c7b8c8398fc097b6ee6430655056593270d8988f70\",\"dweb:/ipfs/QmXuV4Arn7DaVPThwGUvKaQf3rGVHXcEJuBRBZyDmhSr2x\"]},\"project:/contracts/Identity.sol\":{\"keccak256\":\"0x9a1b17d491a0f8194413917595bd70eb795307779a2c5ab2b7ce057ac4974bcf\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://5cbf30353d05ba5f01a507daf760a8fdffeae118e607aa4221d552bd634fd807\",\"dweb:/ipfs/Qmat9bD6Ym9mLj2qfw6R3nk5XkBsMJASLUVgDauXDTkup5\"]}},\"version\":1}", + "bytecode": "0x6080604052600580546001608060020a0319166901000000000000a000001790553480156200002d57600080fd5b506040516200485e3803806200485e8339810160408190526200005091620000aa565b60008054600160a060020a0319908116600160a060020a03841617825560018054339216821790556040519091907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735908290a350620000dc565b600060208284031215620000bd57600080fd5b8151600160a060020a0381168114620000d557600080fd5b9392505050565b61477280620000ec6000396000f3fe60806040526004361061015d576000357c01000000000000000000000000000000000000000000000000000000009004806391d48f52116100d3578063c96525ac1161008c578063c96525ac146103f1578063d6f0214214610411578063e26e887114610431578063e36bb28c1461045e578063e49c9d431461048b578063ebd3e836146104ab57600080fd5b806391d48f52146103205780639bd3a86914610350578063a6f9dae114610371578063abf2013a14610391578063b194c028146103b1578063b71b768d146103d157600080fd5b80634893b362116101255780634893b362146102215780634956219b1461024e57806358af9f731461026e5780635d3d7e631461029b5780635ed14248146102d5578063893d20e81461030257600080fd5b806301bd72691461016257806307dcfa8e146101845780631fd38b83146101a45780633045a939146101c457806341e865cb14610201575b600080fd5b34801561016e57600080fd5b5061018261017d366004613815565b6104cb565b005b34801561019057600080fd5b5061018261019f366004613855565b61060e565b3480156101b057600080fd5b506101826101bf3660046138ec565b61096d565b3480156101d057600080fd5b506000546101e490600160a060020a031681565b604051600160a060020a0390911681526020015b60405180910390f35b34801561020d57600080fd5b5061018261021c366004613975565b610e1f565b34801561022d57600080fd5b5061024161023c366004613815565b611045565b6040516101f891906139ce565b34801561025a57600080fd5b50610182610269366004613975565b6111d7565b34801561027a57600080fd5b5061028e610289366004613a69565b61142a565b6040516101f89190613ade565b3480156102a757600080fd5b50600554604080516001604060020a03680100000000000000008404811682529092166020830152016101f8565b3480156102e157600080fd5b506102f56102f0366004613b8a565b6116b9565b6040516101f89190613bf8565b34801561030e57600080fd5b50600154600160a060020a03166101e4565b34801561032c57600080fd5b5061034061033b366004613cf2565b611b37565b60405190151581526020016101f8565b61036361035e366004613d69565b611e22565b6040519081526020016101f8565b34801561037d57600080fd5b5061018261038c366004613de2565b6120b6565b34801561039d57600080fd5b506101826103ac366004613975565b61214c565b3480156103bd57600080fd5b506101826103cc3660046138ec565b6122dd565b3480156103dd57600080fd5b506101826103ec366004613e04565b6126d9565b3480156103fd57600080fd5b5061018261040c3660046138ec565b612729565b34801561041d57600080fd5b5061018261042c366004613e04565b612bd3565b34801561043d57600080fd5b5061045161044c366004613975565b612c37565b6040516101f89190613e1f565b34801561046a57600080fd5b5061047e610479366004613e93565b612ee2565b6040516101f89190613ecf565b34801561049757600080fd5b506101826104a63660046138ec565b613098565b3480156104b757600080fd5b506101826104c6366004613ee2565b613494565b6000828152600260205260409020548290600160a060020a0316331461050f5760405160e560020a62461bcd02815260040161050690613f2f565b60405180910390fd5b6000838152600360205260409020805484918491600110801561053b575080546001604060020a038316105b61055a5760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a03881690811061058357610583613f9d565b600091825260209182902060039190910201805470ff000000000000000000000000000000001916700400000000000000000000000000000000178155604080518a81526001604060020a038a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b6000848152600260205260409020548490600160a060020a03166106475760405160e560020a62461bcd02815260040161050690613fcf565b6000858152600260205260409020548590600160a060020a031633146106825760405160e560020a62461bcd02815260040161050690613f2f565b600086815260036020526040902080546001604060020a038716146107385760405160e560020a62461bcd02815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f742065786960648201527f7374000000000000000000000000000000000000000000000000000000000000608482015260a401610506565b600087815260026020526040902060058101805467ffffffffffffffff19166001604060020a0389161790555b81541580610789575081546001604060020a038816906107879060019061401f565b105b1561079f57815460010182556000829052610765565b8682886001604060020a0316815481106107bb576107bb613f9d565b60009182526020909120600390910201805467ffffffffffffffff19166001604060020a03928316179055825487918491908a169081106107fe576107fe613f9d565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff1602179055508482886001604060020a03168154811061084957610849613f9d565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff160217905550600082886001604060020a03168154811061089557610895613f9d565b60009182526020909120600390910201805470ff000000000000000000000000000000001916608060020a8360048111156108d2576108d2613fb6565b021790555060008881526004602052604090205b8054158061090a575080546001604060020a038916906109089060019061401f565b105b15610920578054600101815560008190526108e6565b604080518a81526001604060020a038a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b60008681526003602052604090208054879187916001108015610999575080546001604060020a038316105b6109b85760405160e560020a62461bcd02815260040161050690613f66565b858414610a305760405160e560020a62461bcd02815260206004820152602b60248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65656473206c656e6774680000000000000000000000000000000000000000006064820152608401610506565b60005b84811015610add576000868683818110610a4f57610a4f613f9d565b9050602002810190610a619190614036565b9050118015610aac57506005546801000000000000000090046001604060020a0316868683818110610a9557610a95613f9d565b9050602002810190610aa79190614036565b905011155b610acb5760405160e560020a62461bcd0281526004016105069061407c565b80610ad5816140d9565b915050610a33565b50600089815260036020526040812080546001604060020a038b16908110610b0757610b07613f9d565b6000918252602090912060039182020191508154608060020a900460ff166004811115610b3657610b36613fb6565b14610b865760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d16908110610bb457610bb4613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d85818110610be957610be9613f9d565b9050602002016020810190610bfe9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206001018054610c32906140f4565b905011610c845760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110610c9c57610c9c613f9d565b9050602002016020810190610cb19190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290208054610ce2906140f4565b159050610d045760405160e560020a62461bcd02815260040161050690614132565b888882818110610d1657610d16613f9d565b9050602002810190610d289190614036565b8360010160008e8e86818110610d4057610d40613f9d565b9050602002016020810190610d559190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020610d869290916136ec565b5060008051602061471d8339815191528d8d8d8d85818110610daa57610daa613f9d565b9050602002016020810190610dbf9190613de2565b338d8d87818110610dd257610dd2613f9d565b9050602002810190610de49190614036565b604051610df6969594939291906141b8565b60405180910390a180610e08816140d9565b915050610bc7565b50505050505050505050505050565b6000848152600260205260409020548490600160a060020a03163314610e5a5760405160e560020a62461bcd02815260040161050690613f2f565b60008581526003602052604090208054869186916001108015610e86575080546001604060020a038316105b610ea55760405160e560020a62461bcd02815260040161050690613f66565b84610ef55760405160e560020a62461bcd02815260206004820152601660248201527f4d7573742070726f7669646520616464726573736573000000000000000000006044820152606401610506565b600088815260036020526040812080546001604060020a038a16908110610f1e57610f1e613f9d565b9060005260206000209060030201905060005b86811015610ff05760008260010160008a8a85818110610f5357610f53613f9d565b9050602002016020810190610f689190613de2565b600160a060020a0316815260208101919091526040016000208054610f8c906140f4565b905011610fde5760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b80610fe8816140d9565b915050610f31565b50805470ff000000000000000000000000000000001916608060020a1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f9061095a908b908b908b908b9061423c565b6040805160a081018252600080825260208083018290528284018290526060808401839052608084015285825260039052919091208054849184916001108015611098575080546001604060020a038316105b6110b75760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a0388169081106110e0576110e0613f9d565b60009182526020918290206040805160a081018252600390930290910180546001604060020a038116845263ffffffff6801000000000000000082048116958501959095526c01000000000000000000000000810490941691830191909152925090606082019060ff608060020a90910416600481111561116357611163613fb6565b60ff168152602001826002018054806020026020016040519081016040528092919081815260200182805480156111c357602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116111a5575b505050505081525094505050505092915050565b6000848152600260205260409020548490600160a060020a031633146112125760405160e560020a62461bcd02815260040161050690613f2f565b6000858152600360205260409020805486918691600110801561123e575080546001604060020a038316105b61125d5760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a1690811061128657611286613f9d565b60009182526020909120600390910201905060028154608060020a900460ff1660048111156112b7576112b7613fb6565b146113075760405160e560020a62461bcd02815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f74207374617274656400000000006044820152606401610506565b805470ff00000000000000000000000000000000191670030000000000000000000000000000000017815560005b868110156113f45760008260010160008a8a8581811061135757611357613f9d565b905060200201602081019061136c9190613de2565b600160a060020a0316815260208101919091526040016000208054611390906140f4565b9050116113e25760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b806113ec816140d9565b915050611335565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f8989898960405161095a949392919061423c565b6114786040518060c001604052806000600160a060020a031681526020016060815260200160608152602001600080191681526020016060815260200160006001604060020a031681525090565b6000828152600260205260409020548290600160a060020a03166114b15760405160e560020a62461bcd02815260040161050690613fcf565b600083815260026020908152604091829020825160c081019093528054600160a060020a0316835260018101805491928401916114ed906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611519906140f4565b80156115665780601f1061153b57610100808354040283529160200191611566565b820191906000526020600020905b81548152906001019060200180831161154957829003601f168201915b5050505050815260200160028201805461157f906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546115ab906140f4565b80156115f85780601f106115cd576101008083540402835291602001916115f8565b820191906000526020600020905b8154815290600101906020018083116115db57829003601f168201915b505050505081526020016003820154815260200160048201805461161b906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611647906140f4565b80156116945780601f1061166957610100808354040283529160200191611694565b820191906000526020600020905b81548152906001019060200180831161167757829003601f168201915b5050509183525050600591909101546001604060020a03166020909101529392505050565b60008581526003602052604090208054606091879187919060011080156116e9575080546001604060020a038316105b6117085760405160e560020a62461bcd02815260040161050690613f66565b600089815260046020526040902080548a918a916001604060020a038316106117465760405160e560020a62461bcd02815260040161050690614298565b60008c815260046020526040902080546001604060020a038d1611156117815760405160e560020a62461bcd02815260040161050690614298565b6000818d6001604060020a03168154811061179e5761179e613f9d565b60009182526020822060029091020191508b6001604060020a038111156117c7576117c76142cf565b60405190808252806020026020018201604052801561182357816020015b6118106040518060800160405280606081526020016060815260200160608152602001606081525090565b8152602001906001900390816117e55790505b50905060005b8c811015611b24578260010160008f8f8481811061184957611849613f9d565b905060200201602081019061185e9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060008d600160a060020a0316600160a060020a031681526020019081526020016000206040518060800160405290816000820180546118bc906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546118e8906140f4565b80156119355780601f1061190a57610100808354040283529160200191611935565b820191906000526020600020905b81548152906001019060200180831161191857829003601f168201915b5050505050815260200160018201805461194e906140f4565b80601f016020809104026020016040519081016040528092919081815260200182805461197a906140f4565b80156119c75780601f1061199c576101008083540402835291602001916119c7565b820191906000526020600020905b8154815290600101906020018083116119aa57829003601f168201915b505050505081526020016002820180546119e0906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0c906140f4565b8015611a595780601f10611a2e57610100808354040283529160200191611a59565b820191906000526020600020905b815481529060010190602001808311611a3c57829003601f168201915b50505050508152602001600382018054611a72906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a9e906140f4565b8015611aeb5780601f10611ac057610100808354040283529160200191611aeb565b820191906000526020600020905b815481529060010190602001808311611ace57829003601f168201915b505050505081525050828281518110611b0657611b06613f9d565b60200260200101819052508080611b1c906140d9565b915050611829565b509e9d5050505050505050505050505050565b6000868152600260205260408120548790600160a060020a0316611b705760405160e560020a62461bcd02815260040161050690613fcf565b60008881526003602052604090208054899189916001108015611b9c575080546001604060020a038316105b611bbb5760405160e560020a62461bcd02815260040161050690613f66565b60008b815260036020526040812080549091908290611bdc9060019061401f565b81548110611bec57611bec613f9d565b906000526020600020906003020190508b6001604060020a031660018380549050611c17919061401f565b148015611c40575060008154608060020a900460ff166004811115611c3e57611c3e613fb6565b145b611c8f5760405160e560020a62461bcd02815260206004820152601560248201527f6a6f696e207068617365206861732070617373656400000000000000000000006044820152606401610506565b33600090815260018201602052604090208054611cab906140f4565b159050611d235760405160e560020a62461bcd02815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c746960448201527f706c652074696d657300000000000000000000000000000000000000000000006064820152608401610506565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611dc1928492910190613770565b506020828101518051611dda9260018501920190613770565b5050506002018054600181810183556000928352602090922001805473ffffffffffffffffffffffffffffffffffffffff191633179055955050505050509695505050505050565b60008043338888888888604051602001611e4297969594939291906142e8565b60408051808303601f19018152908290528051602090910120600080547f582115fb00000000000000000000000000000000000000000000000000000000845233600485015291935091600160a060020a039091169063582115fb90602401600060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ee691908101906143bf565b90506040518060c0016040528033600160a060020a031681526020018260000151815260200189898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250602080820189905260408051601f890183900483028101830182528881529201919088908890819084018382808284376000920182905250938552505050602091820181905284815260028252604090208251815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039091161781558282015180519192611fd992600185019290910190613770565b5060408201518051611ff5916002840191602090910190613770565b50606082015160038201556080820151805161201b916004840191602090910190613770565b5060a091909101516005909101805467ffffffffffffffff19166001604060020a03909216919091179055600082815260036020526040808220805460010181559182905282519051939450849333917f8e25935a9ec6d103bff2bb6b248969c0cf317603fad46413c940773b5754cb3a916120a29187918e918e918e908e908e90614465565b60405180910390a250505095945050505050565b600154600160a060020a031633146120e35760405160e560020a62461bcd028152600401610506906144ac565b600154604051600160a060020a038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000848152600260205260409020548490600160a060020a031633146121875760405160e560020a62461bcd02815260040161050690613f2f565b600085815260036020526040902080548691869160011080156121b3575080546001604060020a038316105b6121d25760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a169081106121fb576121fb613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561222c5761222c613fb6565b1461227c5760405160e560020a62461bcd02815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f770000006044820152606401610506565b805470ff0000000000000000000000000000000019167002000000000000000000000000000000001781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d9061095a908b908b908b908b9061423c565b60008681526003602052604090208054879187916001108015612309575080546001604060020a038316105b6123285760405160e560020a62461bcd02815260040161050690613f66565b8584146123a05760405160e560020a62461bcd02815260206004820152603760248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f2073656564436f6d6d69746d656e7473206c656e6774680000000000000000006064820152608401610506565b60005b8481101561244d5760008686838181106123bf576123bf613f9d565b90506020028101906123d19190614036565b905011801561241c57506005546801000000000000000090046001604060020a031686868381811061240557612405613f9d565b90506020028101906124179190614036565b905011155b61243b5760405160e560020a62461bcd0281526004016105069061407c565b80612445816140d9565b9150506123a3565b50600089815260036020526040812080546001604060020a038b1690811061247757612477613f9d565b60009182526020909120600390910201905060018154608060020a900460ff1660048111156124a8576124a8613fb6565b146124f85760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061252657612526613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061256557612565613f9d565b905060200201602081019061257a9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060010180546125a8906140f4565b1590506125ca5760405160e560020a62461bcd028152600401610506906144e3565b8888828181106125dc576125dc613f9d565b90506020028101906125ee9190614036565b3360009081526001850160205260408120908e8e8681811061261257612612613f9d565b90506020020160208101906126279190613de2565b600160a060020a03168152602081019190915260400160002061264f926001909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061267457612674613f9d565b90506020020160208101906126899190613de2565b8d8d8781811061269b5761269b613f9d565b90506020028101906126ad9190614036565b6040516126bf96959493929190614540565b60405180910390a1806126d1816140d9565b915050612539565b600154600160a060020a031633146127065760405160e560020a62461bcd028152600401610506906144ac565b6005805467ffffffffffffffff19166001604060020a0392909216919091179055565b60008681526003602052604090208054879187916001108015612755575080546001604060020a038316105b6127745760405160e560020a62461bcd02815260040161050690613f66565b8584146127ec5760405160e560020a62461bcd02815260206004820152603460248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65637265746b65794d61736b73206c656e6774680000000000000000000000006064820152608401610506565b60005b8481101561289957600086868381811061280b5761280b613f9d565b905060200281019061281d9190614036565b905011801561286857506005546801000000000000000090046001604060020a031686868381811061285157612851613f9d565b90506020028101906128639190614036565b905011155b6128875760405160e560020a62461bcd0281526004016105069061407c565b80612891816140d9565b9150506127ef565b50600089815260036020526040812080546001604060020a038b169081106128c3576128c3613f9d565b6000918252602090912060039182020191508154608060020a900460ff1660048111156128f2576128f2613fb6565b146129425760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061297057612970613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d858181106129a5576129a5613f9d565b90506020020160208101906129ba9190613de2565b600160a060020a0316815260208082019290925260409081016000908120338252909252902060030180546129ee906140f4565b905011612a405760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110612a5857612a58613f9d565b9050602002016020810190612a6d9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206002018054612aa1906140f4565b159050612ac35760405160e560020a62461bcd02815260040161050690614132565b888882818110612ad557612ad5613f9d565b9050602002810190612ae79190614036565b8360010160008e8e86818110612aff57612aff613f9d565b9050602002016020810190612b149190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020612b49926002909101916136ec565b5060008051602061471d8339815191528d8d8d8d85818110612b6d57612b6d613f9d565b9050602002016020810190612b829190613de2565b338d8d87818110612b9557612b95613f9d565b9050602002810190612ba79190614036565b604051612bb9969594939291906145b7565b60405180910390a180612bcb816140d9565b915050612983565b600154600160a060020a03163314612c005760405160e560020a62461bcd028152600401610506906144ac565b600580546001604060020a0390921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055565b6000848152600360205260409020805460609186918691906001108015612c67575080546001604060020a038316105b612c865760405160e560020a62461bcd02815260040161050690613f66565b6000856001604060020a03811115612ca057612ca06142cf565b604051908082528060200260200182016040528015612ce557816020015b6040805180820190915260608082526020820152815260200190600190039081612cbe5790505b50905060005b86811015612ed55760008a815260036020526040902080546001604060020a038b16908110612d1c57612d1c613f9d565b90600052602060002090600302016001016000898984818110612d4157612d41613f9d565b9050602002016020810190612d569190613de2565b600160a060020a0316600160a060020a03168152602001908152602001600020604051806040016040529081600082018054612d91906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612dbd906140f4565b8015612e0a5780601f10612ddf57610100808354040283529160200191612e0a565b820191906000526020600020905b815481529060010190602001808311612ded57829003601f168201915b50505050508152602001600182018054612e23906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612e4f906140f4565b8015612e9c5780601f10612e7157610100808354040283529160200191612e9c565b820191906000526020600020905b815481529060010190602001808311612e7f57829003601f168201915b505050505081525050828281518110612eb757612eb7613f9d565b60200260200101819052508080612ecd906140d9565b915050612ceb565b5098975050505050505050565b6000838152600360205260409020805460609185918491906001108015612f12575080546001604060020a038316105b612f315760405160e560020a62461bcd02815260040161050690613f66565b60008781526004602052604090208054889187916001604060020a03831610612f6f5760405160e560020a62461bcd02815260040161050690614298565b60008a815260046020526040902080546001604060020a038a161115612faa5760405160e560020a62461bcd02815260040161050690614298565b6000818a6001604060020a031681548110612fc757612fc7613f9d565b906000526020600020906002020190508060000160008c600160a060020a0316600160a060020a031681526020019081526020016000208054613009906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054613035906140f4565b80156130825780601f1061305757610100808354040283529160200191613082565b820191906000526020600020905b81548152906001019060200180831161306557829003601f168201915b5050505050985050505050505050509392505050565b600086815260036020526040902080548791879160011080156130c4575080546001604060020a038316105b6130e35760405160e560020a62461bcd02815260040161050690613f66565b85841461315b5760405160e560020a62461bcd02815260206004820152603c60248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f207365637265744b6579436f6d6d69746d656e7473206c656e677468000000006064820152608401610506565b60005b8481101561320857600086868381811061317a5761317a613f9d565b905060200281019061318c9190614036565b90501180156131d757506005546801000000000000000090046001604060020a03168686838181106131c0576131c0613f9d565b90506020028101906131d29190614036565b905011155b6131f65760405160e560020a62461bcd0281526004016105069061407c565b80613200816140d9565b91505061315e565b50600089815260036020526040812080546001604060020a038b1690811061323257613232613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561326357613263613fb6565b146132b35760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d169081106132e1576132e1613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061332057613320613f9d565b90506020020160208101906133359190613de2565b600160a060020a0316600160a060020a031681526020019081526020016000206003018054613363906140f4565b1590506133855760405160e560020a62461bcd028152600401610506906144e3565b88888281811061339757613397613f9d565b90506020028101906133a99190614036565b3360009081526001850160205260408120908e8e868181106133cd576133cd613f9d565b90506020020160208101906133e29190613de2565b600160a060020a03168152602081019190915260400160002061340a926003909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061342f5761342f613f9d565b90506020020160208101906134449190613de2565b8d8d8781811061345657613456613f9d565b90506020028101906134689190614036565b60405161347a9695949392919061462e565b60405180910390a18061348c816140d9565b9150506132f4565b600084815260036020526040902080548591859160011080156134c0575080546001604060020a038316105b6134df5760405160e560020a62461bcd02815260040161050690613f66565b83158015906134f957506005546001604060020a03168411155b6135185760405160e560020a62461bcd0281526004016105069061407c565b600087815260036020526040812080546001604060020a03891690811061354157613541613f9d565b60009182526020909120600390910201905060028154608060020a900460ff16600481111561357257613572613fb6565b146135c25760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164696e67207068617365000000000000000000006044820152606401610506565b6000888152600460205260408120805490919082906001604060020a038b169081106135f0576135f0613f9d565b60009182526020808320338452600290920290910190819052604090912080549192509061361d906140f4565b1590506136955760405160e560020a62461bcd02815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201527f756c7469706c652074696d6573000000000000000000000000000000000000006064820152608401610506565b3360009081526020829052604090206136af9089896136ec565b5060008051602061471d8339815191528a8a3360008c8c6040516136d8969594939291906146a5565b60405180910390a150505050505050505050565b8280546136f8906140f4565b90600052602060002090601f01602090048101928261371a5760008555613760565b82601f106137335782800160ff19823516178555613760565b82800160010185558215613760579182015b82811115613760578235825591602001919060010190613745565b5061376c9291506137e4565b5090565b82805461377c906140f4565b90600052602060002090601f01602090048101928261379e5760008555613760565b82601f106137b757805160ff1916838001178555613760565b82800160010185558215613760579182015b828111156137605782518255916020019190600101906137c9565b5b8082111561376c57600081556001016137e5565b80356001604060020a038116811461381057600080fd5b919050565b6000806040838503121561382857600080fd5b82359150613838602084016137f9565b90509250929050565b803563ffffffff8116811461381057600080fd5b6000806000806080858703121561386b57600080fd5b8435935061387b602086016137f9565b925061388960408601613841565b915061389760608601613841565b905092959194509250565b60008083601f8401126138b457600080fd5b5081356001604060020a038111156138cb57600080fd5b60208301915083602080830285010111156138e557600080fd5b9250929050565b6000806000806000806080878903121561390557600080fd5b86359550613915602088016137f9565b945060408701356001604060020a038082111561393157600080fd5b61393d8a838b016138a2565b9096509450606089013591508082111561395657600080fd5b5061396389828a016138a2565b979a9699509497509295939492505050565b6000806000806060858703121561398b57600080fd5b8435935061399b602086016137f9565b925060408501356001604060020a038111156139b657600080fd5b6139c2878288016138a2565b95989497509550505050565b6000602080835260c083016001604060020a03855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b80831015613a5e578351600160a060020a03168252928401926001929092019190840190613a35565b509695505050505050565b600060208284031215613a7b57600080fd5b5035919050565b60005b83811015613a9d578181015183820152602001613a85565b83811115613aac576000848401525b50505050565b60008151808452613aca816020860160208601613a82565b601f01601f19169290920160200192915050565b60208152600160a060020a0382511660208201526000602083015160c06040840152613b0d60e0840182613ab2565b90506040840151601f1980858403016060860152613b2b8383613ab2565b92506060860151608086015260808601519150808584030160a086015250613b538282613ab2565b9150506001604060020a0360a08501511660c08401528091505092915050565b8035600160a060020a038116811461381057600080fd5b600080600080600060808688031215613ba257600080fd5b85359450613bb2602087016137f9565b935060408601356001604060020a03811115613bcd57600080fd5b613bd9888289016138a2565b9094509250613bec905060608701613b73565b90509295509295909350565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357603f19898403018552815160808151818652613c4282870182613ab2565b915050888201518582038a870152613c5a8282613ab2565b9150508782015185820389870152613c728282613ab2565b91505060608083015192508582038187015250613c8f8183613ab2565b968901969450505090860190600101613c1c565b509098975050505050505050565b60008083601f840112613cc357600080fd5b5081356001604060020a03811115613cda57600080fd5b6020830191508360208285010111156138e557600080fd5b60008060008060008060808789031215613d0b57600080fd5b86359550613d1b602088016137f9565b945060408701356001604060020a0380821115613d3757600080fd5b613d438a838b01613cb1565b90965094506060890135915080821115613d5c57600080fd5b5061396389828a01613cb1565b600080600080600060608688031215613d8157600080fd5b85356001604060020a0380821115613d9857600080fd5b613da489838a01613cb1565b9097509550602088013594506040880135915080821115613dc457600080fd5b50613dd188828901613cb1565b969995985093965092949392505050565b600060208284031215613df457600080fd5b613dfd82613b73565b9392505050565b600060208284031215613e1657600080fd5b613dfd826137f9565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357888303603f1901855281518051878552613e6788860182613ab2565b91890151858303868b0152919050613e7f8183613ab2565b968901969450505090860190600101613e43565b600080600060608486031215613ea857600080fd5b83359250613eb860208501613b73565b9150613ec6604085016137f9565b90509250925092565b602081526000613dfd6020830184613ab2565b60008060008060608587031215613ef857600080fd5b84359350613f08602086016137f9565b925060408501356001604060020a03811115613f2357600080fd5b6139c287828801613cb1565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b60e060020a634e487b7102600052603260045260246000fd5b60e060020a634e487b7102600052602160045260246000fd5b6020808252600f908201527f5461736b206e6f74206578697374730000000000000000000000000000000000604082015260600190565b60e060020a634e487b7102600052601160045260246000fd5b60008282101561403157614031614006565b500390565b6000808335601e1984360301811261404d57600080fd5b8301803591506001604060020a0382111561406757600080fd5b6020019150368190038213156138e557600080fd5b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201527f6f7220697420697320656d707479000000000000000000000000000000000000606082015260800190565b60006000198214156140ed576140ed614006565b5060010190565b60028104600182168061410857607f821691505b6020821081141561412c5760e060020a634e487b7102600052602260045260246000fd5b50919050565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6560408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600460c08301527f534545440000000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b9998505050505050505050565b60006060820186835260206001604060020a03871681850152606060408501528185835260808501905086925060005b86811015612ed557600160a060020a0361428585613b73565b168252928201929082019060010161426c565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b60e060020a634e487b7102600052604160045260246000fd5b878152600160a060020a038716602082015260a06040820152600061431160a08301878961418f565b856060840152828103608084015261432a81858761418f565b9a9950505050505050505050565b600082601f83011261434957600080fd5b81516001604060020a0380821115614363576143636142cf565b604051601f8301601f19908116603f0116810190828211818310171561438b5761438b6142cf565b816040528381528660208588010111156143a457600080fd5b6143b5846020830160208901613a82565b9695505050505050565b6000602082840312156143d157600080fd5b81516001604060020a03808211156143e857600080fd5b90830190604082860312156143fc57600080fd5b604051604081018181108382111715614417576144176142cf565b60405282518281111561442957600080fd5b61443587828601614338565b82525060208301518281111561444a57600080fd5b61445687828601614338565b60208301525095945050505050565b87815260a06020820152600061447f60a08301888a61418f565b82810360408401526144918188613ab2565b9050856060840152828103608084015261432a81858761418f565b60208082526013908201527f43616c6c6572206973206e6f74206f776e657200000000000000000000000000604082015260600190565b60208082526026908201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c6560408201527f2074696d65730000000000000000000000000000000000000000000000000000606082015260800190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600860c08301527f53454544434d4d5400000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f534b4d41534b000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600a60c08301527f534b4d41534b434d4d540000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f574549474854000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f56feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa2646970667358221220090bb9e40e9f0d8db0e872ae690750129888dc252b68918d4c1c9c5034575a9f64736f6c634300080a0033", + "deployedBytecode": "0x60806040526004361061015d576000357c01000000000000000000000000000000000000000000000000000000009004806391d48f52116100d3578063c96525ac1161008c578063c96525ac146103f1578063d6f0214214610411578063e26e887114610431578063e36bb28c1461045e578063e49c9d431461048b578063ebd3e836146104ab57600080fd5b806391d48f52146103205780639bd3a86914610350578063a6f9dae114610371578063abf2013a14610391578063b194c028146103b1578063b71b768d146103d157600080fd5b80634893b362116101255780634893b362146102215780634956219b1461024e57806358af9f731461026e5780635d3d7e631461029b5780635ed14248146102d5578063893d20e81461030257600080fd5b806301bd72691461016257806307dcfa8e146101845780631fd38b83146101a45780633045a939146101c457806341e865cb14610201575b600080fd5b34801561016e57600080fd5b5061018261017d366004613815565b6104cb565b005b34801561019057600080fd5b5061018261019f366004613855565b61060e565b3480156101b057600080fd5b506101826101bf3660046138ec565b61096d565b3480156101d057600080fd5b506000546101e490600160a060020a031681565b604051600160a060020a0390911681526020015b60405180910390f35b34801561020d57600080fd5b5061018261021c366004613975565b610e1f565b34801561022d57600080fd5b5061024161023c366004613815565b611045565b6040516101f891906139ce565b34801561025a57600080fd5b50610182610269366004613975565b6111d7565b34801561027a57600080fd5b5061028e610289366004613a69565b61142a565b6040516101f89190613ade565b3480156102a757600080fd5b50600554604080516001604060020a03680100000000000000008404811682529092166020830152016101f8565b3480156102e157600080fd5b506102f56102f0366004613b8a565b6116b9565b6040516101f89190613bf8565b34801561030e57600080fd5b50600154600160a060020a03166101e4565b34801561032c57600080fd5b5061034061033b366004613cf2565b611b37565b60405190151581526020016101f8565b61036361035e366004613d69565b611e22565b6040519081526020016101f8565b34801561037d57600080fd5b5061018261038c366004613de2565b6120b6565b34801561039d57600080fd5b506101826103ac366004613975565b61214c565b3480156103bd57600080fd5b506101826103cc3660046138ec565b6122dd565b3480156103dd57600080fd5b506101826103ec366004613e04565b6126d9565b3480156103fd57600080fd5b5061018261040c3660046138ec565b612729565b34801561041d57600080fd5b5061018261042c366004613e04565b612bd3565b34801561043d57600080fd5b5061045161044c366004613975565b612c37565b6040516101f89190613e1f565b34801561046a57600080fd5b5061047e610479366004613e93565b612ee2565b6040516101f89190613ecf565b34801561049757600080fd5b506101826104a63660046138ec565b613098565b3480156104b757600080fd5b506101826104c6366004613ee2565b613494565b6000828152600260205260409020548290600160a060020a0316331461050f5760405160e560020a62461bcd02815260040161050690613f2f565b60405180910390fd5b6000838152600360205260409020805484918491600110801561053b575080546001604060020a038316105b61055a5760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a03881690811061058357610583613f9d565b600091825260209182902060039190910201805470ff000000000000000000000000000000001916700400000000000000000000000000000000178155604080518a81526001604060020a038a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b6000848152600260205260409020548490600160a060020a03166106475760405160e560020a62461bcd02815260040161050690613fcf565b6000858152600260205260409020548590600160a060020a031633146106825760405160e560020a62461bcd02815260040161050690613f2f565b600086815260036020526040902080546001604060020a038716146107385760405160e560020a62461bcd02815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f742065786960648201527f7374000000000000000000000000000000000000000000000000000000000000608482015260a401610506565b600087815260026020526040902060058101805467ffffffffffffffff19166001604060020a0389161790555b81541580610789575081546001604060020a038816906107879060019061401f565b105b1561079f57815460010182556000829052610765565b8682886001604060020a0316815481106107bb576107bb613f9d565b60009182526020909120600390910201805467ffffffffffffffff19166001604060020a03928316179055825487918491908a169081106107fe576107fe613f9d565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff1602179055508482886001604060020a03168154811061084957610849613f9d565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff160217905550600082886001604060020a03168154811061089557610895613f9d565b60009182526020909120600390910201805470ff000000000000000000000000000000001916608060020a8360048111156108d2576108d2613fb6565b021790555060008881526004602052604090205b8054158061090a575080546001604060020a038916906109089060019061401f565b105b15610920578054600101815560008190526108e6565b604080518a81526001604060020a038a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b60008681526003602052604090208054879187916001108015610999575080546001604060020a038316105b6109b85760405160e560020a62461bcd02815260040161050690613f66565b858414610a305760405160e560020a62461bcd02815260206004820152602b60248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65656473206c656e6774680000000000000000000000000000000000000000006064820152608401610506565b60005b84811015610add576000868683818110610a4f57610a4f613f9d565b9050602002810190610a619190614036565b9050118015610aac57506005546801000000000000000090046001604060020a0316868683818110610a9557610a95613f9d565b9050602002810190610aa79190614036565b905011155b610acb5760405160e560020a62461bcd0281526004016105069061407c565b80610ad5816140d9565b915050610a33565b50600089815260036020526040812080546001604060020a038b16908110610b0757610b07613f9d565b6000918252602090912060039182020191508154608060020a900460ff166004811115610b3657610b36613fb6565b14610b865760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d16908110610bb457610bb4613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d85818110610be957610be9613f9d565b9050602002016020810190610bfe9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206001018054610c32906140f4565b905011610c845760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110610c9c57610c9c613f9d565b9050602002016020810190610cb19190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290208054610ce2906140f4565b159050610d045760405160e560020a62461bcd02815260040161050690614132565b888882818110610d1657610d16613f9d565b9050602002810190610d289190614036565b8360010160008e8e86818110610d4057610d40613f9d565b9050602002016020810190610d559190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020610d869290916136ec565b5060008051602061471d8339815191528d8d8d8d85818110610daa57610daa613f9d565b9050602002016020810190610dbf9190613de2565b338d8d87818110610dd257610dd2613f9d565b9050602002810190610de49190614036565b604051610df6969594939291906141b8565b60405180910390a180610e08816140d9565b915050610bc7565b50505050505050505050505050565b6000848152600260205260409020548490600160a060020a03163314610e5a5760405160e560020a62461bcd02815260040161050690613f2f565b60008581526003602052604090208054869186916001108015610e86575080546001604060020a038316105b610ea55760405160e560020a62461bcd02815260040161050690613f66565b84610ef55760405160e560020a62461bcd02815260206004820152601660248201527f4d7573742070726f7669646520616464726573736573000000000000000000006044820152606401610506565b600088815260036020526040812080546001604060020a038a16908110610f1e57610f1e613f9d565b9060005260206000209060030201905060005b86811015610ff05760008260010160008a8a85818110610f5357610f53613f9d565b9050602002016020810190610f689190613de2565b600160a060020a0316815260208101919091526040016000208054610f8c906140f4565b905011610fde5760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b80610fe8816140d9565b915050610f31565b50805470ff000000000000000000000000000000001916608060020a1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f9061095a908b908b908b908b9061423c565b6040805160a081018252600080825260208083018290528284018290526060808401839052608084015285825260039052919091208054849184916001108015611098575080546001604060020a038316105b6110b75760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a0388169081106110e0576110e0613f9d565b60009182526020918290206040805160a081018252600390930290910180546001604060020a038116845263ffffffff6801000000000000000082048116958501959095526c01000000000000000000000000810490941691830191909152925090606082019060ff608060020a90910416600481111561116357611163613fb6565b60ff168152602001826002018054806020026020016040519081016040528092919081815260200182805480156111c357602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116111a5575b505050505081525094505050505092915050565b6000848152600260205260409020548490600160a060020a031633146112125760405160e560020a62461bcd02815260040161050690613f2f565b6000858152600360205260409020805486918691600110801561123e575080546001604060020a038316105b61125d5760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a1690811061128657611286613f9d565b60009182526020909120600390910201905060028154608060020a900460ff1660048111156112b7576112b7613fb6565b146113075760405160e560020a62461bcd02815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f74207374617274656400000000006044820152606401610506565b805470ff00000000000000000000000000000000191670030000000000000000000000000000000017815560005b868110156113f45760008260010160008a8a8581811061135757611357613f9d565b905060200201602081019061136c9190613de2565b600160a060020a0316815260208101919091526040016000208054611390906140f4565b9050116113e25760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b806113ec816140d9565b915050611335565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f8989898960405161095a949392919061423c565b6114786040518060c001604052806000600160a060020a031681526020016060815260200160608152602001600080191681526020016060815260200160006001604060020a031681525090565b6000828152600260205260409020548290600160a060020a03166114b15760405160e560020a62461bcd02815260040161050690613fcf565b600083815260026020908152604091829020825160c081019093528054600160a060020a0316835260018101805491928401916114ed906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611519906140f4565b80156115665780601f1061153b57610100808354040283529160200191611566565b820191906000526020600020905b81548152906001019060200180831161154957829003601f168201915b5050505050815260200160028201805461157f906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546115ab906140f4565b80156115f85780601f106115cd576101008083540402835291602001916115f8565b820191906000526020600020905b8154815290600101906020018083116115db57829003601f168201915b505050505081526020016003820154815260200160048201805461161b906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611647906140f4565b80156116945780601f1061166957610100808354040283529160200191611694565b820191906000526020600020905b81548152906001019060200180831161167757829003601f168201915b5050509183525050600591909101546001604060020a03166020909101529392505050565b60008581526003602052604090208054606091879187919060011080156116e9575080546001604060020a038316105b6117085760405160e560020a62461bcd02815260040161050690613f66565b600089815260046020526040902080548a918a916001604060020a038316106117465760405160e560020a62461bcd02815260040161050690614298565b60008c815260046020526040902080546001604060020a038d1611156117815760405160e560020a62461bcd02815260040161050690614298565b6000818d6001604060020a03168154811061179e5761179e613f9d565b60009182526020822060029091020191508b6001604060020a038111156117c7576117c76142cf565b60405190808252806020026020018201604052801561182357816020015b6118106040518060800160405280606081526020016060815260200160608152602001606081525090565b8152602001906001900390816117e55790505b50905060005b8c811015611b24578260010160008f8f8481811061184957611849613f9d565b905060200201602081019061185e9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060008d600160a060020a0316600160a060020a031681526020019081526020016000206040518060800160405290816000820180546118bc906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546118e8906140f4565b80156119355780601f1061190a57610100808354040283529160200191611935565b820191906000526020600020905b81548152906001019060200180831161191857829003601f168201915b5050505050815260200160018201805461194e906140f4565b80601f016020809104026020016040519081016040528092919081815260200182805461197a906140f4565b80156119c75780601f1061199c576101008083540402835291602001916119c7565b820191906000526020600020905b8154815290600101906020018083116119aa57829003601f168201915b505050505081526020016002820180546119e0906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0c906140f4565b8015611a595780601f10611a2e57610100808354040283529160200191611a59565b820191906000526020600020905b815481529060010190602001808311611a3c57829003601f168201915b50505050508152602001600382018054611a72906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a9e906140f4565b8015611aeb5780601f10611ac057610100808354040283529160200191611aeb565b820191906000526020600020905b815481529060010190602001808311611ace57829003601f168201915b505050505081525050828281518110611b0657611b06613f9d565b60200260200101819052508080611b1c906140d9565b915050611829565b509e9d5050505050505050505050505050565b6000868152600260205260408120548790600160a060020a0316611b705760405160e560020a62461bcd02815260040161050690613fcf565b60008881526003602052604090208054899189916001108015611b9c575080546001604060020a038316105b611bbb5760405160e560020a62461bcd02815260040161050690613f66565b60008b815260036020526040812080549091908290611bdc9060019061401f565b81548110611bec57611bec613f9d565b906000526020600020906003020190508b6001604060020a031660018380549050611c17919061401f565b148015611c40575060008154608060020a900460ff166004811115611c3e57611c3e613fb6565b145b611c8f5760405160e560020a62461bcd02815260206004820152601560248201527f6a6f696e207068617365206861732070617373656400000000000000000000006044820152606401610506565b33600090815260018201602052604090208054611cab906140f4565b159050611d235760405160e560020a62461bcd02815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c746960448201527f706c652074696d657300000000000000000000000000000000000000000000006064820152608401610506565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611dc1928492910190613770565b506020828101518051611dda9260018501920190613770565b5050506002018054600181810183556000928352602090922001805473ffffffffffffffffffffffffffffffffffffffff191633179055955050505050509695505050505050565b60008043338888888888604051602001611e4297969594939291906142e8565b60408051808303601f19018152908290528051602090910120600080547f582115fb00000000000000000000000000000000000000000000000000000000845233600485015291935091600160a060020a039091169063582115fb90602401600060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ee691908101906143bf565b90506040518060c0016040528033600160a060020a031681526020018260000151815260200189898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250602080820189905260408051601f890183900483028101830182528881529201919088908890819084018382808284376000920182905250938552505050602091820181905284815260028252604090208251815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039091161781558282015180519192611fd992600185019290910190613770565b5060408201518051611ff5916002840191602090910190613770565b50606082015160038201556080820151805161201b916004840191602090910190613770565b5060a091909101516005909101805467ffffffffffffffff19166001604060020a03909216919091179055600082815260036020526040808220805460010181559182905282519051939450849333917f8e25935a9ec6d103bff2bb6b248969c0cf317603fad46413c940773b5754cb3a916120a29187918e918e918e908e908e90614465565b60405180910390a250505095945050505050565b600154600160a060020a031633146120e35760405160e560020a62461bcd028152600401610506906144ac565b600154604051600160a060020a038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000848152600260205260409020548490600160a060020a031633146121875760405160e560020a62461bcd02815260040161050690613f2f565b600085815260036020526040902080548691869160011080156121b3575080546001604060020a038316105b6121d25760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a169081106121fb576121fb613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561222c5761222c613fb6565b1461227c5760405160e560020a62461bcd02815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f770000006044820152606401610506565b805470ff0000000000000000000000000000000019167002000000000000000000000000000000001781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d9061095a908b908b908b908b9061423c565b60008681526003602052604090208054879187916001108015612309575080546001604060020a038316105b6123285760405160e560020a62461bcd02815260040161050690613f66565b8584146123a05760405160e560020a62461bcd02815260206004820152603760248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f2073656564436f6d6d69746d656e7473206c656e6774680000000000000000006064820152608401610506565b60005b8481101561244d5760008686838181106123bf576123bf613f9d565b90506020028101906123d19190614036565b905011801561241c57506005546801000000000000000090046001604060020a031686868381811061240557612405613f9d565b90506020028101906124179190614036565b905011155b61243b5760405160e560020a62461bcd0281526004016105069061407c565b80612445816140d9565b9150506123a3565b50600089815260036020526040812080546001604060020a038b1690811061247757612477613f9d565b60009182526020909120600390910201905060018154608060020a900460ff1660048111156124a8576124a8613fb6565b146124f85760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061252657612526613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061256557612565613f9d565b905060200201602081019061257a9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060010180546125a8906140f4565b1590506125ca5760405160e560020a62461bcd028152600401610506906144e3565b8888828181106125dc576125dc613f9d565b90506020028101906125ee9190614036565b3360009081526001850160205260408120908e8e8681811061261257612612613f9d565b90506020020160208101906126279190613de2565b600160a060020a03168152602081019190915260400160002061264f926001909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061267457612674613f9d565b90506020020160208101906126899190613de2565b8d8d8781811061269b5761269b613f9d565b90506020028101906126ad9190614036565b6040516126bf96959493929190614540565b60405180910390a1806126d1816140d9565b915050612539565b600154600160a060020a031633146127065760405160e560020a62461bcd028152600401610506906144ac565b6005805467ffffffffffffffff19166001604060020a0392909216919091179055565b60008681526003602052604090208054879187916001108015612755575080546001604060020a038316105b6127745760405160e560020a62461bcd02815260040161050690613f66565b8584146127ec5760405160e560020a62461bcd02815260206004820152603460248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65637265746b65794d61736b73206c656e6774680000000000000000000000006064820152608401610506565b60005b8481101561289957600086868381811061280b5761280b613f9d565b905060200281019061281d9190614036565b905011801561286857506005546801000000000000000090046001604060020a031686868381811061285157612851613f9d565b90506020028101906128639190614036565b905011155b6128875760405160e560020a62461bcd0281526004016105069061407c565b80612891816140d9565b9150506127ef565b50600089815260036020526040812080546001604060020a038b169081106128c3576128c3613f9d565b6000918252602090912060039182020191508154608060020a900460ff1660048111156128f2576128f2613fb6565b146129425760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061297057612970613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d858181106129a5576129a5613f9d565b90506020020160208101906129ba9190613de2565b600160a060020a0316815260208082019290925260409081016000908120338252909252902060030180546129ee906140f4565b905011612a405760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110612a5857612a58613f9d565b9050602002016020810190612a6d9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206002018054612aa1906140f4565b159050612ac35760405160e560020a62461bcd02815260040161050690614132565b888882818110612ad557612ad5613f9d565b9050602002810190612ae79190614036565b8360010160008e8e86818110612aff57612aff613f9d565b9050602002016020810190612b149190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020612b49926002909101916136ec565b5060008051602061471d8339815191528d8d8d8d85818110612b6d57612b6d613f9d565b9050602002016020810190612b829190613de2565b338d8d87818110612b9557612b95613f9d565b9050602002810190612ba79190614036565b604051612bb9969594939291906145b7565b60405180910390a180612bcb816140d9565b915050612983565b600154600160a060020a03163314612c005760405160e560020a62461bcd028152600401610506906144ac565b600580546001604060020a0390921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055565b6000848152600360205260409020805460609186918691906001108015612c67575080546001604060020a038316105b612c865760405160e560020a62461bcd02815260040161050690613f66565b6000856001604060020a03811115612ca057612ca06142cf565b604051908082528060200260200182016040528015612ce557816020015b6040805180820190915260608082526020820152815260200190600190039081612cbe5790505b50905060005b86811015612ed55760008a815260036020526040902080546001604060020a038b16908110612d1c57612d1c613f9d565b90600052602060002090600302016001016000898984818110612d4157612d41613f9d565b9050602002016020810190612d569190613de2565b600160a060020a0316600160a060020a03168152602001908152602001600020604051806040016040529081600082018054612d91906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612dbd906140f4565b8015612e0a5780601f10612ddf57610100808354040283529160200191612e0a565b820191906000526020600020905b815481529060010190602001808311612ded57829003601f168201915b50505050508152602001600182018054612e23906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612e4f906140f4565b8015612e9c5780601f10612e7157610100808354040283529160200191612e9c565b820191906000526020600020905b815481529060010190602001808311612e7f57829003601f168201915b505050505081525050828281518110612eb757612eb7613f9d565b60200260200101819052508080612ecd906140d9565b915050612ceb565b5098975050505050505050565b6000838152600360205260409020805460609185918491906001108015612f12575080546001604060020a038316105b612f315760405160e560020a62461bcd02815260040161050690613f66565b60008781526004602052604090208054889187916001604060020a03831610612f6f5760405160e560020a62461bcd02815260040161050690614298565b60008a815260046020526040902080546001604060020a038a161115612faa5760405160e560020a62461bcd02815260040161050690614298565b6000818a6001604060020a031681548110612fc757612fc7613f9d565b906000526020600020906002020190508060000160008c600160a060020a0316600160a060020a031681526020019081526020016000208054613009906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054613035906140f4565b80156130825780601f1061305757610100808354040283529160200191613082565b820191906000526020600020905b81548152906001019060200180831161306557829003601f168201915b5050505050985050505050505050509392505050565b600086815260036020526040902080548791879160011080156130c4575080546001604060020a038316105b6130e35760405160e560020a62461bcd02815260040161050690613f66565b85841461315b5760405160e560020a62461bcd02815260206004820152603c60248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f207365637265744b6579436f6d6d69746d656e7473206c656e677468000000006064820152608401610506565b60005b8481101561320857600086868381811061317a5761317a613f9d565b905060200281019061318c9190614036565b90501180156131d757506005546801000000000000000090046001604060020a03168686838181106131c0576131c0613f9d565b90506020028101906131d29190614036565b905011155b6131f65760405160e560020a62461bcd0281526004016105069061407c565b80613200816140d9565b91505061315e565b50600089815260036020526040812080546001604060020a038b1690811061323257613232613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561326357613263613fb6565b146132b35760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d169081106132e1576132e1613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061332057613320613f9d565b90506020020160208101906133359190613de2565b600160a060020a0316600160a060020a031681526020019081526020016000206003018054613363906140f4565b1590506133855760405160e560020a62461bcd028152600401610506906144e3565b88888281811061339757613397613f9d565b90506020028101906133a99190614036565b3360009081526001850160205260408120908e8e868181106133cd576133cd613f9d565b90506020020160208101906133e29190613de2565b600160a060020a03168152602081019190915260400160002061340a926003909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061342f5761342f613f9d565b90506020020160208101906134449190613de2565b8d8d8781811061345657613456613f9d565b90506020028101906134689190614036565b60405161347a9695949392919061462e565b60405180910390a18061348c816140d9565b9150506132f4565b600084815260036020526040902080548591859160011080156134c0575080546001604060020a038316105b6134df5760405160e560020a62461bcd02815260040161050690613f66565b83158015906134f957506005546001604060020a03168411155b6135185760405160e560020a62461bcd0281526004016105069061407c565b600087815260036020526040812080546001604060020a03891690811061354157613541613f9d565b60009182526020909120600390910201905060028154608060020a900460ff16600481111561357257613572613fb6565b146135c25760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164696e67207068617365000000000000000000006044820152606401610506565b6000888152600460205260408120805490919082906001604060020a038b169081106135f0576135f0613f9d565b60009182526020808320338452600290920290910190819052604090912080549192509061361d906140f4565b1590506136955760405160e560020a62461bcd02815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201527f756c7469706c652074696d6573000000000000000000000000000000000000006064820152608401610506565b3360009081526020829052604090206136af9089896136ec565b5060008051602061471d8339815191528a8a3360008c8c6040516136d8969594939291906146a5565b60405180910390a150505050505050505050565b8280546136f8906140f4565b90600052602060002090601f01602090048101928261371a5760008555613760565b82601f106137335782800160ff19823516178555613760565b82800160010185558215613760579182015b82811115613760578235825591602001919060010190613745565b5061376c9291506137e4565b5090565b82805461377c906140f4565b90600052602060002090601f01602090048101928261379e5760008555613760565b82601f106137b757805160ff1916838001178555613760565b82800160010185558215613760579182015b828111156137605782518255916020019190600101906137c9565b5b8082111561376c57600081556001016137e5565b80356001604060020a038116811461381057600080fd5b919050565b6000806040838503121561382857600080fd5b82359150613838602084016137f9565b90509250929050565b803563ffffffff8116811461381057600080fd5b6000806000806080858703121561386b57600080fd5b8435935061387b602086016137f9565b925061388960408601613841565b915061389760608601613841565b905092959194509250565b60008083601f8401126138b457600080fd5b5081356001604060020a038111156138cb57600080fd5b60208301915083602080830285010111156138e557600080fd5b9250929050565b6000806000806000806080878903121561390557600080fd5b86359550613915602088016137f9565b945060408701356001604060020a038082111561393157600080fd5b61393d8a838b016138a2565b9096509450606089013591508082111561395657600080fd5b5061396389828a016138a2565b979a9699509497509295939492505050565b6000806000806060858703121561398b57600080fd5b8435935061399b602086016137f9565b925060408501356001604060020a038111156139b657600080fd5b6139c2878288016138a2565b95989497509550505050565b6000602080835260c083016001604060020a03855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b80831015613a5e578351600160a060020a03168252928401926001929092019190840190613a35565b509695505050505050565b600060208284031215613a7b57600080fd5b5035919050565b60005b83811015613a9d578181015183820152602001613a85565b83811115613aac576000848401525b50505050565b60008151808452613aca816020860160208601613a82565b601f01601f19169290920160200192915050565b60208152600160a060020a0382511660208201526000602083015160c06040840152613b0d60e0840182613ab2565b90506040840151601f1980858403016060860152613b2b8383613ab2565b92506060860151608086015260808601519150808584030160a086015250613b538282613ab2565b9150506001604060020a0360a08501511660c08401528091505092915050565b8035600160a060020a038116811461381057600080fd5b600080600080600060808688031215613ba257600080fd5b85359450613bb2602087016137f9565b935060408601356001604060020a03811115613bcd57600080fd5b613bd9888289016138a2565b9094509250613bec905060608701613b73565b90509295509295909350565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357603f19898403018552815160808151818652613c4282870182613ab2565b915050888201518582038a870152613c5a8282613ab2565b9150508782015185820389870152613c728282613ab2565b91505060608083015192508582038187015250613c8f8183613ab2565b968901969450505090860190600101613c1c565b509098975050505050505050565b60008083601f840112613cc357600080fd5b5081356001604060020a03811115613cda57600080fd5b6020830191508360208285010111156138e557600080fd5b60008060008060008060808789031215613d0b57600080fd5b86359550613d1b602088016137f9565b945060408701356001604060020a0380821115613d3757600080fd5b613d438a838b01613cb1565b90965094506060890135915080821115613d5c57600080fd5b5061396389828a01613cb1565b600080600080600060608688031215613d8157600080fd5b85356001604060020a0380821115613d9857600080fd5b613da489838a01613cb1565b9097509550602088013594506040880135915080821115613dc457600080fd5b50613dd188828901613cb1565b969995985093965092949392505050565b600060208284031215613df457600080fd5b613dfd82613b73565b9392505050565b600060208284031215613e1657600080fd5b613dfd826137f9565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357888303603f1901855281518051878552613e6788860182613ab2565b91890151858303868b0152919050613e7f8183613ab2565b968901969450505090860190600101613e43565b600080600060608486031215613ea857600080fd5b83359250613eb860208501613b73565b9150613ec6604085016137f9565b90509250925092565b602081526000613dfd6020830184613ab2565b60008060008060608587031215613ef857600080fd5b84359350613f08602086016137f9565b925060408501356001604060020a03811115613f2357600080fd5b6139c287828801613cb1565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b60e060020a634e487b7102600052603260045260246000fd5b60e060020a634e487b7102600052602160045260246000fd5b6020808252600f908201527f5461736b206e6f74206578697374730000000000000000000000000000000000604082015260600190565b60e060020a634e487b7102600052601160045260246000fd5b60008282101561403157614031614006565b500390565b6000808335601e1984360301811261404d57600080fd5b8301803591506001604060020a0382111561406757600080fd5b6020019150368190038213156138e557600080fd5b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201527f6f7220697420697320656d707479000000000000000000000000000000000000606082015260800190565b60006000198214156140ed576140ed614006565b5060010190565b60028104600182168061410857607f821691505b6020821081141561412c5760e060020a634e487b7102600052602260045260246000fd5b50919050565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6560408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600460c08301527f534545440000000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b9998505050505050505050565b60006060820186835260206001604060020a03871681850152606060408501528185835260808501905086925060005b86811015612ed557600160a060020a0361428585613b73565b168252928201929082019060010161426c565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b60e060020a634e487b7102600052604160045260246000fd5b878152600160a060020a038716602082015260a06040820152600061431160a08301878961418f565b856060840152828103608084015261432a81858761418f565b9a9950505050505050505050565b600082601f83011261434957600080fd5b81516001604060020a0380821115614363576143636142cf565b604051601f8301601f19908116603f0116810190828211818310171561438b5761438b6142cf565b816040528381528660208588010111156143a457600080fd5b6143b5846020830160208901613a82565b9695505050505050565b6000602082840312156143d157600080fd5b81516001604060020a03808211156143e857600080fd5b90830190604082860312156143fc57600080fd5b604051604081018181108382111715614417576144176142cf565b60405282518281111561442957600080fd5b61443587828601614338565b82525060208301518281111561444a57600080fd5b61445687828601614338565b60208301525095945050505050565b87815260a06020820152600061447f60a08301888a61418f565b82810360408401526144918188613ab2565b9050856060840152828103608084015261432a81858761418f565b60208082526013908201527f43616c6c6572206973206e6f74206f776e657200000000000000000000000000604082015260600190565b60208082526026908201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c6560408201527f2074696d65730000000000000000000000000000000000000000000000000000606082015260800190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600860c08301527f53454544434d4d5400000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f534b4d41534b000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600a60c08301527f534b4d41534b434d4d540000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f574549474854000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f56feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa2646970667358221220090bb9e40e9f0d8db0e872ae690750129888dc252b68918d4c1c9c5034575a9f64736f6c634300080a0033", "immutableReferences": {}, "generatedSources": [ { @@ -1117,7 +1133,7 @@ } ] }, - "name": "abi_decode_tuple_t_contract$_IdentityContract_$1929_fromMemory", + "name": "abi_decode_tuple_t_contract$_IdentityContract_$2193_fromMemory", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -1145,7 +1161,7 @@ } ] }, - "contents": "{\n { }\n function abi_decode_tuple_t_contract$_IdentityContract_$1929_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(exp(2, 160), 1)))) { revert(0, 0) }\n value0 := value\n }\n}", + "contents": "{\n { }\n function abi_decode_tuple_t_contract$_IdentityContract_$2193_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(exp(2, 160), 1)))) { revert(0, 0) }\n value0 := value\n }\n}", "id": 2, "language": "Yul", "name": "#utility.yul" @@ -1155,7 +1171,7 @@ { "ast": { "nodeType": "YulBlock", - "src": "0:29706:2", + "src": "0:34081:2", "statements": [ { "nodeType": "YulBlock", @@ -1931,122 +1947,12 @@ { "body": { "nodeType": "YulBlock", - "src": "1143:125:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1153:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1165:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1176:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1161:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1161:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1153:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1195:9:2" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1210:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1218:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1206:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1206:55:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1188:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1188:74:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1188:74:2" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IdentityContract_$1929__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1112:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1123:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1134:4:2", - "type": "" - } - ], - "src": "1017:251:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1411:618:2", + "src": "1101:286:2", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "1457:16:2", + "src": "1150:16:2", "statements": [ { "expression": { @@ -2054,14 +1960,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1466:1:2", + "src": "1159:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1469:1:2", + "src": "1162:1:2", "type": "", "value": "0" } @@ -2069,13 +1975,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1459:6:2" + "src": "1152:6:2" }, "nodeType": "YulFunctionCall", - "src": "1459:12:2" + "src": "1152:12:2" }, "nodeType": "YulExpressionStatement", - "src": "1459:12:2" + "src": "1152:12:2" } ] }, @@ -2084,184 +1990,85 @@ { "arguments": [ { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1432:7:2" + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1129:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1137:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1125:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1125:17:2" }, { - "name": "headStart", + "name": "end", "nodeType": "YulIdentifier", - "src": "1441:9:2" + "src": "1144:3:2" } ], "functionName": { - "name": "sub", + "name": "slt", "nodeType": "YulIdentifier", - "src": "1428:3:2" + "src": "1121:3:2" }, "nodeType": "YulFunctionCall", - "src": "1428:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1453:2:2", - "type": "", - "value": "96" + "src": "1121:27:2" } ], "functionName": { - "name": "slt", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "1424:3:2" + "src": "1114:6:2" }, "nodeType": "YulFunctionCall", - "src": "1424:32:2" + "src": "1114:35:2" }, "nodeType": "YulIf", - "src": "1421:52:2" + "src": "1111:55:2" }, { "nodeType": "YulAssignment", - "src": "1482:33:2", + "src": "1175:30:2", "value": { "arguments": [ { - "name": "headStart", + "name": "offset", "nodeType": "YulIdentifier", - "src": "1505:9:2" + "src": "1198:6:2" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "1492:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1492:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1482:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1524:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1556:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1567:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1552:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1552:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "1534:17:2" + "src": "1185:12:2" }, "nodeType": "YulFunctionCall", - "src": "1534:37:2" + "src": "1185:20:2" }, "variableNames": [ { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1524:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1580:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1611:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1622:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1607:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1607:18:2" - } - ], - "functionName": { - "name": "calldataload", + "name": "length", "nodeType": "YulIdentifier", - "src": "1594:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1594:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1584:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1635:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1645:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1639:2:2", - "type": "" + "src": "1175:6:2" } ] }, { "body": { "nodeType": "YulBlock", - "src": "1690:16:2", + "src": "1248:16:2", "statements": [ { "expression": { @@ -2269,14 +2076,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1699:1:2", + "src": "1257:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1702:1:2", + "src": "1260:1:2", "type": "", "value": "0" } @@ -2284,77 +2091,80 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1692:6:2" + "src": "1250:6:2" }, "nodeType": "YulFunctionCall", - "src": "1692:12:2" + "src": "1250:12:2" }, "nodeType": "YulExpressionStatement", - "src": "1692:12:2" + "src": "1250:12:2" } ] }, "condition": { "arguments": [ { - "name": "offset", + "name": "length", "nodeType": "YulIdentifier", - "src": "1678:6:2" + "src": "1220:6:2" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1686:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "1228:18:2", + "type": "", + "value": "0xffffffffffffffff" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1675:2:2" + "src": "1217:2:2" }, "nodeType": "YulFunctionCall", - "src": "1675:14:2" + "src": "1217:30:2" }, "nodeType": "YulIf", - "src": "1672:34:2" + "src": "1214:50:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "1715:32:2", + "nodeType": "YulAssignment", + "src": "1273:29:2", "value": { "arguments": [ { - "name": "headStart", + "name": "offset", "nodeType": "YulIdentifier", - "src": "1729:9:2" + "src": "1289:6:2" }, { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1740:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "1297:4:2", + "type": "", + "value": "0x20" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1725:3:2" + "src": "1285:3:2" }, "nodeType": "YulFunctionCall", - "src": "1725:22:2" + "src": "1285:17:2" }, - "variables": [ + "variableNames": [ { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1719:2:2", - "type": "" + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "1273:8:2" } ] }, { "body": { "nodeType": "YulBlock", - "src": "1795:16:2", + "src": "1365:16:2", "statements": [ { "expression": { @@ -2362,14 +2172,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1804:1:2", + "src": "1374:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1807:1:2", + "src": "1377:1:2", "type": "", "value": "0" } @@ -2377,13 +2187,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1797:6:2" + "src": "1367:6:2" }, "nodeType": "YulFunctionCall", - "src": "1797:12:2" + "src": "1367:12:2" }, "nodeType": "YulExpressionStatement", - "src": "1797:12:2" + "src": "1367:12:2" } ] }, @@ -2394,76 +2204,325 @@ { "arguments": [ { - "name": "_2", + "name": "offset", "nodeType": "YulIdentifier", - "src": "1774:2:2" + "src": "1325:6:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1778:4:2", - "type": "", - "value": "0x1f" + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1337:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1345:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "1333:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1333:17:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1770:3:2" + "src": "1321:3:2" }, "nodeType": "YulFunctionCall", - "src": "1770:13:2" + "src": "1321:30:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1353:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1317:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1317:41:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1360:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1314:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1314:50:2" + }, + "nodeType": "YulIf", + "src": "1311:70:2" + } + ] + }, + "name": "abi_decode_array_address_dyn_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1064:6:2", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1072:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "1080:8:2", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1090:6:2", + "type": "" + } + ], + "src": "1017:370:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1593:724:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1640:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1649:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1652:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1642:6:2" }, + "nodeType": "YulFunctionCall", + "src": "1642:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1642:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "1785:7:2" + "src": "1614:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1623:9:2" } ], "functionName": { - "name": "slt", + "name": "sub", "nodeType": "YulIdentifier", - "src": "1766:3:2" + "src": "1610:3:2" }, "nodeType": "YulFunctionCall", - "src": "1766:27:2" + "src": "1610:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1635:3:2", + "type": "", + "value": "128" } ], "functionName": { - "name": "iszero", + "name": "slt", "nodeType": "YulIdentifier", - "src": "1759:6:2" + "src": "1606:3:2" }, "nodeType": "YulFunctionCall", - "src": "1759:35:2" + "src": "1606:33:2" }, "nodeType": "YulIf", - "src": "1756:55:2" + "src": "1603:53:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "1820:30:2", + "nodeType": "YulAssignment", + "src": "1665:33:2", "value": { "arguments": [ { - "name": "_2", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "1847:2:2" + "src": "1688:9:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1675:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "1675:23:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1665:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1707:47:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1739:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1750:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1735:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1735:18:2" + } + ], + "functionName": { + "name": "abi_decode_uint64", + "nodeType": "YulIdentifier", + "src": "1717:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "1717:37:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "1707:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1763:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1794:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1805:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1790:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1790:18:2" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "1834:12:2" + "src": "1777:12:2" }, "nodeType": "YulFunctionCall", - "src": "1834:16:2" + "src": "1777:32:2" }, "variables": [ { - "name": "length", + "name": "offset", + "nodeType": "YulTypedName", + "src": "1767:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1818:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1828:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", "nodeType": "YulTypedName", - "src": "1824:6:2", + "src": "1822:2:2", "type": "" } ] @@ -2471,7 +2530,7 @@ { "body": { "nodeType": "YulBlock", - "src": "1877:16:2", + "src": "1873:16:2", "statements": [ { "expression": { @@ -2479,14 +2538,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1886:1:2", + "src": "1882:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1889:1:2", + "src": "1885:1:2", "type": "", "value": "0" } @@ -2494,44 +2553,177 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1879:6:2" + "src": "1875:6:2" }, "nodeType": "YulFunctionCall", - "src": "1879:12:2" + "src": "1875:12:2" }, "nodeType": "YulExpressionStatement", - "src": "1879:12:2" + "src": "1875:12:2" } ] }, "condition": { "arguments": [ { - "name": "length", + "name": "offset", "nodeType": "YulIdentifier", - "src": "1865:6:2" + "src": "1861:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "1873:2:2" + "src": "1869:2:2" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1862:2:2" + "src": "1858:2:2" }, "nodeType": "YulFunctionCall", - "src": "1862:14:2" + "src": "1858:14:2" }, "nodeType": "YulIf", - "src": "1859:34:2" + "src": "1855:34:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1898:96:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1966:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1977:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1962:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1962:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1986:7:2" + } + ], + "functionName": { + "name": "abi_decode_array_address_dyn_calldata", + "nodeType": "YulIdentifier", + "src": "1924:37:2" + }, + "nodeType": "YulFunctionCall", + "src": "1924:70:2" + }, + "variables": [ + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "1902:8:2", + "type": "" + }, + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "1912:8:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2003:18:2", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "2013:8:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "2003:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2030:18:2", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "2040:8:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "2030:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2057:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2090:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2101:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2086:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2086:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2073:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "2073:32:2" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "2061:8:2", + "type": "" + } + ] }, { "body": { "nodeType": "YulBlock", - "src": "1952:16:2", + "src": "2134:16:2", "statements": [ { "expression": { @@ -2539,14 +2731,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1961:1:2", + "src": "2143:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1964:1:2", + "src": "2146:1:2", "type": "", "value": "0" } @@ -2554,157 +2746,142 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1954:6:2" + "src": "2136:6:2" }, "nodeType": "YulFunctionCall", - "src": "1954:12:2" + "src": "2136:12:2" }, "nodeType": "YulExpressionStatement", - "src": "1954:12:2" + "src": "2136:12:2" } ] }, "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "2120:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2130:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2117:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2117:16:2" + }, + "nodeType": "YulIf", + "src": "2114:36:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2159:98:2", + "value": { "arguments": [ { "arguments": [ { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1916:2:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1924:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1932:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "1920:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1920:15:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1912:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1912:24:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2227:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1938:2:2", - "type": "", - "value": "32" + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "2238:8:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1908:3:2" + "src": "2223:3:2" }, "nodeType": "YulFunctionCall", - "src": "1908:33:2" + "src": "2223:24:2" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "1943:7:2" + "src": "2249:7:2" } ], "functionName": { - "name": "gt", + "name": "abi_decode_array_address_dyn_calldata", "nodeType": "YulIdentifier", - "src": "1905:2:2" + "src": "2185:37:2" }, "nodeType": "YulFunctionCall", - "src": "1905:46:2" + "src": "2185:72:2" }, - "nodeType": "YulIf", - "src": "1902:66:2" + "variables": [ + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "2163:8:2", + "type": "" + }, + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "2173:8:2", + "type": "" + } + ] }, { "nodeType": "YulAssignment", - "src": "1977:21:2", + "src": "2266:18:2", "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1991:2:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1995:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1987:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1987:11:2" + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "2276:8:2" }, "variableNames": [ { - "name": "value2", + "name": "value4", "nodeType": "YulIdentifier", - "src": "1977:6:2" + "src": "2266:6:2" } ] }, { "nodeType": "YulAssignment", - "src": "2007:16:2", + "src": "2293:18:2", "value": { - "name": "length", + "name": "value5_1", "nodeType": "YulIdentifier", - "src": "2017:6:2" + "src": "2303:8:2" }, "variableNames": [ { - "name": "value3", + "name": "value5", "nodeType": "YulIdentifier", - "src": "2007:6:2" + "src": "2293:6:2" } ] } ] }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptr", + "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "1353:9:2", + "src": "1519:9:2", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "1364:7:2", + "src": "1530:7:2", "type": "" } ], @@ -2712,110 +2889,628 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "1376:6:2", + "src": "1542:6:2", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "1384:6:2", + "src": "1550:6:2", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "1392:6:2", + "src": "1558:6:2", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "1400:6:2", + "src": "1566:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "1574:6:2", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "1582:6:2", "type": "" } ], - "src": "1273:756:2" + "src": "1392:925:2" }, { "body": { "nodeType": "YulBlock", - "src": "2211:997:2", + "src": "2448:125:2", "statements": [ { - "nodeType": "YulVariableDeclaration", - "src": "2221:12:2", + "nodeType": "YulAssignment", + "src": "2458:26:2", "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2231:2:2", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2225:2:2", - "type": "" - } - ] - }, - { - "expression": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2249:9:2" + "src": "2470:9:2" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2260:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "2481:2:2", + "type": "", + "value": "32" } ], "functionName": { - "name": "mstore", + "name": "add", "nodeType": "YulIdentifier", - "src": "2242:6:2" + "src": "2466:3:2" }, "nodeType": "YulFunctionCall", - "src": "2242:21:2" + "src": "2466:18:2" }, - "nodeType": "YulExpressionStatement", - "src": "2242:21:2" + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2458:4:2" + } + ] }, { - "nodeType": "YulVariableDeclaration", - "src": "2272:33:2", - "value": { + "expression": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2290:9:2" + "src": "2500:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2301:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2286:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2286:19:2" + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2515:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2523:42:2", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2511:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2511:55:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2493:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2493:74:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2493:74:2" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IdentityContract_$2193__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2417:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2428:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "2439:4:2", + "type": "" + } + ], + "src": "2322:251:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2716:439:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2762:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2771:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2774:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2764:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2764:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2764:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2737:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2746:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2733:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2733:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2758:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2729:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2729:32:2" + }, + "nodeType": "YulIf", + "src": "2726:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "2787:33:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2810:9:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2797:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "2797:23:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2787:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2829:47:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2861:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2872:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2857:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2857:18:2" + } + ], + "functionName": { + "name": "abi_decode_uint64", + "nodeType": "YulIdentifier", + "src": "2839:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "2839:37:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "2829:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2885:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2916:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2927:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2912:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2912:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2899:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "2899:32:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2889:6:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2974:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2983:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2986:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2976:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2976:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2976:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2946:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2954:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2943:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2943:30:2" + }, + "nodeType": "YulIf", + "src": "2940:50:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2999:96:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3067:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3078:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3063:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3063:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3087:7:2" + } + ], + "functionName": { + "name": "abi_decode_array_address_dyn_calldata", + "nodeType": "YulIdentifier", + "src": "3025:37:2" + }, + "nodeType": "YulFunctionCall", + "src": "3025:70:2" + }, + "variables": [ + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "3003:8:2", + "type": "" + }, + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "3013:8:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3104:18:2", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "3114:8:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "3104:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3131:18:2", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "3141:8:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "3131:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2658:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2669:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2681:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "2689:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "2697:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "2705:6:2", + "type": "" + } + ], + "src": "2578:577:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3337:997:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3347:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3357:2:2", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3351:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3375:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3386:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3368:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3368:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3368:21:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3398:33:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3416:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3427:3:2", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3412:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3412:19:2" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "2276:6:2", + "src": "3402:6:2", "type": "" } ] @@ -2828,21 +3523,21 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2325:9:2" + "src": "3451:9:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "2336:2:2" + "src": "3462:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2321:3:2" + "src": "3447:3:2" }, "nodeType": "YulFunctionCall", - "src": "2321:18:2" + "src": "3447:18:2" }, { "arguments": [ @@ -2851,21 +3546,21 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2351:6:2" + "src": "3477:6:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2345:5:2" + "src": "3471:5:2" }, "nodeType": "YulFunctionCall", - "src": "2345:13:2" + "src": "3471:13:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2360:18:2", + "src": "3486:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -2873,26 +3568,26 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "2341:3:2" + "src": "3467:3:2" }, "nodeType": "YulFunctionCall", - "src": "2341:38:2" + "src": "3467:38:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2314:6:2" + "src": "3440:6:2" }, "nodeType": "YulFunctionCall", - "src": "2314:66:2" + "src": "3440:66:2" }, "nodeType": "YulExpressionStatement", - "src": "2314:66:2" + "src": "3440:66:2" }, { "nodeType": "YulVariableDeclaration", - "src": "2389:42:2", + "src": "3515:42:2", "value": { "arguments": [ { @@ -2900,47 +3595,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2419:6:2" + "src": "3545:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "2427:2:2" + "src": "3553:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2415:3:2" + "src": "3541:3:2" }, "nodeType": "YulFunctionCall", - "src": "2415:15:2" + "src": "3541:15:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2409:5:2" + "src": "3535:5:2" }, "nodeType": "YulFunctionCall", - "src": "2409:22:2" + "src": "3535:22:2" }, "variables": [ { "name": "memberValue0", "nodeType": "YulTypedName", - "src": "2393:12:2", + "src": "3519:12:2", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "2440:20:2", + "src": "3566:20:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "2450:10:2", + "src": "3576:10:2", "type": "", "value": "0xffffffff" }, @@ -2948,7 +3643,7 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "2444:2:2", + "src": "3570:2:2", "type": "" } ] @@ -2961,12 +3656,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2480:9:2" + "src": "3606:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2491:2:2", + "src": "3617:2:2", "type": "", "value": "64" } @@ -2974,43 +3669,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2476:3:2" + "src": "3602:3:2" }, "nodeType": "YulFunctionCall", - "src": "2476:18:2" + "src": "3602:18:2" }, { "arguments": [ { "name": "memberValue0", "nodeType": "YulIdentifier", - "src": "2500:12:2" + "src": "3626:12:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "2514:2:2" + "src": "3640:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "2496:3:2" + "src": "3622:3:2" }, "nodeType": "YulFunctionCall", - "src": "2496:21:2" + "src": "3622:21:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2469:6:2" + "src": "3595:6:2" }, "nodeType": "YulFunctionCall", - "src": "2469:49:2" + "src": "3595:49:2" }, "nodeType": "YulExpressionStatement", - "src": "2469:49:2" + "src": "3595:49:2" }, { "expression": { @@ -3020,12 +3715,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2538:9:2" + "src": "3664:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2549:2:2", + "src": "3675:2:2", "type": "", "value": "96" } @@ -3033,10 +3728,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2534:3:2" + "src": "3660:3:2" }, "nodeType": "YulFunctionCall", - "src": "2534:18:2" + "src": "3660:18:2" }, { "arguments": [ @@ -3047,12 +3742,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2568:6:2" + "src": "3694:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2576:2:2", + "src": "3702:2:2", "type": "", "value": "64" } @@ -3060,45 +3755,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2564:3:2" + "src": "3690:3:2" }, "nodeType": "YulFunctionCall", - "src": "2564:15:2" + "src": "3690:15:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2558:5:2" + "src": "3684:5:2" }, "nodeType": "YulFunctionCall", - "src": "2558:22:2" + "src": "3684:22:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "2582:2:2" + "src": "3708:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "2554:3:2" + "src": "3680:3:2" }, "nodeType": "YulFunctionCall", - "src": "2554:31:2" + "src": "3680:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2527:6:2" + "src": "3653:6:2" }, "nodeType": "YulFunctionCall", - "src": "2527:59:2" + "src": "3653:59:2" }, "nodeType": "YulExpressionStatement", - "src": "2527:59:2" + "src": "3653:59:2" }, { "expression": { @@ -3108,12 +3803,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2606:9:2" + "src": "3732:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2617:3:2", + "src": "3743:3:2", "type": "", "value": "128" } @@ -3121,10 +3816,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2602:3:2" + "src": "3728:3:2" }, "nodeType": "YulFunctionCall", - "src": "2602:19:2" + "src": "3728:19:2" }, { "arguments": [ @@ -3135,12 +3830,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2637:6:2" + "src": "3763:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2645:2:2", + "src": "3771:2:2", "type": "", "value": "96" } @@ -3148,24 +3843,24 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2633:3:2" + "src": "3759:3:2" }, "nodeType": "YulFunctionCall", - "src": "2633:15:2" + "src": "3759:15:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2627:5:2" + "src": "3753:5:2" }, "nodeType": "YulFunctionCall", - "src": "2627:22:2" + "src": "3753:22:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2651:4:2", + "src": "3777:4:2", "type": "", "value": "0xff" } @@ -3173,26 +3868,26 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "2623:3:2" + "src": "3749:3:2" }, "nodeType": "YulFunctionCall", - "src": "2623:33:2" + "src": "3749:33:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2595:6:2" + "src": "3721:6:2" }, "nodeType": "YulFunctionCall", - "src": "2595:62:2" + "src": "3721:62:2" }, "nodeType": "YulExpressionStatement", - "src": "2595:62:2" + "src": "3721:62:2" }, { "nodeType": "YulVariableDeclaration", - "src": "2666:45:2", + "src": "3792:45:2", "value": { "arguments": [ { @@ -3200,12 +3895,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2698:6:2" + "src": "3824:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2706:3:2", + "src": "3832:3:2", "type": "", "value": "128" } @@ -3213,25 +3908,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2694:3:2" + "src": "3820:3:2" }, "nodeType": "YulFunctionCall", - "src": "2694:16:2" + "src": "3820:16:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2688:5:2" + "src": "3814:5:2" }, "nodeType": "YulFunctionCall", - "src": "2688:23:2" + "src": "3814:23:2" }, "variables": [ { "name": "memberValue0_1", "nodeType": "YulTypedName", - "src": "2670:14:2", + "src": "3796:14:2", "type": "" } ] @@ -3244,12 +3939,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2731:9:2" + "src": "3857:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2742:4:2", + "src": "3868:4:2", "type": "", "value": "0xa0" } @@ -3257,15 +3952,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2727:3:2" + "src": "3853:3:2" }, "nodeType": "YulFunctionCall", - "src": "2727:20:2" + "src": "3853:20:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2749:4:2", + "src": "3875:4:2", "type": "", "value": "0xa0" } @@ -3273,55 +3968,55 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2720:6:2" + "src": "3846:6:2" }, "nodeType": "YulFunctionCall", - "src": "2720:34:2" + "src": "3846:34:2" }, "nodeType": "YulExpressionStatement", - "src": "2720:34:2" + "src": "3846:34:2" }, { "nodeType": "YulVariableDeclaration", - "src": "2763:17:2", + "src": "3889:17:2", "value": { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "2774:6:2" + "src": "3900:6:2" }, "variables": [ { "name": "pos", "nodeType": "YulTypedName", - "src": "2767:3:2", + "src": "3893:3:2", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "2789:35:2", + "src": "3915:35:2", "value": { "arguments": [ { "name": "memberValue0_1", "nodeType": "YulIdentifier", - "src": "2809:14:2" + "src": "3935:14:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2803:5:2" + "src": "3929:5:2" }, "nodeType": "YulFunctionCall", - "src": "2803:21:2" + "src": "3929:21:2" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "2793:6:2", + "src": "3919:6:2", "type": "" } ] @@ -3332,39 +4027,39 @@ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "2840:6:2" + "src": "3966:6:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2848:6:2" + "src": "3974:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2833:6:2" + "src": "3959:6:2" }, "nodeType": "YulFunctionCall", - "src": "2833:22:2" + "src": "3959:22:2" }, "nodeType": "YulExpressionStatement", - "src": "2833:22:2" + "src": "3959:22:2" }, { "nodeType": "YulAssignment", - "src": "2864:26:2", + "src": "3990:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2875:9:2" + "src": "4001:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2886:3:2", + "src": "4012:3:2", "type": "", "value": "224" } @@ -3372,59 +4067,59 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2871:3:2" + "src": "3997:3:2" }, "nodeType": "YulFunctionCall", - "src": "2871:19:2" + "src": "3997:19:2" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2864:3:2" + "src": "3990:3:2" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "2899:37:2", + "src": "4025:37:2", "value": { "arguments": [ { "name": "memberValue0_1", "nodeType": "YulIdentifier", - "src": "2917:14:2" + "src": "4043:14:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "2933:2:2" + "src": "4059:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2913:3:2" + "src": "4039:3:2" }, "nodeType": "YulFunctionCall", - "src": "2913:23:2" + "src": "4039:23:2" }, "variables": [ { "name": "srcPtr", "nodeType": "YulTypedName", - "src": "2903:6:2", + "src": "4029:6:2", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "2945:10:2", + "src": "4071:10:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "2954:1:2", + "src": "4080:1:2", "type": "", "value": "0" }, @@ -3432,7 +4127,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "2949:1:2", + "src": "4075:1:2", "type": "" } ] @@ -3440,7 +4135,7 @@ { "body": { "nodeType": "YulBlock", - "src": "3013:169:2", + "src": "4139:169:2", "statements": [ { "expression": { @@ -3448,7 +4143,7 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3034:3:2" + "src": "4160:3:2" }, { "arguments": [ @@ -3457,21 +4152,21 @@ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "3049:6:2" + "src": "4175:6:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3043:5:2" + "src": "4169:5:2" }, "nodeType": "YulFunctionCall", - "src": "3043:13:2" + "src": "4169:13:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3058:42:2", + "src": "4184:42:2", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -3479,84 +4174,84 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "3039:3:2" + "src": "4165:3:2" }, "nodeType": "YulFunctionCall", - "src": "3039:62:2" + "src": "4165:62:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "3027:6:2" + "src": "4153:6:2" }, "nodeType": "YulFunctionCall", - "src": "3027:75:2" + "src": "4153:75:2" }, "nodeType": "YulExpressionStatement", - "src": "3027:75:2" + "src": "4153:75:2" }, { "nodeType": "YulAssignment", - "src": "3115:19:2", + "src": "4241:19:2", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3126:3:2" + "src": "4252:3:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "3131:2:2" + "src": "4257:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3122:3:2" + "src": "4248:3:2" }, "nodeType": "YulFunctionCall", - "src": "3122:12:2" + "src": "4248:12:2" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3115:3:2" + "src": "4241:3:2" } ] }, { "nodeType": "YulAssignment", - "src": "3147:25:2", + "src": "4273:25:2", "value": { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "3161:6:2" + "src": "4287:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "3169:2:2" + "src": "4295:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3157:3:2" + "src": "4283:3:2" }, "nodeType": "YulFunctionCall", - "src": "3157:15:2" + "src": "4283:15:2" }, "variableNames": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "3147:6:2" + "src": "4273:6:2" } ] } @@ -3567,41 +4262,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "2975:1:2" + "src": "4101:1:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2978:6:2" + "src": "4104:6:2" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "2972:2:2" + "src": "4098:2:2" }, "nodeType": "YulFunctionCall", - "src": "2972:13:2" + "src": "4098:13:2" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "2986:18:2", + "src": "4112:18:2", "statements": [ { "nodeType": "YulAssignment", - "src": "2988:14:2", + "src": "4114:14:2", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "2997:1:2" + "src": "4123:1:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3000:1:2", + "src": "4126:1:2", "type": "", "value": "1" } @@ -3609,16 +4304,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2993:3:2" + "src": "4119:3:2" }, "nodeType": "YulFunctionCall", - "src": "2993:9:2" + "src": "4119:9:2" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "2988:1:2" + "src": "4114:1:2" } ] } @@ -3626,42 +4321,42 @@ }, "pre": { "nodeType": "YulBlock", - "src": "2968:3:2", + "src": "4094:3:2", "statements": [] }, - "src": "2964:218:2" + "src": "4090:218:2" }, { "nodeType": "YulAssignment", - "src": "3191:11:2", + "src": "4317:11:2", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "3199:3:2" + "src": "4325:3:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "3191:4:2" + "src": "4317:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr__to_t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__to_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "2180:9:2", + "src": "3306:9:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "2191:6:2", + "src": "3317:6:2", "type": "" } ], @@ -3669,48 +4364,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "2202:4:2", + "src": "3328:4:2", "type": "" } ], - "src": "2034:1174:2" + "src": "3160:1174:2" }, { "body": { "nodeType": "YulBlock", - "src": "3262:147:2", + "src": "4409:110:2", "statements": [ - { - "nodeType": "YulAssignment", - "src": "3272:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3294:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3281:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "3281:20:2" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3272:5:2" - } - ] - }, { "body": { "nodeType": "YulBlock", - "src": "3387:16:2", + "src": "4455:16:2", "statements": [ { "expression": { @@ -3718,14 +4386,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "3396:1:2", + "src": "4464:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3399:1:2", + "src": "4467:1:2", "type": "", "value": "0" } @@ -3733,13 +4401,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "3389:6:2" + "src": "4457:6:2" }, "nodeType": "YulFunctionCall", - "src": "3389:12:2" + "src": "4457:12:2" }, "nodeType": "YulExpressionStatement", - "src": "3389:12:2" + "src": "4457:12:2" } ] }, @@ -3748,336 +4416,85 @@ { "arguments": [ { - "name": "value", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3323:5:2" + "src": "4430:7:2" }, { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3334:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3341:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3330:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3330:54:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4439:9:2" } ], "functionName": { - "name": "eq", + "name": "sub", "nodeType": "YulIdentifier", - "src": "3320:2:2" + "src": "4426:3:2" }, "nodeType": "YulFunctionCall", - "src": "3320:65:2" + "src": "4426:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4451:2:2", + "type": "", + "value": "32" } ], "functionName": { - "name": "iszero", + "name": "slt", "nodeType": "YulIdentifier", - "src": "3313:6:2" + "src": "4422:3:2" }, "nodeType": "YulFunctionCall", - "src": "3313:73:2" + "src": "4422:32:2" }, "nodeType": "YulIf", - "src": "3310:93:2" + "src": "4419:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "4480:33:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4503:9:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4490:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4490:23:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4480:6:2" + } + ] } ] }, - "name": "abi_decode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3241:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3252:5:2", - "type": "" - } - ], - "src": "3213:196:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3534:281:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3581:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3590:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3593:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3583:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3583:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3583:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3555:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3564:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3551:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3551:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3576:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3547:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3547:33:2" - }, - "nodeType": "YulIf", - "src": "3544:53:2" - }, - { - "nodeType": "YulAssignment", - "src": "3606:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3629:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3616:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "3616:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3606:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3648:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3680:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3691:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3676:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3676:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "3658:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "3658:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3648:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3704:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3737:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3748:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3733:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3733:18:2" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "3714:18:2" - }, - "nodeType": "YulFunctionCall", - "src": "3714:38:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3704:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3761:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3794:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3805:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3790:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3790:18:2" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "3771:18:2" - }, - "nodeType": "YulFunctionCall", - "src": "3771:38:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "3761:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_addresst_address", + "name": "abi_decode_tuple_t_bytes32", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "3476:9:2", + "src": "4375:9:2", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "3487:7:2", + "src": "4386:7:2", "type": "" } ], @@ -4085,42 +4502,24 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3499:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3507:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3515:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3523:6:2", + "src": "4398:6:2", "type": "" } ], - "src": "3414:401:2" + "src": "4339:180:2" }, { "body": { "nodeType": "YulBlock", - "src": "3873:205:2", + "src": "4577:205:2", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3883:10:2", + "src": "4587:10:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "3892:1:2", + "src": "4596:1:2", "type": "", "value": "0" }, @@ -4128,7 +4527,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "3887:1:2", + "src": "4591:1:2", "type": "" } ] @@ -4136,7 +4535,7 @@ { "body": { "nodeType": "YulBlock", - "src": "3952:63:2", + "src": "4656:63:2", "statements": [ { "expression": { @@ -4146,21 +4545,21 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "3977:3:2" + "src": "4681:3:2" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "3982:1:2" + "src": "4686:1:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3973:3:2" + "src": "4677:3:2" }, "nodeType": "YulFunctionCall", - "src": "3973:11:2" + "src": "4677:11:2" }, { "arguments": [ @@ -4169,42 +4568,42 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "3996:3:2" + "src": "4700:3:2" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "4001:1:2" + "src": "4705:1:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3992:3:2" + "src": "4696:3:2" }, "nodeType": "YulFunctionCall", - "src": "3992:11:2" + "src": "4696:11:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3986:5:2" + "src": "4690:5:2" }, "nodeType": "YulFunctionCall", - "src": "3986:18:2" + "src": "4690:18:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "3966:6:2" + "src": "4670:6:2" }, "nodeType": "YulFunctionCall", - "src": "3966:39:2" + "src": "4670:39:2" }, "nodeType": "YulExpressionStatement", - "src": "3966:39:2" + "src": "4670:39:2" } ] }, @@ -4213,41 +4612,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "3913:1:2" + "src": "4617:1:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "3916:6:2" + "src": "4620:6:2" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "3910:2:2" + "src": "4614:2:2" }, "nodeType": "YulFunctionCall", - "src": "3910:13:2" + "src": "4614:13:2" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "3924:19:2", + "src": "4628:19:2", "statements": [ { "nodeType": "YulAssignment", - "src": "3926:15:2", + "src": "4630:15:2", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "3935:1:2" + "src": "4639:1:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3938:2:2", + "src": "4642:2:2", "type": "", "value": "32" } @@ -4255,16 +4654,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3931:3:2" + "src": "4635:3:2" }, "nodeType": "YulFunctionCall", - "src": "3931:10:2" + "src": "4635:10:2" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "3926:1:2" + "src": "4630:1:2" } ] } @@ -4272,15 +4671,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "3906:3:2", + "src": "4610:3:2", "statements": [] }, - "src": "3902:113:2" + "src": "4606:113:2" }, { "body": { "nodeType": "YulBlock", - "src": "4041:31:2", + "src": "4745:31:2", "statements": [ { "expression": { @@ -4290,26 +4689,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "4054:3:2" + "src": "4758:3:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "4059:6:2" + "src": "4763:6:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4050:3:2" + "src": "4754:3:2" }, "nodeType": "YulFunctionCall", - "src": "4050:16:2" + "src": "4754:16:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4068:1:2", + "src": "4772:1:2", "type": "", "value": "0" } @@ -4317,13 +4716,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4043:6:2" + "src": "4747:6:2" }, "nodeType": "YulFunctionCall", - "src": "4043:27:2" + "src": "4747:27:2" }, "nodeType": "YulExpressionStatement", - "src": "4043:27:2" + "src": "4747:27:2" } ] }, @@ -4332,24 +4731,24 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "4030:1:2" + "src": "4734:1:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "4033:6:2" + "src": "4737:6:2" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "4027:2:2" + "src": "4731:2:2" }, "nodeType": "YulFunctionCall", - "src": "4027:13:2" + "src": "4731:13:2" }, "nodeType": "YulIf", - "src": "4024:48:2" + "src": "4728:48:2" } ] }, @@ -4359,53 +4758,53 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "3851:3:2", + "src": "4555:3:2", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "3856:3:2", + "src": "4560:3:2", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "3861:6:2", + "src": "4565:6:2", "type": "" } ], - "src": "3820:258:2" + "src": "4524:258:2" }, { "body": { "nodeType": "YulBlock", - "src": "4132:208:2", + "src": "4837:208:2", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "4142:26:2", + "src": "4847:26:2", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4162:5:2" + "src": "4867:5:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "4156:5:2" + "src": "4861:5:2" }, "nodeType": "YulFunctionCall", - "src": "4156:12:2" + "src": "4861:12:2" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "4146:6:2", + "src": "4851:6:2", "type": "" } ] @@ -4416,24 +4815,24 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "4184:3:2" + "src": "4889:3:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "4189:6:2" + "src": "4894:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4177:6:2" + "src": "4882:6:2" }, "nodeType": "YulFunctionCall", - "src": "4177:19:2" + "src": "4882:19:2" }, "nodeType": "YulExpressionStatement", - "src": "4177:19:2" + "src": "4882:19:2" }, { "expression": { @@ -4443,12 +4842,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4231:5:2" + "src": "4936:5:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4238:4:2", + "src": "4943:4:2", "type": "", "value": "0x20" } @@ -4456,22 +4855,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4227:3:2" + "src": "4932:3:2" }, "nodeType": "YulFunctionCall", - "src": "4227:16:2" + "src": "4932:16:2" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "4249:3:2" + "src": "4954:3:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4254:4:2", + "src": "4959:4:2", "type": "", "value": "0x20" } @@ -4479,31 +4878,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4245:3:2" + "src": "4950:3:2" }, "nodeType": "YulFunctionCall", - "src": "4245:14:2" + "src": "4950:14:2" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "4261:6:2" + "src": "4966:6:2" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "4205:21:2" + "src": "4910:21:2" }, "nodeType": "YulFunctionCall", - "src": "4205:63:2" + "src": "4910:63:2" }, "nodeType": "YulExpressionStatement", - "src": "4205:63:2" + "src": "4910:63:2" }, { "nodeType": "YulAssignment", - "src": "4277:57:2", + "src": "4982:57:2", "value": { "arguments": [ { @@ -4511,7 +4910,7 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "4292:3:2" + "src": "4997:3:2" }, { "arguments": [ @@ -4520,12 +4919,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "4305:6:2" + "src": "5010:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4313:2:2", + "src": "5018:2:2", "type": "", "value": "31" } @@ -4533,17 +4932,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4301:3:2" + "src": "5006:3:2" }, "nodeType": "YulFunctionCall", - "src": "4301:15:2" + "src": "5006:15:2" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "4322:2:2", + "src": "5027:2:2", "type": "", "value": "31" } @@ -4551,33 +4950,33 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "4318:3:2" + "src": "5023:3:2" }, "nodeType": "YulFunctionCall", - "src": "4318:7:2" + "src": "5023:7:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "4297:3:2" + "src": "5002:3:2" }, "nodeType": "YulFunctionCall", - "src": "4297:29:2" + "src": "5002:29:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4288:3:2" + "src": "4993:3:2" }, "nodeType": "YulFunctionCall", - "src": "4288:39:2" + "src": "4993:39:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4329:4:2", + "src": "5034:4:2", "type": "", "value": "0x20" } @@ -4585,34 +4984,34 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4284:3:2" + "src": "4989:3:2" }, "nodeType": "YulFunctionCall", - "src": "4284:50:2" + "src": "4989:50:2" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "4277:3:2" + "src": "4982:3:2" } ] } ] }, - "name": "abi_encode_bytes", + "name": "abi_encode_string", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "value", "nodeType": "YulTypedName", - "src": "4109:5:2", + "src": "4814:5:2", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "4116:3:2", + "src": "4821:3:2", "type": "" } ], @@ -4620,16 +5019,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "4124:3:2", + "src": "4829:3:2", "type": "" } ], - "src": "4083:257:2" + "src": "4787:258:2" }, { "body": { "nodeType": "YulBlock", - "src": "4492:768:2", + "src": "5191:871:2", "statements": [ { "expression": { @@ -4637,12 +5036,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4509:9:2" + "src": "5208:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4520:2:2", + "src": "5219:2:2", "type": "", "value": "32" } @@ -4650,38 +5049,128 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4502:6:2" + "src": "5201:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5201:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5201:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5242:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5253:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5238:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5238:18:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5268:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5262:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5262:13:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5277:42:2", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5258:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5258:62:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5231:6:2" }, "nodeType": "YulFunctionCall", - "src": "4502:21:2" + "src": "5231:90:2" }, "nodeType": "YulExpressionStatement", - "src": "4502:21:2" + "src": "5231:90:2" }, { "nodeType": "YulVariableDeclaration", - "src": "4532:33:2", + "src": "5330:42:2", "value": { "arguments": [ { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4558:6:2" + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5360:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5368:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5356:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5356:15:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "4552:5:2" + "src": "5350:5:2" }, "nodeType": "YulFunctionCall", - "src": "4552:13:2" + "src": "5350:22:2" }, "variables": [ { "name": "memberValue0", "nodeType": "YulTypedName", - "src": "4536:12:2", + "src": "5334:12:2", "type": "" } ] @@ -4694,97 +5183,97 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4585:9:2" + "src": "5392:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4596:2:2", + "src": "5403:2:2", "type": "", - "value": "32" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4581:3:2" + "src": "5388:3:2" }, "nodeType": "YulFunctionCall", - "src": "4581:18:2" + "src": "5388:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4601:4:2", + "src": "5408:4:2", "type": "", - "value": "0x80" + "value": "0xc0" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4574:6:2" + "src": "5381:6:2" }, "nodeType": "YulFunctionCall", - "src": "4574:32:2" + "src": "5381:32:2" }, "nodeType": "YulExpressionStatement", - "src": "4574:32:2" + "src": "5381:32:2" }, { "nodeType": "YulVariableDeclaration", - "src": "4615:65:2", + "src": "5422:66:2", "value": { "arguments": [ { "name": "memberValue0", "nodeType": "YulIdentifier", - "src": "4646:12:2" + "src": "5454:12:2" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4664:9:2" + "src": "5472:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4675:3:2", + "src": "5483:3:2", "type": "", - "value": "160" + "value": "224" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4660:3:2" + "src": "5468:3:2" }, "nodeType": "YulFunctionCall", - "src": "4660:19:2" + "src": "5468:19:2" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "4629:16:2" + "src": "5436:17:2" }, "nodeType": "YulFunctionCall", - "src": "4629:51:2" + "src": "5436:52:2" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "4619:6:2", + "src": "5426:6:2", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "4689:44:2", + "src": "5497:44:2", "value": { "arguments": [ { @@ -4792,51 +5281,51 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4721:6:2" + "src": "5529:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4729:2:2", + "src": "5537:2:2", "type": "", - "value": "32" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4717:3:2" + "src": "5525:3:2" }, "nodeType": "YulFunctionCall", - "src": "4717:15:2" + "src": "5525:15:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "4711:5:2" + "src": "5519:5:2" }, "nodeType": "YulFunctionCall", - "src": "4711:22:2" + "src": "5519:22:2" }, "variables": [ { "name": "memberValue0_1", "nodeType": "YulTypedName", - "src": "4693:14:2", + "src": "5501:14:2", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "4742:17:2", + "src": "5550:17:2", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "4756:2:2", + "src": "5564:2:2", "type": "", "value": "31" } @@ -4844,16 +5333,16 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "4752:3:2" + "src": "5560:3:2" }, "nodeType": "YulFunctionCall", - "src": "4752:7:2" + "src": "5560:7:2" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "4746:2:2", + "src": "5554:2:2", "type": "" } ] @@ -4866,23 +5355,23 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4779:9:2" + "src": "5587:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4790:2:2", + "src": "5598:2:2", "type": "", - "value": "64" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4775:3:2" + "src": "5583:3:2" }, "nodeType": "YulFunctionCall", - "src": "4775:18:2" + "src": "5583:18:2" }, { "arguments": [ @@ -4891,84 +5380,156 @@ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "4803:6:2" + "src": "5611:6:2" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4811:9:2" + "src": "5619:9:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4799:3:2" + "src": "5607:3:2" }, "nodeType": "YulFunctionCall", - "src": "4799:22:2" + "src": "5607:22:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "4823:2:2" + "src": "5631:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4795:3:2" + "src": "5603:3:2" }, "nodeType": "YulFunctionCall", - "src": "4795:31:2" + "src": "5603:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4768:6:2" + "src": "5576:6:2" }, "nodeType": "YulFunctionCall", - "src": "4768:59:2" + "src": "5576:59:2" }, "nodeType": "YulExpressionStatement", - "src": "4768:59:2" + "src": "5576:59:2" }, { "nodeType": "YulVariableDeclaration", - "src": "4836:54:2", + "src": "5644:55:2", "value": { "arguments": [ { "name": "memberValue0_1", "nodeType": "YulIdentifier", - "src": "4867:14:2" + "src": "5676:14:2" }, { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "4883:6:2" + "src": "5692:6:2" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "4850:16:2" + "src": "5658:17:2" }, "nodeType": "YulFunctionCall", - "src": "4850:40:2" + "src": "5658:41:2" }, "variables": [ { "name": "tail_2", "nodeType": "YulTypedName", - "src": "4840:6:2", + "src": "5648:6:2", "type": "" } ] }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5719:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5730:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5715:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5715:19:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5746:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5754:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5742:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5742:15:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5736:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5736:22:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5708:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5708:51:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5708:51:2" + }, { "nodeType": "YulVariableDeclaration", - "src": "4899:44:2", + "src": "5768:45:2", "value": { "arguments": [ { @@ -4976,38 +5537,38 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4931:6:2" + "src": "5800:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4939:2:2", + "src": "5808:3:2", "type": "", - "value": "64" + "value": "128" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4927:3:2" + "src": "5796:3:2" }, "nodeType": "YulFunctionCall", - "src": "4927:15:2" + "src": "5796:16:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "4921:5:2" + "src": "5790:5:2" }, "nodeType": "YulFunctionCall", - "src": "4921:22:2" + "src": "5790:23:2" }, "variables": [ { "name": "memberValue0_2", "nodeType": "YulTypedName", - "src": "4903:14:2", + "src": "5772:14:2", "type": "" } ] @@ -5020,23 +5581,23 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4963:9:2" + "src": "5833:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4974:2:2", + "src": "5844:3:2", "type": "", - "value": "96" + "value": "160" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4959:3:2" + "src": "5829:3:2" }, "nodeType": "YulFunctionCall", - "src": "4959:18:2" + "src": "5829:19:2" }, { "arguments": [ @@ -5045,127 +5606,314 @@ { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "4987:6:2" + "src": "5858:6:2" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4995:9:2" + "src": "5866:9:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4983:3:2" + "src": "5854:3:2" }, "nodeType": "YulFunctionCall", - "src": "4983:22:2" + "src": "5854:22:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "5007:2:2" + "src": "5878:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4979:3:2" + "src": "5850:3:2" }, "nodeType": "YulFunctionCall", - "src": "4979:31:2" + "src": "5850:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4952:6:2" + "src": "5822:6:2" }, "nodeType": "YulFunctionCall", - "src": "4952:59:2" + "src": "5822:60:2" }, "nodeType": "YulExpressionStatement", - "src": "4952:59:2" + "src": "5822:60:2" }, { "nodeType": "YulVariableDeclaration", - "src": "5020:54:2", + "src": "5891:55:2", "value": { "arguments": [ { "name": "memberValue0_2", "nodeType": "YulIdentifier", - "src": "5051:14:2" + "src": "5923:14:2" }, { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "5067:6:2" + "src": "5939:6:2" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "5034:16:2" + "src": "5905:17:2" }, "nodeType": "YulFunctionCall", - "src": "5034:40:2" + "src": "5905:41:2" }, "variables": [ { "name": "tail_3", "nodeType": "YulTypedName", - "src": "5024:6:2", + "src": "5895:6:2", "type": "" } ] }, { - "nodeType": "YulVariableDeclaration", - "src": "5083:44:2", - "value": { + "expression": { "arguments": [ { "arguments": [ { - "name": "value0", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "5115:6:2" + "src": "5966:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5123:2:2", + "src": "5977:4:2", "type": "", - "value": "96" + "value": "0xc0" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5111:3:2" + "src": "5962:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5962:20:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5998:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6006:3:2", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5994:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5994:16:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5988:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5988:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6013:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5984:3:2" }, "nodeType": "YulFunctionCall", - "src": "5111:15:2" + "src": "5984:48:2" } ], "functionName": { - "name": "mload", + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5955:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5955:78:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5955:78:2" + }, + { + "nodeType": "YulAssignment", + "src": "6042:14:2", + "value": { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "6050:6:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6042:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_struct$_Task_$62_memory_ptr__to_t_struct$_Task_$62_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5160:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5171:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5182:4:2", + "type": "" + } + ], + "src": "5050:1012:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6192:174:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6202:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6214:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6225:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", "nodeType": "YulIdentifier", - "src": "5105:5:2" + "src": "6210:3:2" }, "nodeType": "YulFunctionCall", - "src": "5105:22:2" + "src": "6210:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6202:4:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6237:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6247:18:2", + "type": "", + "value": "0xffffffffffffffff" }, "variables": [ { - "name": "memberValue0_3", + "name": "_1", "nodeType": "YulTypedName", - "src": "5087:14:2", + "src": "6241:2:2", "type": "" } ] }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6281:9:2" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6296:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6304:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6292:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6292:15:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6274:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6274:34:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6274:34:2" + }, { "expression": { "arguments": [ @@ -5174,120 +5922,78 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5147:9:2" + "src": "6328:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5158:4:2", + "src": "6339:2:2", "type": "", - "value": "0x80" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5143:3:2" + "src": "6324:3:2" }, "nodeType": "YulFunctionCall", - "src": "5143:20:2" + "src": "6324:18:2" }, { "arguments": [ { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "5173:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5181:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5169:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5169:22:2" + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6348:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "5193:2:2" + "src": "6356:2:2" } ], "functionName": { - "name": "add", + "name": "and", "nodeType": "YulIdentifier", - "src": "5165:3:2" + "src": "6344:3:2" }, "nodeType": "YulFunctionCall", - "src": "5165:31:2" + "src": "6344:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5136:6:2" + "src": "6317:6:2" }, "nodeType": "YulFunctionCall", - "src": "5136:61:2" + "src": "6317:43:2" }, "nodeType": "YulExpressionStatement", - "src": "5136:61:2" - }, - { - "nodeType": "YulAssignment", - "src": "5206:48:2", - "value": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "5231:14:2" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "5247:6:2" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "5214:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "5214:40:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5206:4:2" - } - ] + "src": "6317:43:2" } ] }, - "name": "abi_encode_tuple_t_struct$_SSData_$104_memory_ptr__to_t_struct$_SSData_$104_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_uint64_t_uint64__to_t_uint64_t_uint64__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4461:9:2", + "src": "6153:9:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6164:6:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "4472:6:2", + "src": "6172:6:2", "type": "" } ], @@ -5295,21 +6001,48 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "4483:4:2", + "src": "6183:4:2", "type": "" } ], - "src": "4345:915:2" + "src": "6067:299:2" }, { "body": { "nodeType": "YulBlock", - "src": "5335:110:2", + "src": "6420:147:2", "statements": [ + { + "nodeType": "YulAssignment", + "src": "6430:29:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "6452:6:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "6439:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "6439:20:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6430:5:2" + } + ] + }, { "body": { "nodeType": "YulBlock", - "src": "5381:16:2", + "src": "6545:16:2", "statements": [ { "expression": { @@ -5317,14 +6050,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5390:1:2", + "src": "6554:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5393:1:2", + "src": "6557:1:2", "type": "", "value": "0" } @@ -5332,13 +6065,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "5383:6:2" + "src": "6547:6:2" }, "nodeType": "YulFunctionCall", - "src": "5383:12:2" + "src": "6547:12:2" }, "nodeType": "YulExpressionStatement", - "src": "5383:12:2" + "src": "6547:12:2" } ] }, @@ -5347,918 +6080,2987 @@ { "arguments": [ { - "name": "dataEnd", + "name": "value", "nodeType": "YulIdentifier", - "src": "5356:7:2" + "src": "6481:5:2" }, { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5365:9:2" + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6492:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6499:42:2", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6488:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6488:54:2" } ], "functionName": { - "name": "sub", + "name": "eq", "nodeType": "YulIdentifier", - "src": "5352:3:2" + "src": "6478:2:2" }, "nodeType": "YulFunctionCall", - "src": "5352:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5377:2:2", - "type": "", - "value": "32" + "src": "6478:65:2" } ], "functionName": { - "name": "slt", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "5348:3:2" + "src": "6471:6:2" }, "nodeType": "YulFunctionCall", - "src": "5348:32:2" + "src": "6471:73:2" }, "nodeType": "YulIf", - "src": "5345:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "5406:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5429:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5416:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "5416:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5406:6:2" - } - ] + "src": "6468:93:2" } ] }, - "name": "abi_decode_tuple_t_bytes32", + "name": "abi_decode_address", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5301:9:2", - "type": "" - }, - { - "name": "dataEnd", + "name": "offset", "nodeType": "YulTypedName", - "src": "5312:7:2", + "src": "6399:6:2", "type": "" } ], "returnVariables": [ { - "name": "value0", + "name": "value", "nodeType": "YulTypedName", - "src": "5324:6:2", + "src": "6410:5:2", "type": "" } ], - "src": "5265:180:2" + "src": "6371:196:2" }, { "body": { "nodeType": "YulBlock", - "src": "5591:661:2", + "src": "6727:497:2", "statements": [ { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5608:9:2" - }, + "body": { + "nodeType": "YulBlock", + "src": "6774:16:2", + "statements": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5619:2:2", - "type": "", - "value": "32" + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6783:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6786:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "6776:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6776:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6776:12:2" } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5601:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5601:21:2" + ] }, - "nodeType": "YulExpressionStatement", - "src": "5601:21:2" - }, - { - "expression": { + "condition": { "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5642:9:2" + "src": "6748:7:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5653:2:2", - "type": "", - "value": "32" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6757:9:2" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "5638:3:2" + "src": "6744:3:2" }, "nodeType": "YulFunctionCall", - "src": "5638:18:2" + "src": "6744:23:2" }, { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5668:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5662:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5662:13:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5677:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5658:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5658:62:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "6769:3:2", + "type": "", + "value": "128" } ], "functionName": { - "name": "mstore", + "name": "slt", "nodeType": "YulIdentifier", - "src": "5631:6:2" + "src": "6740:3:2" }, "nodeType": "YulFunctionCall", - "src": "5631:90:2" + "src": "6740:33:2" }, - "nodeType": "YulExpressionStatement", - "src": "5631:90:2" + "nodeType": "YulIf", + "src": "6737:53:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "5730:42:2", + "nodeType": "YulAssignment", + "src": "6799:33:2", "value": { "arguments": [ { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5760:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5768:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5756:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5756:15:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6822:9:2" } ], "functionName": { - "name": "mload", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "5750:5:2" + "src": "6809:12:2" }, "nodeType": "YulFunctionCall", - "src": "5750:22:2" + "src": "6809:23:2" }, - "variables": [ + "variableNames": [ { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "5734:12:2", - "type": "" + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6799:6:2" } ] }, { - "expression": { + "nodeType": "YulAssignment", + "src": "6841:47:2", + "value": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5792:9:2" + "src": "6873:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5803:2:2", + "src": "6884:2:2", "type": "", - "value": "64" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5788:3:2" + "src": "6869:3:2" }, "nodeType": "YulFunctionCall", - "src": "5788:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5808:4:2", - "type": "", - "value": "0xa0" + "src": "6869:18:2" } ], "functionName": { - "name": "mstore", + "name": "abi_decode_uint64", "nodeType": "YulIdentifier", - "src": "5781:6:2" + "src": "6851:17:2" }, "nodeType": "YulFunctionCall", - "src": "5781:32:2" + "src": "6851:37:2" }, - "nodeType": "YulExpressionStatement", - "src": "5781:32:2" + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6841:6:2" + } + ] }, { "nodeType": "YulVariableDeclaration", - "src": "5822:65:2", + "src": "6897:46:2", "value": { "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "5853:12:2" - }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5871:9:2" + "src": "6928:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5882:3:2", + "src": "6939:2:2", "type": "", - "value": "192" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5867:3:2" + "src": "6924:3:2" }, "nodeType": "YulFunctionCall", - "src": "5867:19:2" + "src": "6924:18:2" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "5836:16:2" + "src": "6911:12:2" }, "nodeType": "YulFunctionCall", - "src": "5836:51:2" + "src": "6911:32:2" }, "variables": [ { - "name": "tail_1", + "name": "offset", "nodeType": "YulTypedName", - "src": "5826:6:2", + "src": "6901:6:2", "type": "" } ] }, { - "nodeType": "YulVariableDeclaration", - "src": "5896:44:2", - "value": { - "arguments": [ + "body": { + "nodeType": "YulBlock", + "src": "6986:16:2", + "statements": [ { - "arguments": [ - { - "name": "value0", + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6995:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6998:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", "nodeType": "YulIdentifier", - "src": "5928:6:2" + "src": "6988:6:2" }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5936:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5924:3:2" + "nodeType": "YulFunctionCall", + "src": "6988:12:2" }, - "nodeType": "YulFunctionCall", - "src": "5924:15:2" + "nodeType": "YulExpressionStatement", + "src": "6988:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "6958:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6966:18:2", + "type": "", + "value": "0xffffffffffffffff" } ], "functionName": { - "name": "mload", + "name": "gt", "nodeType": "YulIdentifier", - "src": "5918:5:2" + "src": "6955:2:2" }, "nodeType": "YulFunctionCall", - "src": "5918:22:2" + "src": "6955:30:2" }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "5900:14:2", - "type": "" - } - ] + "nodeType": "YulIf", + "src": "6952:50:2" }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "7011:96:2", + "value": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5960:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5971:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5956:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5956:18:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5984:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5992:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5980:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5980:22:2" + "src": "7079:9:2" }, { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6008:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "6004:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6004:7:2" + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7090:6:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5976:3:2" + "src": "7075:3:2" }, "nodeType": "YulFunctionCall", - "src": "5976:36:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5949:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5949:64:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5949:64:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6022:54:2", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "6053:14:2" + "src": "7075:22:2" }, { - "name": "tail_1", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6069:6:2" + "src": "7099:7:2" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "abi_decode_array_address_dyn_calldata", "nodeType": "YulIdentifier", - "src": "6036:16:2" + "src": "7037:37:2" }, "nodeType": "YulFunctionCall", - "src": "6036:40:2" + "src": "7037:70:2" }, "variables": [ { - "name": "tail_2", + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "7015:8:2", + "type": "" + }, + { + "name": "value3_1", "nodeType": "YulTypedName", - "src": "6026:6:2", + "src": "7025:8:2", "type": "" } ] }, { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6096:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6107:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6092:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6092:19:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6123:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6131:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6119:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6119:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "6113:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "6113:22:2" - } - ], - "functionName": { - "name": "mstore", + "nodeType": "YulAssignment", + "src": "7116:18:2", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "7126:8:2" + }, + "variableNames": [ + { + "name": "value2", "nodeType": "YulIdentifier", - "src": "6085:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6085:51:2" + "src": "7116:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "7143:18:2", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "7153:8:2" }, - "nodeType": "YulExpressionStatement", - "src": "6085:51:2" + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "7143:6:2" + } + ] }, { - "expression": { + "nodeType": "YulAssignment", + "src": "7170:48:2", + "value": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6156:9:2" + "src": "7203:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6167:4:2", + "src": "7214:2:2", "type": "", - "value": "0xa0" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6152:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6152:20:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6188:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6196:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6184:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6184:16:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "6178:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "6178:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6203:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6174:3:2" + "src": "7199:3:2" }, "nodeType": "YulFunctionCall", - "src": "6174:48:2" + "src": "7199:18:2" } ], "functionName": { - "name": "mstore", + "name": "abi_decode_address", "nodeType": "YulIdentifier", - "src": "6145:6:2" + "src": "7180:18:2" }, "nodeType": "YulFunctionCall", - "src": "6145:78:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6145:78:2" - }, - { - "nodeType": "YulAssignment", - "src": "6232:14:2", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "6240:6:2" + "src": "7180:38:2" }, "variableNames": [ { - "name": "tail", + "name": "value4", "nodeType": "YulIdentifier", - "src": "6232:4:2" + "src": "7170:6:2" } ] } ] }, - "name": "abi_encode_tuple_t_struct$_Task_$60_memory_ptr__to_t_struct$_Task_$60_memory_ptr__fromStack_reversed", + "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_address", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5560:9:2", + "src": "6661:9:2", "type": "" }, { - "name": "value0", + "name": "dataEnd", "nodeType": "YulTypedName", - "src": "5571:6:2", + "src": "6672:7:2", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "value0", + "nodeType": "YulTypedName", + "src": "6684:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6692:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6700:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "6708:6:2", + "type": "" + }, + { + "name": "value4", "nodeType": "YulTypedName", - "src": "5582:4:2", + "src": "6716:6:2", "type": "" } ], - "src": "5450:802:2" + "src": "6572:652:2" }, { "body": { "nodeType": "YulBlock", - "src": "6382:174:2", + "src": "7426:1359:2", "statements": [ { - "nodeType": "YulAssignment", - "src": "6392:26:2", + "nodeType": "YulVariableDeclaration", + "src": "7436:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7446:2:2", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "7440:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7457:32:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6404:9:2" + "src": "7475:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6415:2:2", - "type": "", - "value": "64" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7486:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6400:3:2" + "src": "7471:3:2" }, "nodeType": "YulFunctionCall", - "src": "6400:18:2" + "src": "7471:18:2" }, - "variableNames": [ + "variables": [ { - "name": "tail", + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "7461:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7505:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7516:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7498:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7498:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7498:21:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7528:17:2", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "7539:6:2" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "7532:3:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7554:27:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7574:6:2" + } + ], + "functionName": { + "name": "mload", "nodeType": "YulIdentifier", - "src": "6392:4:2" + "src": "7568:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "7568:13:2" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "7558:6:2", + "type": "" } ] }, + { + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "7597:6:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7605:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7590:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7590:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7590:22:2" + }, { "nodeType": "YulVariableDeclaration", - "src": "6427:28:2", + "src": "7621:12:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "6437:18:2", + "src": "7631:2:2", "type": "", - "value": "0xffffffffffffffff" + "value": "64" }, "variables": [ { - "name": "_1", + "name": "_2", "nodeType": "YulTypedName", - "src": "6431:2:2", + "src": "7625:2:2", "type": "" } ] }, { - "expression": { + "nodeType": "YulAssignment", + "src": "7642:25:2", + "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6471:9:2" + "src": "7653:9:2" }, { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6486:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6494:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6482:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6482:15:2" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "7664:2:2" } ], "functionName": { - "name": "mstore", + "name": "add", "nodeType": "YulIdentifier", - "src": "6464:6:2" + "src": "7649:3:2" }, "nodeType": "YulFunctionCall", - "src": "6464:34:2" + "src": "7649:18:2" }, - "nodeType": "YulExpressionStatement", - "src": "6464:34:2" + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7642:3:2" + } + ] }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "7676:54:2", + "value": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6518:9:2" + "src": "7698:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6529:2:2", - "type": "", - "value": "32" + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7713:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7721:2:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "7709:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7709:15:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6514:3:2" + "src": "7694:3:2" }, "nodeType": "YulFunctionCall", - "src": "6514:18:2" + "src": "7694:31:2" }, { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6538:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6546:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6534:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6534:15:2" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "7727:2:2" } ], "functionName": { - "name": "mstore", + "name": "add", "nodeType": "YulIdentifier", - "src": "6507:6:2" + "src": "7690:3:2" }, "nodeType": "YulFunctionCall", - "src": "6507:43:2" + "src": "7690:40:2" }, - "nodeType": "YulExpressionStatement", - "src": "6507:43:2" - } - ] - }, - "name": "abi_encode_tuple_t_uint64_t_uint64__to_t_uint64_t_uint64__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6343:9:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6354:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6362:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6373:4:2", - "type": "" - } - ], - "src": "6257:299:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6634:275:2", - "statements": [ - { - "body": { + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "7680:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7739:29:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7757:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7765:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7753:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7753:15:2" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "7743:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7777:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7786:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "7781:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7845:911:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7866:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "7879:6:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7887:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7875:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7875:22:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7903:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "7899:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7899:7:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7871:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7871:36:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7859:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7859:49:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7859:49:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7921:23:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "7937:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7931:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "7931:13:2" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "7925:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7957:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7967:4:2", + "type": "", + "value": "0x80" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "7961:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7984:29:2", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "8010:2:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8004:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8004:9:2" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "7988:12:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8033:6:2" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "8041:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8026:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8026:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8026:18:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8057:62:2", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "8089:12:2" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8107:6:2" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "8115:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8103:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8103:15:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "8071:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "8071:48:2" + }, + "variables": [ + { + "name": "tail_3", + "nodeType": "YulTypedName", + "src": "8061:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8132:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "8164:2:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "8168:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8160:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8160:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8154:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8154:18:2" + }, + "variables": [ + { + "name": "memberValue0_1", + "nodeType": "YulTypedName", + "src": "8136:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8196:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "8204:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8192:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8192:15:2" + }, + { + "arguments": [ + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "8213:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8221:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8209:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8209:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8185:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8185:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8185:44:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8242:55:2", + "value": { + "arguments": [ + { + "name": "memberValue0_1", + "nodeType": "YulIdentifier", + "src": "8274:14:2" + }, + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "8290:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "8256:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "8256:41:2" + }, + "variables": [ + { + "name": "tail_4", + "nodeType": "YulTypedName", + "src": "8246:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8310:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "8342:2:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "8346:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8338:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8338:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8332:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8332:18:2" + }, + "variables": [ + { + "name": "memberValue0_2", + "nodeType": "YulTypedName", + "src": "8314:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8374:6:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "8382:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8370:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8370:15:2" + }, + { + "arguments": [ + { + "name": "tail_4", + "nodeType": "YulIdentifier", + "src": "8391:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8399:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8387:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8387:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8363:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8363:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8363:44:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8420:55:2", + "value": { + "arguments": [ + { + "name": "memberValue0_2", + "nodeType": "YulIdentifier", + "src": "8452:14:2" + }, + { + "name": "tail_4", + "nodeType": "YulIdentifier", + "src": "8468:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "8434:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "8434:41:2" + }, + "variables": [ + { + "name": "tail_5", + "nodeType": "YulTypedName", + "src": "8424:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8488:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8498:4:2", + "type": "", + "value": "0x60" + }, + "variables": [ + { + "name": "_5", + "nodeType": "YulTypedName", + "src": "8492:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8515:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "8547:2:2" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "8551:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8543:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8543:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8537:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8537:18:2" + }, + "variables": [ + { + "name": "memberValue0_3", + "nodeType": "YulTypedName", + "src": "8519:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8579:6:2" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "8587:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8575:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8575:15:2" + }, + { + "arguments": [ + { + "name": "tail_5", + "nodeType": "YulIdentifier", + "src": "8596:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8604:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8592:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8592:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8568:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8568:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8568:44:2" + }, + { + "nodeType": "YulAssignment", + "src": "8625:51:2", + "value": { + "arguments": [ + { + "name": "memberValue0_3", + "nodeType": "YulIdentifier", + "src": "8653:14:2" + }, + { + "name": "tail_5", + "nodeType": "YulIdentifier", + "src": "8669:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "8635:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "8635:41:2" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8625:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8689:25:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "8703:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "8711:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8699:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8699:15:2" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "8689:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8727:19:2", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8738:3:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "8743:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8734:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8734:12:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8727:3:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "7807:1:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7810:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "7804:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7804:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "7818:18:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7820:14:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "7829:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7832:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7825:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7825:9:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "7820:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "7800:3:2", + "statements": [] + }, + "src": "7796:960:2" + }, + { + "nodeType": "YulAssignment", + "src": "8765:14:2", + "value": { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "8773:6:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8765:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7395:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7406:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7417:4:2", + "type": "" + } + ], + "src": "7229:1556:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8891:125:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8901:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8913:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8924:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8909:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8909:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8901:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8943:9:2" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8958:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8966:42:2", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8954:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8954:55:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8936:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8936:74:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8936:74:2" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8860:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8871:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8882:4:2", + "type": "" + } + ], + "src": "8790:226:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9093:275:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9142:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9151:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9154:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9144:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9144:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9144:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9121:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9129:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9117:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9117:17:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9136:3:2" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "9113:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9113:27:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "9106:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9106:35:2" + }, + "nodeType": "YulIf", + "src": "9103:55:2" + }, + { + "nodeType": "YulAssignment", + "src": "9167:30:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9190:6:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9177:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "9177:20:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9167:6:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9240:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9249:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9252:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9242:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9242:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9242:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9212:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9220:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9209:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9209:30:2" + }, + "nodeType": "YulIf", + "src": "9206:50:2" + }, + { + "nodeType": "YulAssignment", + "src": "9265:29:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9281:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9289:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9277:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9277:17:2" + }, + "variableNames": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "9265:8:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9346:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9355:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9358:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9348:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9348:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9348:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9317:6:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9325:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9313:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9313:19:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9334:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9309:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9309:30:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9341:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9306:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9306:39:2" + }, + "nodeType": "YulIf", + "src": "9303:59:2" + } + ] + }, + "name": "abi_decode_bytes_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "9056:6:2", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "9064:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "9072:8:2", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9082:6:2", + "type": "" + } + ], + "src": "9021:347:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9531:700:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9578:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9587:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9590:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9580:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9580:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9580:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "9552:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9561:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9548:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9548:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9573:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "9544:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9544:33:2" + }, + "nodeType": "YulIf", + "src": "9541:53:2" + }, + { + "nodeType": "YulAssignment", + "src": "9603:33:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9626:9:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9613:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "9613:23:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9603:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9645:47:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9677:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9688:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9673:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9673:18:2" + } + ], + "functionName": { + "name": "abi_decode_uint64", + "nodeType": "YulIdentifier", + "src": "9655:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "9655:37:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "9645:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9701:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9732:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9743:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9728:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9728:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9715:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "9715:32:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "9705:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9756:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9766:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "9760:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9811:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9820:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9823:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9813:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9813:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9813:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9799:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9807:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9796:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9796:14:2" + }, + "nodeType": "YulIf", + "src": "9793:34:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9836:84:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9892:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9903:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9888:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9888:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "9912:7:2" + } + ], + "functionName": { + "name": "abi_decode_bytes_calldata", + "nodeType": "YulIdentifier", + "src": "9862:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "9862:58:2" + }, + "variables": [ + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "9840:8:2", + "type": "" + }, + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "9850:8:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9929:18:2", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "9939:8:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "9929:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9956:18:2", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "9966:8:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "9956:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9983:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10016:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10027:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10012:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10012:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9999:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "9999:32:2" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "9987:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10060:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10069:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10072:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "10062:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10062:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10062:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "10046:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10056:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10043:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "10043:16:2" + }, + "nodeType": "YulIf", + "src": "10040:36:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10085:86:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10141:9:2" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "10152:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10137:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10137:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10163:7:2" + } + ], + "functionName": { + "name": "abi_decode_bytes_calldata", + "nodeType": "YulIdentifier", + "src": "10111:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "10111:60:2" + }, + "variables": [ + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "10089:8:2", + "type": "" + }, + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "10099:8:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10180:18:2", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "10190:8:2" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "10180:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10207:18:2", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "10217:8:2" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "10207:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptrt_bytes_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9457:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "9468:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9480:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "9488:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "9496:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "9504:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "9512:6:2", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "9520:6:2", + "type": "" + } + ], + "src": "9373:858:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10331:92:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10341:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10353:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10364:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10349:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10349:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "10341:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10383:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10408:6:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10401:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10401:14:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10394:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10394:22:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10376:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10376:41:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10376:41:2" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10300:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "10311:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "10322:4:2", + "type": "" + } + ], + "src": "10236:187:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10572:643:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10618:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10627:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10630:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "10620:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10620:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10620:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10593:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10602:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10589:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10589:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10614:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "10585:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10585:32:2" + }, + "nodeType": "YulIf", + "src": "10582:52:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10643:37:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10670:9:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "10657:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "10657:23:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10647:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10689:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10699:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "10693:2:2", + "type": "" + } + ] + }, + { + "body": { "nodeType": "YulBlock", - "src": "6683:16:2", + "src": "10744:16:2", "statements": [ { "expression": { @@ -6266,14 +9068,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6692:1:2", + "src": "10753:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6695:1:2", + "src": "10756:1:2", "type": "", "value": "0" } @@ -6281,100 +9083,222 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "6685:6:2" + "src": "10746:6:2" }, "nodeType": "YulFunctionCall", - "src": "6685:12:2" + "src": "10746:12:2" }, "nodeType": "YulExpressionStatement", - "src": "6685:12:2" + "src": "10746:12:2" } ] }, "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10732:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10740:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10729:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "10729:14:2" + }, + "nodeType": "YulIf", + "src": "10726:34:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10769:84:2", + "value": { "arguments": [ { "arguments": [ { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6662:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6670:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6658:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6658:17:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10825:9:2" }, { - "name": "end", + "name": "offset", "nodeType": "YulIdentifier", - "src": "6677:3:2" + "src": "10836:6:2" } ], "functionName": { - "name": "slt", + "name": "add", "nodeType": "YulIdentifier", - "src": "6654:3:2" + "src": "10821:3:2" }, "nodeType": "YulFunctionCall", - "src": "6654:27:2" + "src": "10821:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10845:7:2" } ], "functionName": { - "name": "iszero", + "name": "abi_decode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "6647:6:2" + "src": "10795:25:2" }, "nodeType": "YulFunctionCall", - "src": "6647:35:2" + "src": "10795:58:2" }, - "nodeType": "YulIf", - "src": "6644:55:2" + "variables": [ + { + "name": "value0_1", + "nodeType": "YulTypedName", + "src": "10773:8:2", + "type": "" + }, + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "10783:8:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10862:18:2", + "value": { + "name": "value0_1", + "nodeType": "YulIdentifier", + "src": "10872:8:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10862:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10889:18:2", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "10899:8:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "10889:6:2" + } + ] }, { "nodeType": "YulAssignment", - "src": "6708:30:2", + "src": "10916:42:2", "value": { "arguments": [ { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6731:6:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10943:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10954:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10939:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10939:18:2" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "6718:12:2" + "src": "10926:12:2" }, "nodeType": "YulFunctionCall", - "src": "6718:20:2" + "src": "10926:32:2" }, "variableNames": [ { - "name": "length", + "name": "value2", + "nodeType": "YulIdentifier", + "src": "10916:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10967:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11000:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11011:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10996:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10996:18:2" + } + ], + "functionName": { + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "6708:6:2" + "src": "10983:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "10983:32:2" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "10971:8:2", + "type": "" } ] }, { "body": { "nodeType": "YulBlock", - "src": "6781:16:2", + "src": "11044:16:2", "statements": [ { "expression": { @@ -6382,14 +9306,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6790:1:2", + "src": "11053:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6793:1:2", + "src": "11056:1:2", "type": "", "value": "0" } @@ -6397,80 +9321,280 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "6783:6:2" + "src": "11046:6:2" }, "nodeType": "YulFunctionCall", - "src": "6783:12:2" + "src": "11046:12:2" }, "nodeType": "YulExpressionStatement", - "src": "6783:12:2" + "src": "11046:12:2" } ] }, "condition": { "arguments": [ { - "name": "length", + "name": "offset_1", "nodeType": "YulIdentifier", - "src": "6753:6:2" + "src": "11030:8:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6761:18:2", - "type": "", - "value": "0xffffffffffffffff" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11040:2:2" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "6750:2:2" + "src": "11027:2:2" }, "nodeType": "YulFunctionCall", - "src": "6750:30:2" + "src": "11027:16:2" }, "nodeType": "YulIf", - "src": "6747:50:2" + "src": "11024:36:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11069:86:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11125:9:2" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "11136:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11121:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11121:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11147:7:2" + } + ], + "functionName": { + "name": "abi_decode_bytes_calldata", + "nodeType": "YulIdentifier", + "src": "11095:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "11095:60:2" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "11073:8:2", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "11083:8:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11164:18:2", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "11174:8:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "11164:6:2" + } + ] }, { "nodeType": "YulAssignment", - "src": "6806:29:2", + "src": "11191:18:2", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "11201:8:2" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "11191:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_calldata_ptrt_bytes32t_string_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10506:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "10517:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "10529:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "10537:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "10545:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "10553:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "10561:6:2", + "type": "" + } + ], + "src": "10428:787:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11321:76:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11331:26:2", "value": { "arguments": [ { - "name": "offset", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "6822:6:2" + "src": "11343:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6830:4:2", + "src": "11354:2:2", "type": "", - "value": "0x20" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6818:3:2" + "src": "11339:3:2" }, "nodeType": "YulFunctionCall", - "src": "6818:17:2" + "src": "11339:18:2" }, "variableNames": [ { - "name": "arrayPos", + "name": "tail", "nodeType": "YulIdentifier", - "src": "6806:8:2" + "src": "11331:4:2" } ] }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11373:9:2" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11384:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11366:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11366:25:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11366:25:2" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11290:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11301:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "11312:4:2", + "type": "" + } + ], + "src": "11220:177:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11472:116:2", + "statements": [ { "body": { "nodeType": "YulBlock", - "src": "6887:16:2", + "src": "11518:16:2", "statements": [ { "expression": { @@ -6478,14 +9602,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6896:1:2", + "src": "11527:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6899:1:2", + "src": "11530:1:2", "type": "", "value": "0" } @@ -6493,13 +9617,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "6889:6:2" + "src": "11520:6:2" }, "nodeType": "YulFunctionCall", - "src": "6889:12:2" + "src": "11520:12:2" }, "nodeType": "YulExpressionStatement", - "src": "6889:12:2" + "src": "11520:12:2" } ] }, @@ -6508,102 +9632,107 @@ { "arguments": [ { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6858:6:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6866:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6854:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6854:19:2" + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11493:7:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6875:4:2", - "type": "", - "value": "0x20" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11502:9:2" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "6850:3:2" + "src": "11489:3:2" }, "nodeType": "YulFunctionCall", - "src": "6850:30:2" + "src": "11489:23:2" }, { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6882:3:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "11514:2:2", + "type": "", + "value": "32" } ], "functionName": { - "name": "gt", + "name": "slt", "nodeType": "YulIdentifier", - "src": "6847:2:2" + "src": "11485:3:2" }, "nodeType": "YulFunctionCall", - "src": "6847:39:2" + "src": "11485:32:2" }, "nodeType": "YulIf", - "src": "6844:59:2" + "src": "11482:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "11543:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11572:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "11553:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "11553:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11543:6:2" + } + ] } ] }, - "name": "abi_decode_string_calldata", + "name": "abi_decode_tuple_t_address", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "offset", + "name": "headStart", "nodeType": "YulTypedName", - "src": "6597:6:2", + "src": "11438:9:2", "type": "" }, { - "name": "end", + "name": "dataEnd", "nodeType": "YulTypedName", - "src": "6605:3:2", + "src": "11449:7:2", "type": "" } ], "returnVariables": [ { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "6613:8:2", - "type": "" - }, - { - "name": "length", + "name": "value0", "nodeType": "YulTypedName", - "src": "6623:6:2", + "src": "11461:6:2", "type": "" } ], - "src": "6561:348:2" + "src": "11402:186:2" }, { "body": { "nodeType": "YulBlock", - "src": "7021:372:2", + "src": "11662:115:2", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "7067:16:2", + "src": "11708:16:2", "statements": [ { "expression": { @@ -6611,14 +9740,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7076:1:2", + "src": "11717:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7079:1:2", + "src": "11720:1:2", "type": "", "value": "0" } @@ -6626,13 +9755,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "7069:6:2" + "src": "11710:6:2" }, "nodeType": "YulFunctionCall", - "src": "7069:12:2" + "src": "11710:12:2" }, "nodeType": "YulExpressionStatement", - "src": "7069:12:2" + "src": "11710:12:2" } ] }, @@ -6643,221 +9772,302 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "7042:7:2" + "src": "11683:7:2" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7051:9:2" + "src": "11692:9:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "7038:3:2" + "src": "11679:3:2" }, "nodeType": "YulFunctionCall", - "src": "7038:23:2" + "src": "11679:23:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7063:2:2", + "src": "11704:2:2", "type": "", - "value": "64" + "value": "32" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "7034:3:2" + "src": "11675:3:2" }, "nodeType": "YulFunctionCall", - "src": "7034:32:2" + "src": "11675:32:2" }, "nodeType": "YulIf", - "src": "7031:52:2" + "src": "11672:52:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "7092:37:2", + "nodeType": "YulAssignment", + "src": "11733:38:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7119:9:2" + "src": "11761:9:2" } ], "functionName": { - "name": "calldataload", + "name": "abi_decode_uint64", "nodeType": "YulIdentifier", - "src": "7106:12:2" + "src": "11743:17:2" }, "nodeType": "YulFunctionCall", - "src": "7106:23:2" + "src": "11743:28:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11733:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint64", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11628:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "11639:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11651:6:2", + "type": "" + } + ], + "src": "11593:184:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11983:949:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11993:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12003:2:2", + "type": "", + "value": "32" }, "variables": [ { - "name": "offset", + "name": "_1", "nodeType": "YulTypedName", - "src": "7096:6:2", + "src": "11997:2:2", "type": "" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "7172:16:2", - "statements": [ + "nodeType": "YulVariableDeclaration", + "src": "12014:32:2", + "value": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7181:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7184:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7174:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7174:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7174:12:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12032:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12043:2:2" } - ] + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12028:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12028:18:2" }, - "condition": { + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "12018:6:2", + "type": "" + } + ] + }, + { + "expression": { "arguments": [ { - "name": "offset", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "7144:6:2" + "src": "12062:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7152:18:2", - "type": "", - "value": "0xffffffffffffffff" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12073:2:2" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "7141:2:2" + "src": "12055:6:2" }, "nodeType": "YulFunctionCall", - "src": "7141:30:2" + "src": "12055:21:2" }, - "nodeType": "YulIf", - "src": "7138:50:2" + "nodeType": "YulExpressionStatement", + "src": "12055:21:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12085:17:2", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "12096:6:2" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "12089:3:2", + "type": "" + } + ] }, { "nodeType": "YulVariableDeclaration", - "src": "7197:85:2", + "src": "12111:27:2", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7254:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7265:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7250:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7250:22:2" - }, - { - "name": "dataEnd", + "name": "value0", "nodeType": "YulIdentifier", - "src": "7274:7:2" + "src": "12131:6:2" } ], "functionName": { - "name": "abi_decode_string_calldata", + "name": "mload", "nodeType": "YulIdentifier", - "src": "7223:26:2" + "src": "12125:5:2" }, "nodeType": "YulFunctionCall", - "src": "7223:59:2" + "src": "12125:13:2" }, "variables": [ { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "7201:8:2", - "type": "" - }, - { - "name": "value1_1", + "name": "length", "nodeType": "YulTypedName", - "src": "7211:8:2", + "src": "12115:6:2", "type": "" } ] }, { - "nodeType": "YulAssignment", - "src": "7291:18:2", + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "12154:6:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12162:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12147:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12147:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12147:22:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12178:12:2", "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "7301:8:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "12188:2:2", + "type": "", + "value": "64" }, - "variableNames": [ + "variables": [ { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7291:6:2" + "name": "_2", + "nodeType": "YulTypedName", + "src": "12182:2:2", + "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "7318:18:2", + "src": "12199:25:2", "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "7328:8:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12210:9:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12221:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12206:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12206:18:2" }, "variableNames": [ { - "name": "value1", + "name": "pos", "nodeType": "YulIdentifier", - "src": "7318:6:2" + "src": "12199:3:2" } ] }, { - "nodeType": "YulAssignment", - "src": "7345:42:2", + "nodeType": "YulVariableDeclaration", + "src": "12233:54:2", "value": { "arguments": [ { @@ -6865,270 +10075,617 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7372:9:2" + "src": "12255:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7383:2:2", - "type": "", - "value": "32" + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12270:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12278:2:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "12266:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12266:15:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7368:3:2" + "src": "12251:3:2" }, "nodeType": "YulFunctionCall", - "src": "7368:18:2" + "src": "12251:31:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12284:2:2" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "7355:12:2" + "src": "12247:3:2" }, "nodeType": "YulFunctionCall", - "src": "7355:32:2" + "src": "12247:40:2" }, - "variableNames": [ + "variables": [ { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "7345:6:2" + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "12237:6:2", + "type": "" } ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptrt_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6971:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6982:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6994:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7002:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "7010:6:2", - "type": "" - } - ], - "src": "6914:479:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7499:76:2", - "statements": [ + }, { - "nodeType": "YulAssignment", - "src": "7509:26:2", + "nodeType": "YulVariableDeclaration", + "src": "12296:29:2", "value": { "arguments": [ { - "name": "headStart", + "name": "value0", "nodeType": "YulIdentifier", - "src": "7521:9:2" + "src": "12314:6:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7532:2:2", - "type": "", - "value": "32" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12322:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7517:3:2" + "src": "12310:3:2" }, "nodeType": "YulFunctionCall", - "src": "7517:18:2" + "src": "12310:15:2" }, - "variableNames": [ + "variables": [ { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7509:4:2" + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "12300:6:2", + "type": "" } ] }, { - "expression": { - "arguments": [ + "nodeType": "YulVariableDeclaration", + "src": "12334:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12343:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "12338:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12402:501:2", + "statements": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7551:9:2" + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12423:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12436:6:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12444:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12432:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12432:22:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12460:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "12456:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12456:7:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12428:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12428:36:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12416:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12416:49:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12416:49:2" }, { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7562:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7544:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7544:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7544:25:2" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7468:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7479:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7490:4:2", - "type": "" - } - ], - "src": "7398:177:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7681:125:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7691:26:2", - "value": { + "nodeType": "YulVariableDeclaration", + "src": "12478:23:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "12494:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12488:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "12488:13:2" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "12482:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12514:29:2", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "12540:2:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12534:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "12534:9:2" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "12518:12:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12563:6:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12571:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12556:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12556:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12556:18:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12587:62:2", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "12619:12:2" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12637:6:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12645:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12633:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12633:15:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "12601:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "12601:48:2" + }, + "variables": [ + { + "name": "tail_3", + "nodeType": "YulTypedName", + "src": "12591:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12662:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "12694:2:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12698:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12690:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12690:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12684:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "12684:18:2" + }, + "variables": [ + { + "name": "memberValue0_1", + "nodeType": "YulTypedName", + "src": "12666:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12726:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12734:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12722:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12722:15:2" + }, + { + "arguments": [ + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "12743:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12751:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12739:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12739:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12715:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12715:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12715:44:2" + }, + { + "nodeType": "YulAssignment", + "src": "12772:51:2", + "value": { + "arguments": [ + { + "name": "memberValue0_1", + "nodeType": "YulIdentifier", + "src": "12800:14:2" + }, + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "12816:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "12782:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "12782:41:2" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12772:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "12836:25:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "12850:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12858:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12846:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12846:15:2" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "12836:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "12874:19:2", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12885:3:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12890:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12881:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12881:12:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12874:3:2" + } + ] + } + ] + }, + "condition": { "arguments": [ { - "name": "headStart", + "name": "i", "nodeType": "YulIdentifier", - "src": "7703:9:2" + "src": "12364:1:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7714:2:2", - "type": "", - "value": "32" + "name": "length", + "nodeType": "YulIdentifier", + "src": "12367:6:2" } ], "functionName": { - "name": "add", + "name": "lt", "nodeType": "YulIdentifier", - "src": "7699:3:2" + "src": "12361:2:2" }, "nodeType": "YulFunctionCall", - "src": "7699:18:2" + "src": "12361:13:2" }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7691:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7733:9:2" - }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "12375:18:2", + "statements": [ { - "arguments": [ - { - "name": "value0", + "nodeType": "YulAssignment", + "src": "12377:14:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12386:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12389:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", "nodeType": "YulIdentifier", - "src": "7748:6:2" + "src": "12382:3:2" }, + "nodeType": "YulFunctionCall", + "src": "12382:9:2" + }, + "variableNames": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7756:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" + "name": "i", + "nodeType": "YulIdentifier", + "src": "12377:1:2" } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7744:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7744:55:2" + ] } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7726:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7726:74:2" + ] }, - "nodeType": "YulExpressionStatement", - "src": "7726:74:2" + "pre": { + "nodeType": "YulBlock", + "src": "12357:3:2", + "statements": [] + }, + "src": "12353:550:2" + }, + { + "nodeType": "YulAssignment", + "src": "12912:14:2", + "value": { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12920:6:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12912:4:2" + } + ] } ] }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "name": "abi_encode_tuple_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "7650:9:2", + "src": "11952:9:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "7661:6:2", + "src": "11963:6:2", "type": "" } ], @@ -7136,21 +10693,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "7672:4:2", + "src": "11974:4:2", "type": "" } ], - "src": "7580:226:2" + "src": "11782:1150:2" }, { "body": { "nodeType": "YulBlock", - "src": "7950:486:2", + "src": "13040:223:2", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "7997:16:2", + "src": "13086:16:2", "statements": [ { "expression": { @@ -7158,14 +10715,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8006:1:2", + "src": "13095:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8009:1:2", + "src": "13098:1:2", "type": "", "value": "0" } @@ -7173,13 +10730,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "7999:6:2" + "src": "13088:6:2" }, "nodeType": "YulFunctionCall", - "src": "7999:12:2" + "src": "13088:12:2" }, "nodeType": "YulExpressionStatement", - "src": "7999:12:2" + "src": "13088:12:2" } ] }, @@ -7190,71 +10747,71 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "7971:7:2" + "src": "13061:7:2" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7980:9:2" + "src": "13070:9:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "7967:3:2" + "src": "13057:3:2" }, "nodeType": "YulFunctionCall", - "src": "7967:23:2" + "src": "13057:23:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7992:3:2", + "src": "13082:2:2", "type": "", - "value": "128" + "value": "96" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "7963:3:2" + "src": "13053:3:2" }, "nodeType": "YulFunctionCall", - "src": "7963:33:2" + "src": "13053:32:2" }, "nodeType": "YulIf", - "src": "7960:53:2" + "src": "13050:52:2" }, { "nodeType": "YulAssignment", - "src": "8022:33:2", + "src": "13111:33:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8045:9:2" + "src": "13134:9:2" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "8032:12:2" + "src": "13121:12:2" }, "nodeType": "YulFunctionCall", - "src": "8032:23:2" + "src": "13121:23:2" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "8022:6:2" + "src": "13111:6:2" } ] }, { "nodeType": "YulAssignment", - "src": "8064:47:2", + "src": "13153:48:2", "value": { "arguments": [ { @@ -7262,12 +10819,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8096:9:2" + "src": "13186:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8107:2:2", + "src": "13197:2:2", "type": "", "value": "32" } @@ -7275,31 +10832,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8092:3:2" + "src": "13182:3:2" }, "nodeType": "YulFunctionCall", - "src": "8092:18:2" + "src": "13182:18:2" } ], "functionName": { - "name": "abi_decode_uint64", + "name": "abi_decode_address", "nodeType": "YulIdentifier", - "src": "8074:17:2" + "src": "13163:18:2" }, "nodeType": "YulFunctionCall", - "src": "8074:37:2" + "src": "13163:38:2" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "8064:6:2" + "src": "13153:6:2" } ] }, { "nodeType": "YulAssignment", - "src": "8120:48:2", + "src": "13210:47:2", "value": { "arguments": [ { @@ -7307,12 +10864,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8153:9:2" + "src": "13242:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8164:2:2", + "src": "13253:2:2", "type": "", "value": "64" } @@ -7320,284 +10877,187 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8149:3:2" + "src": "13238:3:2" }, "nodeType": "YulFunctionCall", - "src": "8149:18:2" + "src": "13238:18:2" } ], "functionName": { - "name": "abi_decode_address", + "name": "abi_decode_uint64", "nodeType": "YulIdentifier", - "src": "8130:18:2" + "src": "13220:17:2" }, "nodeType": "YulFunctionCall", - "src": "8130:38:2" + "src": "13220:37:2" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "8120:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8177:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8208:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8219:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8204:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8204:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8191:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "8191:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8181:6:2", - "type": "" + "src": "13210:6:2" } ] - }, + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_addresst_uint64", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12990:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "13001:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "13013:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "13021:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "13029:6:2", + "type": "" + } + ], + "src": "12937:326:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13387:99:2", + "statements": [ { - "body": { - "nodeType": "YulBlock", - "src": "8266:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8275:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8278:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8268:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8268:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8268:12:2" - } - ] - }, - "condition": { + "expression": { "arguments": [ { - "name": "offset", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "8238:6:2" + "src": "13404:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8246:18:2", + "src": "13415:2:2", "type": "", - "value": "0xffffffffffffffff" + "value": "32" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "8235:2:2" + "src": "13397:6:2" }, "nodeType": "YulFunctionCall", - "src": "8235:30:2" + "src": "13397:21:2" }, - "nodeType": "YulIf", - "src": "8232:50:2" + "nodeType": "YulExpressionStatement", + "src": "13397:21:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "8291:85:2", + "nodeType": "YulAssignment", + "src": "13427:53:2", "value": { "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "13453:6:2" + }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8348:9:2" + "src": "13465:9:2" }, { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8359:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "13476:2:2", + "type": "", + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8344:3:2" + "src": "13461:3:2" }, "nodeType": "YulFunctionCall", - "src": "8344:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8368:7:2" + "src": "13461:18:2" } ], "functionName": { - "name": "abi_decode_string_calldata", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "8317:26:2" + "src": "13435:17:2" }, "nodeType": "YulFunctionCall", - "src": "8317:59:2" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "8295:8:2", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "8305:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8385:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "8395:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "8385:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8412:18:2", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "8422:8:2" + "src": "13435:45:2" }, "variableNames": [ { - "name": "value4", + "name": "tail", "nodeType": "YulIdentifier", - "src": "8412:6:2" + "src": "13427:4:2" } ] } ] }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_addresst_bytes_calldata_ptr", + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "7884:9:2", + "src": "13356:9:2", "type": "" }, { - "name": "dataEnd", + "name": "value0", "nodeType": "YulTypedName", - "src": "7895:7:2", + "src": "13367:6:2", "type": "" } ], "returnVariables": [ { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7907:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7915:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "7923:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "7931:6:2", - "type": "" - }, - { - "name": "value4", + "name": "tail", "nodeType": "YulTypedName", - "src": "7939:6:2", + "src": "13378:4:2", "type": "" } ], - "src": "7811:625:2" + "src": "13268:218:2" }, { "body": { "nodeType": "YulBlock", - "src": "8599:702:2", + "src": "13613:427:2", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "8646:16:2", + "src": "13659:16:2", "statements": [ { "expression": { @@ -7605,14 +11065,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8655:1:2", + "src": "13668:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8658:1:2", + "src": "13671:1:2", "type": "", "value": "0" } @@ -7620,13 +11080,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8648:6:2" + "src": "13661:6:2" }, "nodeType": "YulFunctionCall", - "src": "8648:12:2" + "src": "13661:12:2" }, "nodeType": "YulExpressionStatement", - "src": "8648:12:2" + "src": "13661:12:2" } ] }, @@ -7637,71 +11097,71 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "8620:7:2" + "src": "13634:7:2" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8629:9:2" + "src": "13643:9:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "8616:3:2" + "src": "13630:3:2" }, "nodeType": "YulFunctionCall", - "src": "8616:23:2" + "src": "13630:23:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8641:3:2", + "src": "13655:2:2", "type": "", - "value": "128" + "value": "96" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "8612:3:2" + "src": "13626:3:2" }, "nodeType": "YulFunctionCall", - "src": "8612:33:2" + "src": "13626:32:2" }, "nodeType": "YulIf", - "src": "8609:53:2" + "src": "13623:52:2" }, { "nodeType": "YulAssignment", - "src": "8671:33:2", + "src": "13684:33:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8694:9:2" + "src": "13707:9:2" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "8681:12:2" + "src": "13694:12:2" }, "nodeType": "YulFunctionCall", - "src": "8681:23:2" + "src": "13694:23:2" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "8671:6:2" + "src": "13684:6:2" } ] }, { "nodeType": "YulAssignment", - "src": "8713:47:2", + "src": "13726:47:2", "value": { "arguments": [ { @@ -7709,12 +11169,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8745:9:2" + "src": "13758:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8756:2:2", + "src": "13769:2:2", "type": "", "value": "32" } @@ -7722,31 +11182,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8741:3:2" + "src": "13754:3:2" }, "nodeType": "YulFunctionCall", - "src": "8741:18:2" + "src": "13754:18:2" } ], "functionName": { "name": "abi_decode_uint64", "nodeType": "YulIdentifier", - "src": "8723:17:2" + "src": "13736:17:2" }, "nodeType": "YulFunctionCall", - "src": "8723:37:2" + "src": "13736:37:2" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "8713:6:2" + "src": "13726:6:2" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "8769:46:2", + "src": "13782:46:2", "value": { "arguments": [ { @@ -7754,12 +11214,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8800:9:2" + "src": "13813:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8811:2:2", + "src": "13824:2:2", "type": "", "value": "64" } @@ -7767,44 +11227,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8796:3:2" + "src": "13809:3:2" }, "nodeType": "YulFunctionCall", - "src": "8796:18:2" + "src": "13809:18:2" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "8783:12:2" + "src": "13796:12:2" }, "nodeType": "YulFunctionCall", - "src": "8783:32:2" + "src": "13796:32:2" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "8773:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8824:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8834:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "8828:2:2", + "src": "13786:6:2", "type": "" } ] @@ -7812,7 +11253,7 @@ { "body": { "nodeType": "YulBlock", - "src": "8879:16:2", + "src": "13871:16:2", "statements": [ { "expression": { @@ -7820,14 +11261,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8888:1:2", + "src": "13880:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8891:1:2", + "src": "13883:1:2", "type": "", "value": "0" } @@ -7835,13 +11276,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8881:6:2" + "src": "13873:6:2" }, "nodeType": "YulFunctionCall", - "src": "8881:12:2" + "src": "13873:12:2" }, "nodeType": "YulExpressionStatement", - "src": "8881:12:2" + "src": "13873:12:2" } ] }, @@ -7850,28 +11291,30 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "8867:6:2" + "src": "13843:6:2" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8875:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "13851:18:2", + "type": "", + "value": "0xffffffffffffffff" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "8864:2:2" + "src": "13840:2:2" }, "nodeType": "YulFunctionCall", - "src": "8864:14:2" + "src": "13840:30:2" }, "nodeType": "YulIf", - "src": "8861:34:2" + "src": "13837:50:2" }, { "nodeType": "YulVariableDeclaration", - "src": "8904:85:2", + "src": "13896:84:2", "value": { "arguments": [ { @@ -7879,291 +11322,98 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8961:9:2" + "src": "13952:9:2" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "8972:6:2" + "src": "13963:6:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8957:3:2" + "src": "13948:3:2" }, "nodeType": "YulFunctionCall", - "src": "8957:22:2" + "src": "13948:22:2" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "8981:7:2" + "src": "13972:7:2" } ], "functionName": { - "name": "abi_decode_string_calldata", + "name": "abi_decode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "8930:26:2" + "src": "13922:25:2" }, "nodeType": "YulFunctionCall", - "src": "8930:59:2" + "src": "13922:58:2" }, "variables": [ { "name": "value2_1", "nodeType": "YulTypedName", - "src": "8908:8:2", + "src": "13900:8:2", "type": "" }, { "name": "value3_1", "nodeType": "YulTypedName", - "src": "8918:8:2", + "src": "13910:8:2", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "8998:18:2", + "src": "13989:18:2", "value": { "name": "value2_1", "nodeType": "YulIdentifier", - "src": "9008:8:2" + "src": "13999:8:2" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "8998:6:2" + "src": "13989:6:2" } ] }, { "nodeType": "YulAssignment", - "src": "9025:18:2", + "src": "14016:18:2", "value": { "name": "value3_1", "nodeType": "YulIdentifier", - "src": "9035:8:2" + "src": "14026:8:2" }, "variableNames": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "9025:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9052:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9085:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9096:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9081:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9081:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9068:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "9068:32:2" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "9056:8:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9129:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9138:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9141:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9131:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9131:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9131:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "9115:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9125:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9112:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "9112:16:2" - }, - "nodeType": "YulIf", - "src": "9109:36:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9154:87:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9211:9:2" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "9222:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9207:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9207:24:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9233:7:2" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9180:26:2" - }, - "nodeType": "YulFunctionCall", - "src": "9180:61:2" - }, - "variables": [ - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "9158:8:2", - "type": "" - }, - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "9168:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9250:18:2", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "9260:8:2" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "9250:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9277:18:2", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "9287:8:2" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "9277:6:2" + "src": "14016:6:2" } ] } ] }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptrt_bytes_calldata_ptr", + "name": "abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "8525:9:2", + "src": "13555:9:2", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "8536:7:2", + "src": "13566:7:2", "type": "" } ], @@ -8171,558 +11421,789 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "8548:6:2", + "src": "13578:6:2", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "8556:6:2", + "src": "13586:6:2", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "8564:6:2", + "src": "13594:6:2", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "8572:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "8580:6:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "8588:6:2", + "src": "13602:6:2", "type": "" } ], - "src": "8441:860:2" + "src": "13491:549:2" }, { "body": { "nodeType": "YulBlock", - "src": "9401:92:2", + "src": "14219:179:2", "statements": [ { - "nodeType": "YulAssignment", - "src": "9411:26:2", - "value": { + "expression": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9423:9:2" + "src": "14236:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9434:2:2", + "src": "14247:2:2", "type": "", "value": "32" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "9419:3:2" + "src": "14229:6:2" }, "nodeType": "YulFunctionCall", - "src": "9419:18:2" + "src": "14229:21:2" }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9411:4:2" - } - ] + "nodeType": "YulExpressionStatement", + "src": "14229:21:2" }, { "expression": { "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9453:9:2" - }, { "arguments": [ { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9478:6:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "9471:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9471:14:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14270:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14281:2:2", + "type": "", + "value": "32" } ], "functionName": { - "name": "iszero", + "name": "add", "nodeType": "YulIdentifier", - "src": "9464:6:2" + "src": "14266:3:2" }, "nodeType": "YulFunctionCall", - "src": "9464:22:2" + "src": "14266:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14286:2:2", + "type": "", + "value": "29" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9446:6:2" + "src": "14259:6:2" }, "nodeType": "YulFunctionCall", - "src": "9446:41:2" + "src": "14259:30:2" }, "nodeType": "YulExpressionStatement", - "src": "9446:41:2" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9370:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9381:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9392:4:2", - "type": "" - } - ], - "src": "9306:187:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9568:116:2", - "statements": [ + "src": "14259:30:2" + }, { - "body": { - "nodeType": "YulBlock", - "src": "9614:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9623:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9626:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9616:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9616:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9616:12:2" - } - ] - }, - "condition": { + "expression": { "arguments": [ { "arguments": [ { - "name": "dataEnd", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "9589:7:2" + "src": "14309:9:2" }, { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9598:9:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14320:2:2", + "type": "", + "value": "64" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "9585:3:2" + "src": "14305:3:2" }, "nodeType": "YulFunctionCall", - "src": "9585:23:2" + "src": "14305:18:2" }, { - "kind": "number", + "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", + "kind": "string", "nodeType": "YulLiteral", - "src": "9610:2:2", + "src": "14325:31:2", "type": "", - "value": "32" + "value": "Must called by the task owner" } ], "functionName": { - "name": "slt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "9581:3:2" + "src": "14298:6:2" }, "nodeType": "YulFunctionCall", - "src": "9581:32:2" + "src": "14298:59:2" }, - "nodeType": "YulIf", - "src": "9578:52:2" + "nodeType": "YulExpressionStatement", + "src": "14298:59:2" }, { "nodeType": "YulAssignment", - "src": "9639:39:2", + "src": "14366:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9668:9:2" + "src": "14378:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14389:2:2", + "type": "", + "value": "96" } ], "functionName": { - "name": "abi_decode_address", + "name": "add", "nodeType": "YulIdentifier", - "src": "9649:18:2" + "src": "14374:3:2" }, "nodeType": "YulFunctionCall", - "src": "9649:29:2" + "src": "14374:18:2" }, "variableNames": [ { - "name": "value0", + "name": "tail", "nodeType": "YulIdentifier", - "src": "9639:6:2" + "src": "14366:4:2" } ] } ] }, - "name": "abi_decode_tuple_t_address", + "name": "abi_encode_tuple_t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "9534:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9545:7:2", + "src": "14196:9:2", "type": "" } ], "returnVariables": [ { - "name": "value0", + "name": "tail", "nodeType": "YulTypedName", - "src": "9557:6:2", + "src": "14210:4:2", "type": "" } ], - "src": "9498:186:2" + "src": "14045:353:2" }, { "body": { "nodeType": "YulBlock", - "src": "9758:115:2", + "src": "14577:175:2", "statements": [ { - "body": { - "nodeType": "YulBlock", - "src": "9804:16:2", - "statements": [ + "expression": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9813:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9816:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14594:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14605:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14587:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "14587:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "14587:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", "nodeType": "YulIdentifier", - "src": "9806:6:2" + "src": "14628:9:2" }, - "nodeType": "YulFunctionCall", - "src": "9806:12:2" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14639:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14624:3:2" }, - "nodeType": "YulExpressionStatement", - "src": "9806:12:2" + "nodeType": "YulFunctionCall", + "src": "14624:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14644:2:2", + "type": "", + "value": "25" } - ] + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14617:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "14617:30:2" }, - "condition": { + "nodeType": "YulExpressionStatement", + "src": "14617:30:2" + }, + { + "expression": { "arguments": [ { "arguments": [ { - "name": "dataEnd", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "9779:7:2" + "src": "14667:9:2" }, { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9788:9:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14678:2:2", + "type": "", + "value": "64" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "9775:3:2" + "src": "14663:3:2" }, "nodeType": "YulFunctionCall", - "src": "9775:23:2" + "src": "14663:18:2" }, { - "kind": "number", + "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", + "kind": "string", "nodeType": "YulLiteral", - "src": "9800:2:2", + "src": "14683:27:2", "type": "", - "value": "32" + "value": "this round does not exist" } ], "functionName": { - "name": "slt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "9771:3:2" + "src": "14656:6:2" }, "nodeType": "YulFunctionCall", - "src": "9771:32:2" + "src": "14656:55:2" }, - "nodeType": "YulIf", - "src": "9768:52:2" + "nodeType": "YulExpressionStatement", + "src": "14656:55:2" }, { "nodeType": "YulAssignment", - "src": "9829:38:2", + "src": "14720:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9857:9:2" + "src": "14732:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14743:2:2", + "type": "", + "value": "96" } ], "functionName": { - "name": "abi_decode_uint64", + "name": "add", "nodeType": "YulIdentifier", - "src": "9839:17:2" + "src": "14728:3:2" }, "nodeType": "YulFunctionCall", - "src": "9839:28:2" + "src": "14728:18:2" }, "variableNames": [ { - "name": "value0", + "name": "tail", "nodeType": "YulIdentifier", - "src": "9829:6:2" + "src": "14720:4:2" } ] } ] }, - "name": "abi_decode_tuple_t_uint64", + "name": "abi_encode_tuple_t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "9724:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9735:7:2", + "src": "14554:9:2", "type": "" } ], "returnVariables": [ { - "name": "value0", + "name": "tail", "nodeType": "YulTypedName", - "src": "9747:6:2", + "src": "14568:4:2", "type": "" } ], - "src": "9689:184:2" + "src": "14403:349:2" }, { "body": { "nodeType": "YulBlock", - "src": "9981:223:2", + "src": "14789:152:2", "statements": [ { - "body": { - "nodeType": "YulBlock", - "src": "10027:16:2", - "statements": [ + "expression": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10036:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10039:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10029:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10029:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10029:12:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14806:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14809:77:2", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } - ] + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14799:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "14799:88:2" }, - "condition": { + "nodeType": "YulExpressionStatement", + "src": "14799:88:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14903:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14906:4:2", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14896:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "14896:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "14896:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14927:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14930:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14920:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "14920:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "14920:15:2" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "14757:184:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14978:152:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14995:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14998:77:2", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14988:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "14988:88:2" + }, + "nodeType": "YulExpressionStatement", + "src": "14988:88:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15092:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15095:4:2", + "type": "", + "value": "0x21" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15085:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "15085:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "15085:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15116:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15119:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "15109:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "15109:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "15109:15:2" + } + ] + }, + "name": "panic_error_0x21", + "nodeType": "YulFunctionDefinition", + "src": "14946:184:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15262:144:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15272:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15284:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15295:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15280:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "15280:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15272:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15314:9:2" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "15325:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15307:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "15307:25:2" + }, + "nodeType": "YulExpressionStatement", + "src": "15307:25:2" + }, + { + "expression": { "arguments": [ { "arguments": [ { - "name": "dataEnd", + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15352:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15363:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15348:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "15348:18:2" + }, + { + "arguments": [ + { + "name": "value1", "nodeType": "YulIdentifier", - "src": "10002:7:2" + "src": "15372:6:2" }, { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10011:9:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15380:18:2", + "type": "", + "value": "0xffffffffffffffff" } ], "functionName": { - "name": "sub", + "name": "and", "nodeType": "YulIdentifier", - "src": "9998:3:2" + "src": "15368:3:2" }, "nodeType": "YulFunctionCall", - "src": "9998:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10023:2:2", - "type": "", - "value": "96" + "src": "15368:31:2" } ], "functionName": { - "name": "slt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "9994:3:2" + "src": "15341:6:2" }, "nodeType": "YulFunctionCall", - "src": "9994:32:2" + "src": "15341:59:2" }, - "nodeType": "YulIf", - "src": "9991:52:2" - }, + "nodeType": "YulExpressionStatement", + "src": "15341:59:2" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "15223:9:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "15234:6:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "15242:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "15253:4:2", + "type": "" + } + ], + "src": "15135:271:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15585:165:2", + "statements": [ { - "nodeType": "YulAssignment", - "src": "10052:33:2", - "value": { + "expression": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10075:9:2" + "src": "15602:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15613:2:2", + "type": "", + "value": "32" } ], "functionName": { - "name": "calldataload", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "10062:12:2" + "src": "15595:6:2" }, "nodeType": "YulFunctionCall", - "src": "10062:23:2" + "src": "15595:21:2" }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10052:6:2" - } - ] + "nodeType": "YulExpressionStatement", + "src": "15595:21:2" }, { - "nodeType": "YulAssignment", - "src": "10094:47:2", - "value": { + "expression": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10126:9:2" + "src": "15636:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10137:2:2", + "src": "15647:2:2", "type": "", "value": "32" } @@ -8730,44 +12211,44 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10122:3:2" + "src": "15632:3:2" }, "nodeType": "YulFunctionCall", - "src": "10122:18:2" + "src": "15632:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15652:2:2", + "type": "", + "value": "15" } ], "functionName": { - "name": "abi_decode_uint64", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "10104:17:2" + "src": "15625:6:2" }, "nodeType": "YulFunctionCall", - "src": "10104:37:2" + "src": "15625:30:2" }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10094:6:2" - } - ] + "nodeType": "YulExpressionStatement", + "src": "15625:30:2" }, { - "nodeType": "YulAssignment", - "src": "10150:48:2", - "value": { + "expression": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10183:9:2" + "src": "15675:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10194:2:2", + "src": "15686:2:2", "type": "", "value": "64" } @@ -8775,72 +12256,91 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10179:3:2" + "src": "15671:3:2" }, "nodeType": "YulFunctionCall", - "src": "10179:18:2" + "src": "15671:18:2" + }, + { + "hexValue": "5461736b206e6f7420657869737473", + "kind": "string", + "nodeType": "YulLiteral", + "src": "15691:17:2", + "type": "", + "value": "Task not exists" } ], "functionName": { - "name": "abi_decode_address", + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15664:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "15664:45:2" + }, + "nodeType": "YulExpressionStatement", + "src": "15664:45:2" + }, + { + "nodeType": "YulAssignment", + "src": "15718:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15730:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15741:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", "nodeType": "YulIdentifier", - "src": "10160:18:2" + "src": "15726:3:2" }, "nodeType": "YulFunctionCall", - "src": "10160:38:2" + "src": "15726:18:2" }, "variableNames": [ { - "name": "value2", + "name": "tail", "nodeType": "YulIdentifier", - "src": "10150:6:2" + "src": "15718:4:2" } ] } ] }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_address", + "name": "abi_encode_tuple_t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "9931:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9942:7:2", + "src": "15562:9:2", "type": "" } ], "returnVariables": [ { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9954:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9962:6:2", - "type": "" - }, - { - "name": "value2", + "name": "tail", "nodeType": "YulTypedName", - "src": "9970:6:2", + "src": "15576:4:2", "type": "" } ], - "src": "9878:326:2" + "src": "15411:339:2" }, { "body": { "nodeType": "YulBlock", - "src": "10360:378:2", + "src": "15929:296:2", "statements": [ { "expression": { @@ -8848,12 +12348,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10377:9:2" + "src": "15946:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10388:2:2", + "src": "15957:2:2", "type": "", "value": "32" } @@ -8861,41 +12361,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10370:6:2" + "src": "15939:6:2" }, "nodeType": "YulFunctionCall", - "src": "10370:21:2" + "src": "15939:21:2" }, "nodeType": "YulExpressionStatement", - "src": "10370:21:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10400:33:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10426:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10420:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "10420:13:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "10404:12:2", - "type": "" - } - ] + "src": "15939:21:2" }, { "expression": { @@ -8905,12 +12377,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10453:9:2" + "src": "15980:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10464:2:2", + "src": "15991:2:2", "type": "", "value": "32" } @@ -8918,126 +12390,121 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10449:3:2" + "src": "15976:3:2" }, "nodeType": "YulFunctionCall", - "src": "10449:18:2" + "src": "15976:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10469:4:2", + "src": "15996:2:2", "type": "", - "value": "0x40" + "value": "66" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10442:6:2" + "src": "15969:6:2" }, "nodeType": "YulFunctionCall", - "src": "10442:32:2" + "src": "15969:30:2" }, "nodeType": "YulExpressionStatement", - "src": "10442:32:2" + "src": "15969:30:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "10483:64:2", - "value": { + "expression": { "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "10514:12:2" - }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10532:9:2" + "src": "16019:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10543:2:2", + "src": "16030:2:2", "type": "", - "value": "96" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10528:3:2" + "src": "16015:3:2" }, "nodeType": "YulFunctionCall", - "src": "10528:18:2" + "src": "16015:18:2" + }, + { + "hexValue": "74686520726f756e6420686173206265656e20616c7265616479207374617274", + "kind": "string", + "nodeType": "YulLiteral", + "src": "16035:34:2", + "type": "", + "value": "the round has been already start" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "10497:16:2" + "src": "16008:6:2" }, "nodeType": "YulFunctionCall", - "src": "10497:50:2" + "src": "16008:62:2" }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "10487:6:2", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "16008:62:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "10556:44:2", - "value": { + "expression": { "arguments": [ { "arguments": [ { - "name": "value0", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "10588:6:2" + "src": "16090:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10596:2:2", + "src": "16101:2:2", "type": "", - "value": "32" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10584:3:2" + "src": "16086:3:2" }, "nodeType": "YulFunctionCall", - "src": "10584:15:2" + "src": "16086:18:2" + }, + { + "hexValue": "6564206f72207468652070726520726f756e6420646f6573206e6f7420657869", + "kind": "string", + "nodeType": "YulLiteral", + "src": "16106:34:2", + "type": "", + "value": "ed or the pre round does not exi" } ], "functionName": { - "name": "mload", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "10578:5:2" + "src": "16079:6:2" }, "nodeType": "YulFunctionCall", - "src": "10578:22:2" + "src": "16079:62:2" }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "10560:14:2", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "16079:62:2" }, { "expression": { @@ -9047,133 +12514,87 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10620:9:2" + "src": "16161:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10631:4:2", + "src": "16172:3:2", "type": "", - "value": "0x40" + "value": "128" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10616:3:2" + "src": "16157:3:2" }, "nodeType": "YulFunctionCall", - "src": "10616:20:2" + "src": "16157:19:2" }, { - "arguments": [ - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10646:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10654:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10642:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10642:22:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10670:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "10666:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10666:7:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10638:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10638:36:2" + "hexValue": "7374", + "kind": "string", + "nodeType": "YulLiteral", + "src": "16178:4:2", + "type": "", + "value": "st" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10609:6:2" + "src": "16150:6:2" }, "nodeType": "YulFunctionCall", - "src": "10609:66:2" + "src": "16150:33:2" }, "nodeType": "YulExpressionStatement", - "src": "10609:66:2" + "src": "16150:33:2" }, { "nodeType": "YulAssignment", - "src": "10684:48:2", + "src": "16192:27:2", "value": { "arguments": [ { - "name": "memberValue0_1", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "10709:14:2" + "src": "16204:9:2" }, { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10725:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16215:3:2", + "type": "", + "value": "160" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "add", "nodeType": "YulIdentifier", - "src": "10692:16:2" + "src": "16200:3:2" }, "nodeType": "YulFunctionCall", - "src": "10692:40:2" + "src": "16200:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "10684:4:2" + "src": "16192:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_struct$_Candidate_$65_memory_ptr__to_t_struct$_Candidate_$65_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "10329:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10340:6:2", + "src": "15906:9:2", "type": "" } ], @@ -9181,138 +12602,266 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "10351:4:2", + "src": "15920:4:2", "type": "" } ], - "src": "10209:529:2" + "src": "15755:470:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16262:152:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16279:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16282:77:2", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16272:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "16272:88:2" + }, + "nodeType": "YulExpressionStatement", + "src": "16272:88:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16376:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16379:4:2", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16369:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "16369:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "16369:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16400:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16403:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "16393:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "16393:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "16393:15:2" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "16230:184:2" }, { "body": { "nodeType": "YulBlock", - "src": "10846:223:2", + "src": "16468:76:2", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "10892:16:2", + "src": "16490:22:2", "statements": [ { "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10901:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10904:1:2", - "type": "", - "value": "0" - } - ], + "arguments": [], "functionName": { - "name": "revert", + "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "10894:6:2" + "src": "16492:16:2" }, "nodeType": "YulFunctionCall", - "src": "10894:12:2" + "src": "16492:18:2" }, "nodeType": "YulExpressionStatement", - "src": "10894:12:2" + "src": "16492:18:2" } ] }, "condition": { "arguments": [ { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10867:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10876:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10863:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10863:23:2" + "name": "x", + "nodeType": "YulIdentifier", + "src": "16484:1:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10888:2:2", - "type": "", - "value": "96" + "name": "y", + "nodeType": "YulIdentifier", + "src": "16487:1:2" } ], "functionName": { - "name": "slt", + "name": "lt", "nodeType": "YulIdentifier", - "src": "10859:3:2" + "src": "16481:2:2" }, "nodeType": "YulFunctionCall", - "src": "10859:32:2" + "src": "16481:8:2" }, "nodeType": "YulIf", - "src": "10856:52:2" + "src": "16478:34:2" }, { "nodeType": "YulAssignment", - "src": "10917:33:2", + "src": "16521:17:2", "value": { "arguments": [ { - "name": "headStart", + "name": "x", + "nodeType": "YulIdentifier", + "src": "16533:1:2" + }, + { + "name": "y", "nodeType": "YulIdentifier", - "src": "10940:9:2" + "src": "16536:1:2" } ], "functionName": { - "name": "calldataload", + "name": "sub", "nodeType": "YulIdentifier", - "src": "10927:12:2" + "src": "16529:3:2" }, "nodeType": "YulFunctionCall", - "src": "10927:23:2" + "src": "16529:9:2" }, "variableNames": [ { - "name": "value0", + "name": "diff", "nodeType": "YulIdentifier", - "src": "10917:6:2" + "src": "16521:4:2" } ] + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "16450:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "16453:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "16459:4:2", + "type": "" + } + ], + "src": "16419:125:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16723:233:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16740:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16751:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16733:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "16733:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "16733:21:2" }, { - "nodeType": "YulAssignment", - "src": "10959:48:2", - "value": { + "expression": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10992:9:2" + "src": "16774:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11003:2:2", + "src": "16785:2:2", "type": "", "value": "32" } @@ -9320,210 +12869,165 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10988:3:2" + "src": "16770:3:2" }, "nodeType": "YulFunctionCall", - "src": "10988:18:2" + "src": "16770:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16790:2:2", + "type": "", + "value": "43" } ], "functionName": { - "name": "abi_decode_address", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "10969:18:2" + "src": "16763:6:2" }, "nodeType": "YulFunctionCall", - "src": "10969:38:2" + "src": "16763:30:2" }, - "variableNames": [ - { - "name": "value1", + "nodeType": "YulExpressionStatement", + "src": "16763:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16813:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16824:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16809:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "16809:18:2" + }, + { + "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f2073", + "kind": "string", + "nodeType": "YulLiteral", + "src": "16829:34:2", + "type": "", + "value": "senders length is not equal to s" + } + ], + "functionName": { + "name": "mstore", "nodeType": "YulIdentifier", - "src": "10959:6:2" - } - ] + "src": "16802:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "16802:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "16802:62:2" }, { - "nodeType": "YulAssignment", - "src": "11016:47:2", - "value": { + "expression": { "arguments": [ { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11048:9:2" + "src": "16884:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11059:2:2", + "src": "16895:2:2", "type": "", - "value": "64" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11044:3:2" + "src": "16880:3:2" }, "nodeType": "YulFunctionCall", - "src": "11044:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "11026:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "11026:37:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "11016:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_addresst_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10796:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10807:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10819:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10827:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10835:6:2", - "type": "" - } - ], - "src": "10743:326:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11193:98:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11210:9:2" + "src": "16880:18:2" }, { - "kind": "number", + "hexValue": "65656473206c656e677468", + "kind": "string", "nodeType": "YulLiteral", - "src": "11221:2:2", + "src": "16900:13:2", "type": "", - "value": "32" + "value": "eeds length" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11203:6:2" + "src": "16873:6:2" }, "nodeType": "YulFunctionCall", - "src": "11203:21:2" + "src": "16873:41:2" }, "nodeType": "YulExpressionStatement", - "src": "11203:21:2" + "src": "16873:41:2" }, { "nodeType": "YulAssignment", - "src": "11233:52:2", + "src": "16923:27:2", "value": { "arguments": [ { - "name": "value0", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "11258:6:2" + "src": "16935:9:2" }, { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11270:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11281:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11266:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11266:18:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16946:3:2", + "type": "", + "value": "128" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "add", "nodeType": "YulIdentifier", - "src": "11241:16:2" + "src": "16931:3:2" }, "nodeType": "YulFunctionCall", - "src": "11241:44:2" + "src": "16931:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "11233:4:2" + "src": "16923:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "11162:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11173:6:2", + "src": "16700:9:2", "type": "" } ], @@ -9531,21 +13035,49 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "11184:4:2", + "src": "16714:4:2", "type": "" } ], - "src": "11074:217:2" + "src": "16549:407:2" }, { "body": { "nodeType": "YulBlock", - "src": "11418:428:2", + "src": "17055:427:2", "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "17065:51:2", + "value": { + "arguments": [ + { + "name": "ptr_to_tail", + "nodeType": "YulIdentifier", + "src": "17104:11:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "17091:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "17091:25:2" + }, + "variables": [ + { + "name": "rel_offset_of_tail", + "nodeType": "YulTypedName", + "src": "17069:18:2", + "type": "" + } + ] + }, { "body": { "nodeType": "YulBlock", - "src": "11464:16:2", + "src": "17205:16:2", "statements": [ { "expression": { @@ -9553,14 +13085,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11473:1:2", + "src": "17214:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11476:1:2", + "src": "17217:1:2", "type": "", "value": "0" } @@ -9568,13 +13100,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "11466:6:2" + "src": "17207:6:2" }, "nodeType": "YulFunctionCall", - "src": "11466:12:2" + "src": "17207:12:2" }, "nodeType": "YulExpressionStatement", - "src": "11466:12:2" + "src": "17207:12:2" } ] }, @@ -9583,165 +13115,150 @@ { "arguments": [ { - "name": "dataEnd", + "name": "rel_offset_of_tail", "nodeType": "YulIdentifier", - "src": "11439:7:2" + "src": "17139:18:2" }, { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11448:9:2" + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nodeType": "YulIdentifier", + "src": "17167:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "17167:14:2" + }, + { + "name": "base_ref", + "nodeType": "YulIdentifier", + "src": "17183:8:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "17163:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17163:29:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17198:2:2", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "17194:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17194:7:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17159:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17159:43:2" } ], "functionName": { - "name": "sub", + "name": "slt", "nodeType": "YulIdentifier", - "src": "11435:3:2" + "src": "17135:3:2" }, "nodeType": "YulFunctionCall", - "src": "11435:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11460:2:2", - "type": "", - "value": "96" + "src": "17135:68:2" } ], "functionName": { - "name": "slt", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "11431:3:2" + "src": "17128:6:2" }, "nodeType": "YulFunctionCall", - "src": "11431:32:2" + "src": "17128:76:2" }, "nodeType": "YulIf", - "src": "11428:52:2" + "src": "17125:96:2" }, { - "nodeType": "YulAssignment", - "src": "11489:33:2", + "nodeType": "YulVariableDeclaration", + "src": "17230:47:2", "value": { "arguments": [ { - "name": "headStart", + "name": "base_ref", + "nodeType": "YulIdentifier", + "src": "17248:8:2" + }, + { + "name": "rel_offset_of_tail", "nodeType": "YulIdentifier", - "src": "11512:9:2" + "src": "17258:18:2" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "11499:12:2" + "src": "17244:3:2" }, "nodeType": "YulFunctionCall", - "src": "11499:23:2" + "src": "17244:33:2" }, - "variableNames": [ + "variables": [ { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11489:6:2" + "name": "addr_1", + "nodeType": "YulTypedName", + "src": "17234:6:2", + "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11531:47:2", + "src": "17286:30:2", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11563:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11574:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11559:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11559:18:2" + "name": "addr_1", + "nodeType": "YulIdentifier", + "src": "17309:6:2" } ], "functionName": { - "name": "abi_decode_uint64", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "11541:17:2" + "src": "17296:12:2" }, "nodeType": "YulFunctionCall", - "src": "11541:37:2" + "src": "17296:20:2" }, "variableNames": [ { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11531:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11587:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11618:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11629:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11614:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11614:18:2" - } - ], - "functionName": { - "name": "calldataload", + "name": "length", "nodeType": "YulIdentifier", - "src": "11601:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "11601:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "11591:6:2", - "type": "" + "src": "17286:6:2" } ] }, { "body": { "nodeType": "YulBlock", - "src": "11676:16:2", + "src": "17359:16:2", "statements": [ { "expression": { @@ -9749,14 +13266,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11685:1:2", + "src": "17368:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11688:1:2", + "src": "17371:1:2", "type": "", "value": "0" } @@ -9764,27 +13281,27 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "11678:6:2" + "src": "17361:6:2" }, "nodeType": "YulFunctionCall", - "src": "11678:12:2" + "src": "17361:12:2" }, "nodeType": "YulExpressionStatement", - "src": "11678:12:2" + "src": "17361:12:2" } ] }, "condition": { "arguments": [ { - "name": "offset", + "name": "length", "nodeType": "YulIdentifier", - "src": "11648:6:2" + "src": "17331:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11656:18:2", + "src": "17339:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -9792,151 +13309,167 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "11645:2:2" + "src": "17328:2:2" }, "nodeType": "YulFunctionCall", - "src": "11645:30:2" + "src": "17328:30:2" }, "nodeType": "YulIf", - "src": "11642:50:2" + "src": "17325:50:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "11701:85:2", + "nodeType": "YulAssignment", + "src": "17384:25:2", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11758:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11769:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11754:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11754:22:2" + "name": "addr_1", + "nodeType": "YulIdentifier", + "src": "17396:6:2" }, { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11778:7:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "17404:4:2", + "type": "", + "value": "0x20" } ], "functionName": { - "name": "abi_decode_string_calldata", + "name": "add", "nodeType": "YulIdentifier", - "src": "11727:26:2" + "src": "17392:3:2" }, "nodeType": "YulFunctionCall", - "src": "11727:59:2" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "11705:8:2", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "11715:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11795:18:2", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "11805:8:2" + "src": "17392:17:2" }, "variableNames": [ { - "name": "value2", + "name": "addr", "nodeType": "YulIdentifier", - "src": "11795:6:2" + "src": "17384:4:2" } ] }, { - "nodeType": "YulAssignment", - "src": "11822:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "11832:8:2" + "body": { + "nodeType": "YulBlock", + "src": "17460:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17469:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17472:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "17462:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "17462:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "17462:12:2" + } + ] }, - "variableNames": [ - { - "name": "value3", + "condition": { + "arguments": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "17425:4:2" + }, + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nodeType": "YulIdentifier", + "src": "17435:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "17435:14:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "17451:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "17431:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17431:27:2" + } + ], + "functionName": { + "name": "sgt", "nodeType": "YulIdentifier", - "src": "11822:6:2" - } - ] + "src": "17421:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17421:38:2" + }, + "nodeType": "YulIf", + "src": "17418:58:2" } ] }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptr", + "name": "access_calldata_tail_t_bytes_calldata_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", + "name": "base_ref", "nodeType": "YulTypedName", - "src": "11360:9:2", + "src": "17012:8:2", "type": "" }, { - "name": "dataEnd", + "name": "ptr_to_tail", "nodeType": "YulTypedName", - "src": "11371:7:2", + "src": "17022:11:2", "type": "" } ], "returnVariables": [ { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11383:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11391:6:2", - "type": "" - }, - { - "name": "value2", + "name": "addr", "nodeType": "YulTypedName", - "src": "11399:6:2", + "src": "17038:4:2", "type": "" }, { - "name": "value3", + "name": "length", "nodeType": "YulTypedName", - "src": "11407:6:2", + "src": "17044:6:2", "type": "" } ], - "src": "11296:550:2" + "src": "16961:521:2" }, { "body": { "nodeType": "YulBlock", - "src": "12025:179:2", + "src": "17661:236:2", "statements": [ { "expression": { @@ -9944,12 +13477,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12042:9:2" + "src": "17678:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12053:2:2", + "src": "17689:2:2", "type": "", "value": "32" } @@ -9957,13 +13490,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12035:6:2" + "src": "17671:6:2" }, "nodeType": "YulFunctionCall", - "src": "12035:21:2" + "src": "17671:21:2" }, "nodeType": "YulExpressionStatement", - "src": "12035:21:2" + "src": "17671:21:2" }, { "expression": { @@ -9973,12 +13506,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12076:9:2" + "src": "17712:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12087:2:2", + "src": "17723:2:2", "type": "", "value": "32" } @@ -9986,29 +13519,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12072:3:2" + "src": "17708:3:2" }, "nodeType": "YulFunctionCall", - "src": "12072:18:2" + "src": "17708:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12092:2:2", + "src": "17728:2:2", "type": "", - "value": "29" + "value": "46" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12065:6:2" + "src": "17701:6:2" }, "nodeType": "YulFunctionCall", - "src": "12065:30:2" + "src": "17701:30:2" }, "nodeType": "YulExpressionStatement", - "src": "12065:30:2" + "src": "17701:30:2" }, { "expression": { @@ -10018,12 +13551,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12115:9:2" + "src": "17751:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12126:2:2", + "src": "17762:2:2", "type": "", "value": "64" } @@ -10031,91 +13564,256 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12111:3:2" + "src": "17747:3:2" }, "nodeType": "YulFunctionCall", - "src": "12111:18:2" + "src": "17747:18:2" }, { - "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d697420", "kind": "string", "nodeType": "YulLiteral", - "src": "12131:31:2", + "src": "17767:34:2", "type": "", - "value": "Must called by the task owner" + "value": "commitment length exceeds limit " + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17740:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "17740:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "17740:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17822:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17833:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17818:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17818:18:2" + }, + { + "hexValue": "6f7220697420697320656d707479", + "kind": "string", + "nodeType": "YulLiteral", + "src": "17838:16:2", + "type": "", + "value": "or it is empty" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17811:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "17811:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "17811:44:2" + }, + { + "nodeType": "YulAssignment", + "src": "17864:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17876:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17887:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17872:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17872:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17864:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "17638:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "17652:4:2", + "type": "" + } + ], + "src": "17487:410:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17949:88:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "17980:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "17982:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "17982:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "17982:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "17965:5:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17976:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "17972:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "17972:6:2" } ], "functionName": { - "name": "mstore", + "name": "eq", "nodeType": "YulIdentifier", - "src": "12104:6:2" + "src": "17962:2:2" }, "nodeType": "YulFunctionCall", - "src": "12104:59:2" + "src": "17962:17:2" }, - "nodeType": "YulExpressionStatement", - "src": "12104:59:2" + "nodeType": "YulIf", + "src": "17959:43:2" }, { "nodeType": "YulAssignment", - "src": "12172:26:2", + "src": "18011:20:2", "value": { "arguments": [ { - "name": "headStart", + "name": "value", "nodeType": "YulIdentifier", - "src": "12184:9:2" + "src": "18022:5:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12195:2:2", + "src": "18029:1:2", "type": "", - "value": "96" + "value": "1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12180:3:2" + "src": "18018:3:2" }, "nodeType": "YulFunctionCall", - "src": "12180:18:2" + "src": "18018:13:2" }, "variableNames": [ { - "name": "tail", + "name": "ret", "nodeType": "YulIdentifier", - "src": "12172:4:2" + "src": "18011:3:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063__to_t_string_memory_ptr__fromStack_reversed", + "name": "increment_t_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", + "name": "value", "nodeType": "YulTypedName", - "src": "12002:9:2", + "src": "17931:5:2", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "ret", "nodeType": "YulTypedName", - "src": "12016:4:2", + "src": "17941:3:2", "type": "" } ], - "src": "11851:353:2" + "src": "17902:135:2" }, { "body": { "nodeType": "YulBlock", - "src": "12383:175:2", + "src": "18216:172:2", "statements": [ { "expression": { @@ -10123,12 +13821,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12400:9:2" + "src": "18233:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12411:2:2", + "src": "18244:2:2", "type": "", "value": "32" } @@ -10136,13 +13834,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12393:6:2" + "src": "18226:6:2" }, "nodeType": "YulFunctionCall", - "src": "12393:21:2" + "src": "18226:21:2" }, "nodeType": "YulExpressionStatement", - "src": "12393:21:2" + "src": "18226:21:2" }, { "expression": { @@ -10152,12 +13850,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12434:9:2" + "src": "18267:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12445:2:2", + "src": "18278:2:2", "type": "", "value": "32" } @@ -10165,29 +13863,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12430:3:2" + "src": "18263:3:2" }, "nodeType": "YulFunctionCall", - "src": "12430:18:2" + "src": "18263:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12450:2:2", + "src": "18283:2:2", "type": "", - "value": "25" + "value": "22" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12423:6:2" + "src": "18256:6:2" }, "nodeType": "YulFunctionCall", - "src": "12423:30:2" + "src": "18256:30:2" }, "nodeType": "YulExpressionStatement", - "src": "12423:30:2" + "src": "18256:30:2" }, { "expression": { @@ -10197,12 +13895,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12473:9:2" + "src": "18306:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12484:2:2", + "src": "18317:2:2", "type": "", "value": "64" } @@ -10210,45 +13908,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12469:3:2" + "src": "18302:3:2" }, "nodeType": "YulFunctionCall", - "src": "12469:18:2" + "src": "18302:18:2" }, { - "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", + "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", "kind": "string", "nodeType": "YulLiteral", - "src": "12489:27:2", + "src": "18322:24:2", "type": "", - "value": "this round does not exist" + "value": "not in upload ss phase" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12462:6:2" + "src": "18295:6:2" }, "nodeType": "YulFunctionCall", - "src": "12462:55:2" + "src": "18295:52:2" }, "nodeType": "YulExpressionStatement", - "src": "12462:55:2" + "src": "18295:52:2" }, { "nodeType": "YulAssignment", - "src": "12526:26:2", + "src": "18356:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12538:9:2" + "src": "18368:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12549:2:2", + "src": "18379:2:2", "type": "", "value": "96" } @@ -10256,28 +13954,28 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12534:3:2" + "src": "18364:3:2" }, "nodeType": "YulFunctionCall", - "src": "12534:18:2" + "src": "18364:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "12526:4:2" + "src": "18356:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "12360:9:2", + "src": "18193:9:2", "type": "" } ], @@ -10285,371 +13983,308 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "12374:4:2", + "src": "18207:4:2", "type": "" } ], - "src": "12209:349:2" + "src": "18042:346:2" }, { "body": { "nodeType": "YulBlock", - "src": "12595:152:2", + "src": "18448:382:2", "statements": [ { - "expression": { + "nodeType": "YulAssignment", + "src": "18458:22:2", + "value": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12612:1:2", - "type": "", - "value": "0" + "name": "data", + "nodeType": "YulIdentifier", + "src": "18472:4:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12615:77:2", + "src": "18478:1:2", "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + "value": "2" } ], "functionName": { - "name": "mstore", + "name": "div", "nodeType": "YulIdentifier", - "src": "12605:6:2" + "src": "18468:3:2" }, "nodeType": "YulFunctionCall", - "src": "12605:88:2" + "src": "18468:12:2" }, - "nodeType": "YulExpressionStatement", - "src": "12605:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12709:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12712:4:2", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", + "variableNames": [ + { + "name": "length", "nodeType": "YulIdentifier", - "src": "12702:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12702:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12702:15:2" + "src": "18458:6:2" + } + ] }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "18489:38:2", + "value": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12733:1:2", - "type": "", - "value": "0" + "name": "data", + "nodeType": "YulIdentifier", + "src": "18519:4:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12736:4:2", + "src": "18525:1:2", "type": "", - "value": "0x24" + "value": "1" } ], "functionName": { - "name": "revert", + "name": "and", "nodeType": "YulIdentifier", - "src": "12726:6:2" + "src": "18515:3:2" }, "nodeType": "YulFunctionCall", - "src": "12726:15:2" + "src": "18515:12:2" }, - "nodeType": "YulExpressionStatement", - "src": "12726:15:2" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "12563:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12784:152:2", - "statements": [ + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "18493:18:2", + "type": "" + } + ] + }, { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12801:1:2", - "type": "", - "value": "0" - }, + "body": { + "nodeType": "YulBlock", + "src": "18566:31:2", + "statements": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12804:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + "nodeType": "YulAssignment", + "src": "18568:27:2", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18582:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18590:4:2", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "18578:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "18578:17:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18568:6:2" + } + ] } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12794:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12794:88:2" + ] }, - "nodeType": "YulExpressionStatement", - "src": "12794:88:2" - }, - { - "expression": { + "condition": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12898:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12901:4:2", - "type": "", - "value": "0x21" + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "18546:18:2" } ], "functionName": { - "name": "mstore", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "12891:6:2" + "src": "18539:6:2" }, "nodeType": "YulFunctionCall", - "src": "12891:15:2" + "src": "18539:26:2" }, - "nodeType": "YulExpressionStatement", - "src": "12891:15:2" + "nodeType": "YulIf", + "src": "18536:61:2" }, { - "expression": { - "arguments": [ + "body": { + "nodeType": "YulBlock", + "src": "18656:168:2", + "statements": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12922:1:2", - "type": "", - "value": "0" + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18677:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18680:77:2", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18670:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "18670:88:2" + }, + "nodeType": "YulExpressionStatement", + "src": "18670:88:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12925:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12915:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12915:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12915:15:2" - } - ] - }, - "name": "panic_error_0x21", - "nodeType": "YulFunctionDefinition", - "src": "12752:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13068:144:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13078:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13090:9:2" + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18778:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18781:4:2", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18771:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "18771:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "18771:15:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13101:2:2", - "type": "", - "value": "64" + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18806:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18809:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "18799:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "18799:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "18799:15:2" } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13086:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13086:18:2" + ] }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13078:4:2" - } - ] - }, - { - "expression": { + "condition": { "arguments": [ { - "name": "headStart", + "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "13120:9:2" + "src": "18612:18:2" }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13131:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13113:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "13113:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "13113:25:2" - }, - { - "expression": { - "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "length", "nodeType": "YulIdentifier", - "src": "13158:9:2" + "src": "18635:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13169:2:2", + "src": "18643:2:2", "type": "", "value": "32" } ], "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13154:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13154:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13178:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13186:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", + "name": "lt", "nodeType": "YulIdentifier", - "src": "13174:3:2" + "src": "18632:2:2" }, "nodeType": "YulFunctionCall", - "src": "13174:31:2" + "src": "18632:14:2" } ], "functionName": { - "name": "mstore", + "name": "eq", "nodeType": "YulIdentifier", - "src": "13147:6:2" + "src": "18609:2:2" }, "nodeType": "YulFunctionCall", - "src": "13147:59:2" + "src": "18609:38:2" }, - "nodeType": "YulExpressionStatement", - "src": "13147:59:2" + "nodeType": "YulIf", + "src": "18606:218:2" } ] }, - "name": "abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed", + "name": "extract_byte_array_length", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13029:9:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "13040:6:2", - "type": "" - }, - { - "name": "value0", + "name": "data", "nodeType": "YulTypedName", - "src": "13048:6:2", + "src": "18428:4:2", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "length", "nodeType": "YulTypedName", - "src": "13059:4:2", + "src": "18437:6:2", "type": "" } ], - "src": "12941:271:2" + "src": "18393:437:2" }, { "body": { "nodeType": "YulBlock", - "src": "13391:165:2", + "src": "19009:178:2", "statements": [ { "expression": { @@ -10657,12 +14292,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13408:9:2" + "src": "19026:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13419:2:2", + "src": "19037:2:2", "type": "", "value": "32" } @@ -10670,13 +14305,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13401:6:2" + "src": "19019:6:2" }, "nodeType": "YulFunctionCall", - "src": "13401:21:2" + "src": "19019:21:2" }, "nodeType": "YulExpressionStatement", - "src": "13401:21:2" + "src": "19019:21:2" }, { "expression": { @@ -10686,12 +14321,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13442:9:2" + "src": "19060:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13453:2:2", + "src": "19071:2:2", "type": "", "value": "32" } @@ -10699,29 +14334,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13438:3:2" + "src": "19056:3:2" }, "nodeType": "YulFunctionCall", - "src": "13438:18:2" + "src": "19056:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13458:2:2", + "src": "19076:2:2", "type": "", - "value": "15" + "value": "28" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13431:6:2" + "src": "19049:6:2" }, "nodeType": "YulFunctionCall", - "src": "13431:30:2" + "src": "19049:30:2" }, "nodeType": "YulExpressionStatement", - "src": "13431:30:2" + "src": "19049:30:2" }, { "expression": { @@ -10731,12 +14366,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13481:9:2" + "src": "19099:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13492:2:2", + "src": "19110:2:2", "type": "", "value": "64" } @@ -10744,45 +14379,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13477:3:2" + "src": "19095:3:2" }, "nodeType": "YulFunctionCall", - "src": "13477:18:2" + "src": "19095:18:2" }, { - "hexValue": "5461736b206e6f7420657869737473", + "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", "kind": "string", "nodeType": "YulLiteral", - "src": "13497:17:2", + "src": "19115:30:2", "type": "", - "value": "Task not exists" + "value": "must upload commitment first" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13470:6:2" + "src": "19088:6:2" }, "nodeType": "YulFunctionCall", - "src": "13470:45:2" + "src": "19088:58:2" }, "nodeType": "YulExpressionStatement", - "src": "13470:45:2" + "src": "19088:58:2" }, { "nodeType": "YulAssignment", - "src": "13524:26:2", + "src": "19155:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13536:9:2" + "src": "19167:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13547:2:2", + "src": "19178:2:2", "type": "", "value": "96" } @@ -10790,28 +14425,28 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13532:3:2" + "src": "19163:3:2" }, "nodeType": "YulFunctionCall", - "src": "13532:18:2" + "src": "19163:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13524:4:2" + "src": "19155:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "13368:9:2", + "src": "18986:9:2", "type": "" } ], @@ -10819,16 +14454,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "13382:4:2", + "src": "19000:4:2", "type": "" } ], - "src": "13217:339:2" + "src": "18835:352:2" }, { "body": { "nodeType": "YulBlock", - "src": "13735:296:2", + "src": "19366:223:2", "statements": [ { "expression": { @@ -10836,12 +14471,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13752:9:2" + "src": "19383:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13763:2:2", + "src": "19394:2:2", "type": "", "value": "32" } @@ -10849,13 +14484,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13745:6:2" + "src": "19376:6:2" }, "nodeType": "YulFunctionCall", - "src": "13745:21:2" + "src": "19376:21:2" }, "nodeType": "YulExpressionStatement", - "src": "13745:21:2" + "src": "19376:21:2" }, { "expression": { @@ -10865,12 +14500,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13786:9:2" + "src": "19417:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13797:2:2", + "src": "19428:2:2", "type": "", "value": "32" } @@ -10878,29 +14513,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13782:3:2" + "src": "19413:3:2" }, "nodeType": "YulFunctionCall", - "src": "13782:18:2" + "src": "19413:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13802:2:2", + "src": "19433:2:2", "type": "", - "value": "66" + "value": "33" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13775:6:2" + "src": "19406:6:2" }, "nodeType": "YulFunctionCall", - "src": "13775:30:2" + "src": "19406:30:2" }, "nodeType": "YulExpressionStatement", - "src": "13775:30:2" + "src": "19406:30:2" }, { "expression": { @@ -10910,12 +14545,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13825:9:2" + "src": "19456:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13836:2:2", + "src": "19467:2:2", "type": "", "value": "64" } @@ -10923,30 +14558,30 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13821:3:2" + "src": "19452:3:2" }, "nodeType": "YulFunctionCall", - "src": "13821:18:2" + "src": "19452:18:2" }, { - "hexValue": "74686520726f756e6420686173206265656e20616c7265616479207374617274", + "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d65", "kind": "string", "nodeType": "YulLiteral", - "src": "13841:34:2", + "src": "19472:34:2", "type": "", - "value": "the round has been already start" + "value": "cannot upload seed multiple time" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13814:6:2" + "src": "19445:6:2" }, "nodeType": "YulFunctionCall", - "src": "13814:62:2" + "src": "19445:62:2" }, "nodeType": "YulExpressionStatement", - "src": "13814:62:2" + "src": "19445:62:2" }, { "expression": { @@ -10956,12 +14591,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13896:9:2" + "src": "19527:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13907:2:2", + "src": "19538:2:2", "type": "", "value": "96" } @@ -10969,120 +14604,74 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13892:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13892:18:2" - }, - { - "hexValue": "6564206f72207468652070726520726f756e6420646f6573206e6f7420657869", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13912:34:2", - "type": "", - "value": "ed or the pre round does not exi" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13885:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "13885:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "13885:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13967:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13978:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13963:3:2" + "src": "19523:3:2" }, "nodeType": "YulFunctionCall", - "src": "13963:19:2" + "src": "19523:18:2" }, { - "hexValue": "7374", + "hexValue": "73", "kind": "string", "nodeType": "YulLiteral", - "src": "13984:4:2", + "src": "19543:3:2", "type": "", - "value": "st" + "value": "s" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13956:6:2" + "src": "19516:6:2" }, "nodeType": "YulFunctionCall", - "src": "13956:33:2" + "src": "19516:31:2" }, "nodeType": "YulExpressionStatement", - "src": "13956:33:2" + "src": "19516:31:2" }, { "nodeType": "YulAssignment", - "src": "13998:27:2", + "src": "19556:27:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14010:9:2" + "src": "19568:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14021:3:2", + "src": "19579:3:2", "type": "", - "value": "160" + "value": "128" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14006:3:2" + "src": "19564:3:2" }, "nodeType": "YulFunctionCall", - "src": "14006:19:2" + "src": "19564:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13998:4:2" + "src": "19556:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "13712:9:2", + "src": "19343:9:2", "type": "" } ], @@ -11090,224 +14679,286 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "13726:4:2", + "src": "19357:4:2", "type": "" } ], - "src": "13561:470:2" + "src": "19192:397:2" }, { "body": { "nodeType": "YulBlock", - "src": "14068:152:2", + "src": "19660:200:2", "statements": [ { "expression": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14085:1:2", - "type": "", - "value": "0" + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19677:3:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14088:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + "name": "length", + "nodeType": "YulIdentifier", + "src": "19682:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14078:6:2" + "src": "19670:6:2" }, "nodeType": "YulFunctionCall", - "src": "14078:88:2" + "src": "19670:19:2" }, "nodeType": "YulExpressionStatement", - "src": "14078:88:2" + "src": "19670:19:2" }, { "expression": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14182:1:2", - "type": "", - "value": "4" + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19715:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19720:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19711:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19711:14:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14185:4:2", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14175:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14175:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14175:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14206:1:2", - "type": "", - "value": "0" + "name": "start", + "nodeType": "YulIdentifier", + "src": "19727:5:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14209:4:2", - "type": "", - "value": "0x24" + "name": "length", + "nodeType": "YulIdentifier", + "src": "19734:6:2" } ], "functionName": { - "name": "revert", + "name": "calldatacopy", "nodeType": "YulIdentifier", - "src": "14199:6:2" + "src": "19698:12:2" }, - "nodeType": "YulFunctionCall", - "src": "14199:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14199:15:2" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "14036:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14274:76:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14296:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "14298:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "14298:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14298:18:2" - } - ] + "nodeType": "YulFunctionCall", + "src": "19698:43:2" }, - "condition": { + "nodeType": "YulExpressionStatement", + "src": "19698:43:2" + }, + { + "expression": { "arguments": [ { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14290:1:2" + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19765:3:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19770:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19761:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19761:16:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19779:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19757:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19757:27:2" }, { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14293:1:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "19786:1:2", + "type": "", + "value": "0" } ], "functionName": { - "name": "lt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14287:2:2" + "src": "19750:6:2" }, "nodeType": "YulFunctionCall", - "src": "14287:8:2" + "src": "19750:38:2" }, - "nodeType": "YulIf", - "src": "14284:34:2" + "nodeType": "YulExpressionStatement", + "src": "19750:38:2" }, { "nodeType": "YulAssignment", - "src": "14327:17:2", + "src": "19797:57:2", "value": { "arguments": [ { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14339:1:2" + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19812:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19825:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19833:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19821:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19821:15:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19842:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "19838:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19838:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "19817:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19817:29:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19808:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "19808:39:2" }, { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14342:1:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "19849:4:2", + "type": "", + "value": "0x20" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "14335:3:2" + "src": "19804:3:2" }, "nodeType": "YulFunctionCall", - "src": "14335:9:2" + "src": "19804:50:2" }, "variableNames": [ { - "name": "diff", + "name": "end", "nodeType": "YulIdentifier", - "src": "14327:4:2" + "src": "19797:3:2" } ] } ] }, - "name": "checked_sub_t_uint256", + "name": "abi_encode_bytes_calldata", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "x", + "name": "start", "nodeType": "YulTypedName", - "src": "14256:1:2", + "src": "19629:5:2", "type": "" }, { - "name": "y", + "name": "length", + "nodeType": "YulTypedName", + "src": "19636:6:2", + "type": "" + }, + { + "name": "pos", "nodeType": "YulTypedName", - "src": "14259:1:2", + "src": "19644:3:2", "type": "" } ], "returnVariables": [ { - "name": "diff", + "name": "end", "nodeType": "YulTypedName", - "src": "14265:4:2", + "src": "19652:3:2", "type": "" } ], - "src": "14225:125:2" + "src": "19594:266:2" }, { "body": { "nodeType": "YulBlock", - "src": "14529:172:2", + "src": "20205:538:2", "statements": [ { "expression": { @@ -11315,26 +14966,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14546:9:2" + "src": "20222:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14557:2:2", - "type": "", - "value": "32" + "name": "value0", + "nodeType": "YulIdentifier", + "src": "20233:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14539:6:2" + "src": "20215:6:2" }, "nodeType": "YulFunctionCall", - "src": "14539:21:2" + "src": "20215:25:2" }, "nodeType": "YulExpressionStatement", - "src": "14539:21:2" + "src": "20215:25:2" }, { "expression": { @@ -11344,12 +14993,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14580:9:2" + "src": "20260:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14591:2:2", + "src": "20271:2:2", "type": "", "value": "32" } @@ -11357,29 +15006,64 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14576:3:2" + "src": "20256:3:2" }, "nodeType": "YulFunctionCall", - "src": "14576:18:2" + "src": "20256:18:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14596:2:2", - "type": "", - "value": "22" + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "20280:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20288:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "20276:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20276:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14569:6:2" + "src": "20249:6:2" }, "nodeType": "YulFunctionCall", - "src": "14569:30:2" + "src": "20249:59:2" }, "nodeType": "YulExpressionStatement", - "src": "14569:30:2" + "src": "20249:59:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "20317:52:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20327:42:2", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "20321:2:2", + "type": "" + } + ] }, { "expression": { @@ -11389,12 +15073,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14619:9:2" + "src": "20389:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14630:2:2", + "src": "20400:2:2", "type": "", "value": "64" } @@ -11402,383 +15086,416 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14615:3:2" + "src": "20385:3:2" }, "nodeType": "YulFunctionCall", - "src": "14615:18:2" + "src": "20385:18:2" }, { - "hexValue": "4d7573742070726f7669646520616464726573736573", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14635:24:2", - "type": "", - "value": "Must provide addresses" + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "20409:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "20417:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "20405:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20405:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14608:6:2" + "src": "20378:6:2" }, "nodeType": "YulFunctionCall", - "src": "14608:52:2" + "src": "20378:43:2" }, "nodeType": "YulExpressionStatement", - "src": "14608:52:2" + "src": "20378:43:2" }, { - "nodeType": "YulAssignment", - "src": "14669:26:2", - "value": { + "expression": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14681:9:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20441:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20452:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20437:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20437:18:2" + }, + { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "20461:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "20469:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "20457:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20457:15:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "20430:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "20430:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "20430:43:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20493:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20504:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20489:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20489:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14692:2:2", + "src": "20510:3:2", "type": "", - "value": "96" + "value": "192" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14677:3:2" + "src": "20482:6:2" }, "nodeType": "YulFunctionCall", - "src": "14677:18:2" + "src": "20482:32:2" }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14669:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14506:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14520:4:2", - "type": "" - } - ], - "src": "14355:346:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14761:382:2", - "statements": [ + "nodeType": "YulExpressionStatement", + "src": "20482:32:2" + }, { - "nodeType": "YulAssignment", - "src": "14771:22:2", - "value": { + "expression": { "arguments": [ { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14785:4:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20534:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20545:3:2", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20530:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20530:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14791:1:2", + "src": "20551:1:2", "type": "", - "value": "2" + "value": "4" } ], "functionName": { - "name": "div", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14781:3:2" + "src": "20523:6:2" }, "nodeType": "YulFunctionCall", - "src": "14781:12:2" + "src": "20523:30:2" }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "14771:6:2" - } - ] + "nodeType": "YulExpressionStatement", + "src": "20523:30:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "14802:38:2", - "value": { + "expression": { "arguments": [ { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14832:4:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20573:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20584:3:2", + "type": "", + "value": "224" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20569:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20569:19:2" }, { - "kind": "number", + "hexValue": "53454544", + "kind": "string", "nodeType": "YulLiteral", - "src": "14838:1:2", + "src": "20590:6:2", "type": "", - "value": "1" + "value": "SEED" } ], "functionName": { - "name": "and", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14828:3:2" + "src": "20562:6:2" }, "nodeType": "YulFunctionCall", - "src": "14828:12:2" + "src": "20562:35:2" + }, + "nodeType": "YulExpressionStatement", + "src": "20562:35:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "20606:13:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20616:3:2", + "type": "", + "value": "256" }, "variables": [ { - "name": "outOfPlaceEncoding", + "name": "_2", "nodeType": "YulTypedName", - "src": "14806:18:2", + "src": "20610:2:2", "type": "" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "14879:31:2", - "statements": [ + "expression": { + "arguments": [ { - "nodeType": "YulAssignment", - "src": "14881:27:2", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "14895:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14903:4:2", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", + "arguments": [ + { + "name": "headStart", "nodeType": "YulIdentifier", - "src": "14891:3:2" + "src": "20639:9:2" }, - "nodeType": "YulFunctionCall", - "src": "14891:17:2" - }, - "variableNames": [ { - "name": "length", - "nodeType": "YulIdentifier", - "src": "14881:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "20650:3:2", + "type": "", + "value": "160" } - ] - } - ] - }, - "condition": { - "arguments": [ + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20635:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "20635:19:2" + }, { - "name": "outOfPlaceEncoding", + "name": "_2", "nodeType": "YulIdentifier", - "src": "14859:18:2" + "src": "20656:2:2" } ], "functionName": { - "name": "iszero", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14852:6:2" + "src": "20628:6:2" }, "nodeType": "YulFunctionCall", - "src": "14852:26:2" + "src": "20628:31:2" }, - "nodeType": "YulIf", - "src": "14849:61:2" + "nodeType": "YulExpressionStatement", + "src": "20628:31:2" }, { - "body": { - "nodeType": "YulBlock", - "src": "14969:168:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14990:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14993:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14983:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14983:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14983:88:2" - }, + "nodeType": "YulAssignment", + "src": "20668:69:2", + "value": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15091:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15094:4:2", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15084:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15084:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15084:15:2" + "name": "value4", + "nodeType": "YulIdentifier", + "src": "20702:6:2" }, { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15119:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15122:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15112:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15112:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15112:15:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", + "name": "value5", "nodeType": "YulIdentifier", - "src": "14925:18:2" + "src": "20710:6:2" }, { "arguments": [ { - "name": "length", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "14948:6:2" + "src": "20722:9:2" }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14956:2:2", - "type": "", - "value": "32" + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "20733:2:2" } ], "functionName": { - "name": "lt", + "name": "add", "nodeType": "YulIdentifier", - "src": "14945:2:2" + "src": "20718:3:2" }, "nodeType": "YulFunctionCall", - "src": "14945:14:2" + "src": "20718:18:2" } ], "functionName": { - "name": "eq", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "14922:2:2" + "src": "20676:25:2" }, "nodeType": "YulFunctionCall", - "src": "14922:38:2" + "src": "20676:61:2" }, - "nodeType": "YulIf", - "src": "14919:218:2" + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "20668:4:2" + } + ] } ] }, - "name": "extract_byte_array_length", + "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "data", + "name": "headStart", + "nodeType": "YulTypedName", + "src": "20134:9:2", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "20145:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "20153:6:2", + "type": "" + }, + { + "name": "value3", "nodeType": "YulTypedName", - "src": "14741:4:2", + "src": "20161:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "20169:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "20177:6:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "20185:6:2", "type": "" } ], "returnVariables": [ { - "name": "length", + "name": "tail", "nodeType": "YulTypedName", - "src": "14750:6:2", + "src": "20196:4:2", "type": "" } ], - "src": "14706:437:2" + "src": "19865:878:2" }, { "body": { "nodeType": "YulBlock", - "src": "15322:170:2", + "src": "20922:172:2", "statements": [ { "expression": { @@ -11786,12 +15503,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15339:9:2" + "src": "20939:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15350:2:2", + "src": "20950:2:2", "type": "", "value": "32" } @@ -11799,13 +15516,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15332:6:2" + "src": "20932:6:2" }, "nodeType": "YulFunctionCall", - "src": "15332:21:2" + "src": "20932:21:2" }, "nodeType": "YulExpressionStatement", - "src": "15332:21:2" + "src": "20932:21:2" }, { "expression": { @@ -11815,12 +15532,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15373:9:2" + "src": "20973:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15384:2:2", + "src": "20984:2:2", "type": "", "value": "32" } @@ -11828,29 +15545,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15369:3:2" + "src": "20969:3:2" }, "nodeType": "YulFunctionCall", - "src": "15369:18:2" + "src": "20969:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15389:2:2", + "src": "20989:2:2", "type": "", - "value": "20" + "value": "22" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15362:6:2" + "src": "20962:6:2" }, "nodeType": "YulFunctionCall", - "src": "15362:30:2" + "src": "20962:30:2" }, "nodeType": "YulExpressionStatement", - "src": "15362:30:2" + "src": "20962:30:2" }, { "expression": { @@ -11860,12 +15577,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15412:9:2" + "src": "21012:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15423:2:2", + "src": "21023:2:2", "type": "", "value": "64" } @@ -11873,45 +15590,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15408:3:2" + "src": "21008:3:2" }, "nodeType": "YulFunctionCall", - "src": "15408:18:2" + "src": "21008:18:2" }, { - "hexValue": "43616e646964617465206d757374206578697374", + "hexValue": "4d7573742070726f7669646520616464726573736573", "kind": "string", "nodeType": "YulLiteral", - "src": "15428:22:2", + "src": "21028:24:2", "type": "", - "value": "Candidate must exist" + "value": "Must provide addresses" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15401:6:2" + "src": "21001:6:2" }, "nodeType": "YulFunctionCall", - "src": "15401:50:2" + "src": "21001:52:2" }, "nodeType": "YulExpressionStatement", - "src": "15401:50:2" + "src": "21001:52:2" }, { "nodeType": "YulAssignment", - "src": "15460:26:2", + "src": "21062:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15472:9:2" + "src": "21074:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15483:2:2", + "src": "21085:2:2", "type": "", "value": "96" } @@ -11919,28 +15636,28 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15468:3:2" + "src": "21070:3:2" }, "nodeType": "YulFunctionCall", - "src": "15468:18:2" + "src": "21070:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15460:4:2" + "src": "21062:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15299:9:2", + "src": "20899:9:2", "type": "" } ], @@ -11948,150 +15665,210 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15313:4:2", + "src": "20913:4:2", "type": "" } ], - "src": "15148:344:2" + "src": "20748:346:2" }, { "body": { "nodeType": "YulBlock", - "src": "15544:88:2", + "src": "21273:170:2", "statements": [ { - "body": { - "nodeType": "YulBlock", - "src": "15575:22:2", - "statements": [ + "expression": { + "arguments": [ { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21290:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21301:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "21283:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "21283:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "21283:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", "nodeType": "YulIdentifier", - "src": "15577:16:2" + "src": "21324:9:2" }, - "nodeType": "YulFunctionCall", - "src": "15577:18:2" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21335:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21320:3:2" }, - "nodeType": "YulExpressionStatement", - "src": "15577:18:2" + "nodeType": "YulFunctionCall", + "src": "21320:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21340:2:2", + "type": "", + "value": "20" } - ] + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "21313:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "21313:30:2" }, - "condition": { + "nodeType": "YulExpressionStatement", + "src": "21313:30:2" + }, + { + "expression": { "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "15560:5:2" - }, { "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21363:9:2" + }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15571:1:2", + "src": "21374:2:2", "type": "", - "value": "0" + "value": "64" } ], "functionName": { - "name": "not", + "name": "add", "nodeType": "YulIdentifier", - "src": "15567:3:2" + "src": "21359:3:2" }, "nodeType": "YulFunctionCall", - "src": "15567:6:2" + "src": "21359:18:2" + }, + { + "hexValue": "43616e646964617465206d757374206578697374", + "kind": "string", + "nodeType": "YulLiteral", + "src": "21379:22:2", + "type": "", + "value": "Candidate must exist" } ], "functionName": { - "name": "eq", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "15557:2:2" + "src": "21352:6:2" }, "nodeType": "YulFunctionCall", - "src": "15557:17:2" + "src": "21352:50:2" }, - "nodeType": "YulIf", - "src": "15554:43:2" + "nodeType": "YulExpressionStatement", + "src": "21352:50:2" }, { "nodeType": "YulAssignment", - "src": "15606:20:2", + "src": "21411:26:2", "value": { "arguments": [ { - "name": "value", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "15617:5:2" + "src": "21423:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15624:1:2", + "src": "21434:2:2", "type": "", - "value": "1" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15613:3:2" + "src": "21419:3:2" }, "nodeType": "YulFunctionCall", - "src": "15613:13:2" + "src": "21419:18:2" }, "variableNames": [ { - "name": "ret", + "name": "tail", "nodeType": "YulIdentifier", - "src": "15606:3:2" + "src": "21411:4:2" } ] } ] }, - "name": "increment_t_uint256", + "name": "abi_encode_tuple_t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "value", + "name": "headStart", "nodeType": "YulTypedName", - "src": "15526:5:2", + "src": "21250:9:2", "type": "" } ], "returnVariables": [ { - "name": "ret", + "name": "tail", "nodeType": "YulTypedName", - "src": "15536:3:2", + "src": "21264:4:2", "type": "" } ], - "src": "15497:135:2" + "src": "21099:344:2" }, { "body": { "nodeType": "YulBlock", - "src": "15852:610:2", + "src": "21663:610:2", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "15862:32:2", + "src": "21673:32:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15880:9:2" + "src": "21691:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15891:2:2", + "src": "21702:2:2", "type": "", "value": "96" } @@ -12099,16 +15876,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15876:3:2" + "src": "21687:3:2" }, "nodeType": "YulFunctionCall", - "src": "15876:18:2" + "src": "21687:18:2" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "15866:6:2", + "src": "21677:6:2", "type": "" } ] @@ -12119,32 +15896,32 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15910:9:2" + "src": "21721:9:2" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "15921:6:2" + "src": "21732:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15903:6:2" + "src": "21714:6:2" }, "nodeType": "YulFunctionCall", - "src": "15903:25:2" + "src": "21714:25:2" }, "nodeType": "YulExpressionStatement", - "src": "15903:25:2" + "src": "21714:25:2" }, { "nodeType": "YulVariableDeclaration", - "src": "15937:12:2", + "src": "21748:12:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "15947:2:2", + "src": "21758:2:2", "type": "", "value": "32" }, @@ -12152,7 +15929,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "15941:2:2", + "src": "21752:2:2", "type": "" } ] @@ -12165,33 +15942,33 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15969:9:2" + "src": "21780:9:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "15980:2:2" + "src": "21791:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15965:3:2" + "src": "21776:3:2" }, "nodeType": "YulFunctionCall", - "src": "15965:18:2" + "src": "21776:18:2" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "15989:6:2" + "src": "21800:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15997:18:2", + "src": "21808:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -12199,22 +15976,22 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "15985:3:2" + "src": "21796:3:2" }, "nodeType": "YulFunctionCall", - "src": "15985:31:2" + "src": "21796:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15958:6:2" + "src": "21769:6:2" }, "nodeType": "YulFunctionCall", - "src": "15958:59:2" + "src": "21769:59:2" }, "nodeType": "YulExpressionStatement", - "src": "15958:59:2" + "src": "21769:59:2" }, { "expression": { @@ -12224,12 +16001,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16037:9:2" + "src": "21848:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16048:2:2", + "src": "21859:2:2", "type": "", "value": "64" } @@ -12237,15 +16014,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16033:3:2" + "src": "21844:3:2" }, "nodeType": "YulFunctionCall", - "src": "16033:18:2" + "src": "21844:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16053:2:2", + "src": "21864:2:2", "type": "", "value": "96" } @@ -12253,27 +16030,27 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16026:6:2" + "src": "21837:6:2" }, "nodeType": "YulFunctionCall", - "src": "16026:30:2" + "src": "21837:30:2" }, "nodeType": "YulExpressionStatement", - "src": "16026:30:2" + "src": "21837:30:2" }, { "nodeType": "YulVariableDeclaration", - "src": "16065:17:2", + "src": "21876:17:2", "value": { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "16076:6:2" + "src": "21887:6:2" }, "variables": [ { "name": "pos", "nodeType": "YulTypedName", - "src": "16069:3:2", + "src": "21880:3:2", "type": "" } ] @@ -12284,39 +16061,39 @@ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "16098:6:2" + "src": "21909:6:2" }, { "name": "value3", "nodeType": "YulIdentifier", - "src": "16106:6:2" + "src": "21917:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16091:6:2" + "src": "21902:6:2" }, "nodeType": "YulFunctionCall", - "src": "16091:22:2" + "src": "21902:22:2" }, "nodeType": "YulExpressionStatement", - "src": "16091:22:2" + "src": "21902:22:2" }, { "nodeType": "YulAssignment", - "src": "16122:26:2", + "src": "21933:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16133:9:2" + "src": "21944:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16144:3:2", + "src": "21955:3:2", "type": "", "value": "128" } @@ -12324,43 +16101,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16129:3:2" + "src": "21940:3:2" }, "nodeType": "YulFunctionCall", - "src": "16129:19:2" + "src": "21940:19:2" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16122:3:2" + "src": "21933:3:2" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "16157:20:2", + "src": "21968:20:2", "value": { "name": "value2", "nodeType": "YulIdentifier", - "src": "16171:6:2" + "src": "21982:6:2" }, "variables": [ { "name": "srcPtr", "nodeType": "YulTypedName", - "src": "16161:6:2", + "src": "21972:6:2", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "16186:10:2", + "src": "21997:10:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "16195:1:2", + "src": "22006:1:2", "type": "", "value": "0" }, @@ -12368,7 +16145,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "16190:1:2", + "src": "22001:1:2", "type": "" } ] @@ -12376,7 +16153,7 @@ { "body": { "nodeType": "YulBlock", - "src": "16254:182:2", + "src": "22065:182:2", "statements": [ { "expression": { @@ -12384,7 +16161,7 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16275:3:2" + "src": "22086:3:2" }, { "arguments": [ @@ -12393,21 +16170,21 @@ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "16303:6:2" + "src": "22114:6:2" } ], "functionName": { "name": "abi_decode_address", "nodeType": "YulIdentifier", - "src": "16284:18:2" + "src": "22095:18:2" }, "nodeType": "YulFunctionCall", - "src": "16284:26:2" + "src": "22095:26:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16312:42:2", + "src": "22123:42:2", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -12415,565 +16192,207 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "16280:3:2" + "src": "22091:3:2" }, "nodeType": "YulFunctionCall", - "src": "16280:75:2" + "src": "22091:75:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16268:6:2" + "src": "22079:6:2" }, "nodeType": "YulFunctionCall", - "src": "16268:88:2" + "src": "22079:88:2" }, "nodeType": "YulExpressionStatement", - "src": "16268:88:2" + "src": "22079:88:2" }, { "nodeType": "YulAssignment", - "src": "16369:19:2", + "src": "22180:19:2", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16380:3:2" + "src": "22191:3:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "16385:2:2" + "src": "22196:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16376:3:2" + "src": "22187:3:2" }, "nodeType": "YulFunctionCall", - "src": "16376:12:2" + "src": "22187:12:2" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16369:3:2" + "src": "22180:3:2" } ] }, { "nodeType": "YulAssignment", - "src": "16401:25:2", + "src": "22212:25:2", "value": { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "16415:6:2" + "src": "22226:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "16423:2:2" + "src": "22234:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16411:3:2" + "src": "22222:3:2" }, "nodeType": "YulFunctionCall", - "src": "16411:15:2" + "src": "22222:15:2" }, "variableNames": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "16401:6:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16216:1:2" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "16219:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "16213:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "16213:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "16227:18:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16229:14:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16238:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16241:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16234:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16234:9:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16229:1:2" + "src": "22212:6:2" } ] } ] }, - "pre": { - "nodeType": "YulBlock", - "src": "16209:3:2", - "statements": [] - }, - "src": "16205:231:2" - }, - { - "nodeType": "YulAssignment", - "src": "16445:11:2", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16453:3:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16445:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_array$_t_address_$dyn_calldata_ptr__to_t_bytes32_t_uint64_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15797:9:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "15808:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "15816:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "15824:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15832:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15843:4:2", - "type": "" - } - ], - "src": "15637:825:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16641:177:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16658:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16669:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16651:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16651:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16651:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16692:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16703:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16688:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16688:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16708:2:2", - "type": "", - "value": "27" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16681:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16681:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16681:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16731:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16742:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16727:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16727:18:2" - }, - { - "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16747:29:2", - "type": "", - "value": "Calculating has not started" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16720:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16720:57:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16720:57:2" - }, - { - "nodeType": "YulAssignment", - "src": "16786:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16798:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16809:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16794:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16794:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16786:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16618:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16632:4:2", - "type": "" - } - ], - "src": "16467:351:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16997:176:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17014:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17025:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17007:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17007:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17007:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17048:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17059:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17044:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17044:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17064:2:2", - "type": "", - "value": "26" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17037:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17037:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17037:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17087:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17098:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17083:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17083:18:2" - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "kind": "string", - "nodeType": "YulLiteral", - "src": "17103:28:2", - "type": "", - "value": "The Task Round Must exists" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17076:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17076:56:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17076:56:2" - }, - { - "nodeType": "YulAssignment", - "src": "17141:26:2", - "value": { + "condition": { "arguments": [ { - "name": "headStart", + "name": "i", "nodeType": "YulIdentifier", - "src": "17153:9:2" + "src": "22027:1:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17164:2:2", - "type": "", - "value": "96" + "name": "value3", + "nodeType": "YulIdentifier", + "src": "22030:6:2" } ], "functionName": { - "name": "add", + "name": "lt", "nodeType": "YulIdentifier", - "src": "17149:3:2" + "src": "22024:2:2" }, "nodeType": "YulFunctionCall", - "src": "17149:18:2" + "src": "22024:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "22038:18:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "22040:14:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "22049:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22052:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22045:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "22045:9:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "22040:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "22020:3:2", + "statements": [] + }, + "src": "22016:231:2" + }, + { + "nodeType": "YulAssignment", + "src": "22256:11:2", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22264:3:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17141:4:2" + "src": "22256:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_bytes32_t_uint64_t_array$_t_address_$dyn_calldata_ptr__to_t_bytes32_t_uint64_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16974:9:2", + "src": "21608:9:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "21619:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "21627:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "21635:6:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "21643:6:2", "type": "" } ], @@ -12981,41 +16400,43 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16988:4:2", + "src": "21654:4:2", "type": "" } ], - "src": "16823:350:2" + "src": "21448:825:2" }, { "body": { "nodeType": "YulBlock", - "src": "17245:200:2", + "src": "22452:177:2", "statements": [ { "expression": { "arguments": [ { - "name": "pos", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "17262:3:2" + "src": "22469:9:2" }, { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17267:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "22480:2:2", + "type": "", + "value": "32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17255:6:2" + "src": "22462:6:2" }, "nodeType": "YulFunctionCall", - "src": "17255:19:2" + "src": "22462:21:2" }, "nodeType": "YulExpressionStatement", - "src": "17255:19:2" + "src": "22462:21:2" }, { "expression": { @@ -13023,47 +16444,44 @@ { "arguments": [ { - "name": "pos", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "17300:3:2" + "src": "22503:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17305:4:2", + "src": "22514:2:2", "type": "", - "value": "0x20" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17296:3:2" + "src": "22499:3:2" }, "nodeType": "YulFunctionCall", - "src": "17296:14:2" - }, - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "17312:5:2" + "src": "22499:18:2" }, { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17319:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "22519:2:2", + "type": "", + "value": "27" } ], "functionName": { - "name": "calldatacopy", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "17283:12:2" + "src": "22492:6:2" }, "nodeType": "YulFunctionCall", - "src": "17283:43:2" + "src": "22492:30:2" }, "nodeType": "YulExpressionStatement", - "src": "17283:43:2" + "src": "22492:30:2" }, { "expression": { @@ -13071,196 +16489,106 @@ { "arguments": [ { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17350:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17355:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17346:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17346:16:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22542:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17364:4:2", + "src": "22553:2:2", "type": "", - "value": "0x20" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17342:3:2" + "src": "22538:3:2" }, "nodeType": "YulFunctionCall", - "src": "17342:27:2" + "src": "22538:18:2" }, { - "kind": "number", + "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", + "kind": "string", "nodeType": "YulLiteral", - "src": "17371:1:2", + "src": "22558:29:2", "type": "", - "value": "0" + "value": "Calculating has not started" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17335:6:2" + "src": "22531:6:2" }, "nodeType": "YulFunctionCall", - "src": "17335:38:2" + "src": "22531:57:2" }, "nodeType": "YulExpressionStatement", - "src": "17335:38:2" + "src": "22531:57:2" }, { "nodeType": "YulAssignment", - "src": "17382:57:2", + "src": "22597:26:2", "value": { "arguments": [ { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17397:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17410:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17418:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17406:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17406:15:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17427:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "17423:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17423:7:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "17402:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17402:29:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17393:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17393:39:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22609:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17434:4:2", + "src": "22620:2:2", "type": "", - "value": "0x20" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17389:3:2" + "src": "22605:3:2" }, "nodeType": "YulFunctionCall", - "src": "17389:50:2" + "src": "22605:18:2" }, "variableNames": [ { - "name": "end", + "name": "tail", "nodeType": "YulIdentifier", - "src": "17382:3:2" + "src": "22597:4:2" } ] } ] }, - "name": "abi_encode_string_calldata", + "name": "abi_encode_tuple_t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "start", - "nodeType": "YulTypedName", - "src": "17214:5:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "17221:6:2", - "type": "" - }, - { - "name": "pos", + "name": "headStart", "nodeType": "YulTypedName", - "src": "17229:3:2", + "src": "22429:9:2", "type": "" } ], "returnVariables": [ { - "name": "end", + "name": "tail", "nodeType": "YulTypedName", - "src": "17237:3:2", + "src": "22443:4:2", "type": "" } ], - "src": "17178:267:2" + "src": "22278:351:2" }, { "body": { "nodeType": "YulBlock", - "src": "17665:296:2", + "src": "22808:176:2", "statements": [ { "expression": { @@ -13268,24 +16596,26 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17682:9:2" + "src": "22825:9:2" }, { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17693:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "22836:2:2", + "type": "", + "value": "32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17675:6:2" + "src": "22818:6:2" }, "nodeType": "YulFunctionCall", - "src": "17675:25:2" + "src": "22818:21:2" }, "nodeType": "YulExpressionStatement", - "src": "17675:25:2" + "src": "22818:21:2" }, { "expression": { @@ -13295,12 +16625,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17720:9:2" + "src": "22859:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17731:2:2", + "src": "22870:2:2", "type": "", "value": "32" } @@ -13308,45 +16638,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17716:3:2" + "src": "22855:3:2" }, "nodeType": "YulFunctionCall", - "src": "17716:18:2" + "src": "22855:18:2" }, { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "17740:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17748:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "17736:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17736:55:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "22875:2:2", + "type": "", + "value": "26" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17709:6:2" + "src": "22848:6:2" }, "nodeType": "YulFunctionCall", - "src": "17709:83:2" + "src": "22848:30:2" }, "nodeType": "YulExpressionStatement", - "src": "17709:83:2" + "src": "22848:30:2" }, { "expression": { @@ -13356,12 +16670,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17812:9:2" + "src": "22898:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17823:2:2", + "src": "22909:2:2", "type": "", "value": "64" } @@ -13369,167 +16683,74 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17808:3:2" + "src": "22894:3:2" }, "nodeType": "YulFunctionCall", - "src": "17808:18:2" + "src": "22894:18:2" }, { - "kind": "number", + "hexValue": "546865205461736b20526f756e64204d75737420657869737473", + "kind": "string", "nodeType": "YulLiteral", - "src": "17828:3:2", + "src": "22914:28:2", "type": "", - "value": "128" + "value": "The Task Round Must exists" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17801:6:2" + "src": "22887:6:2" }, "nodeType": "YulFunctionCall", - "src": "17801:31:2" + "src": "22887:56:2" }, "nodeType": "YulExpressionStatement", - "src": "17801:31:2" + "src": "22887:56:2" }, { "nodeType": "YulAssignment", - "src": "17841:71:2", + "src": "22952:26:2", "value": { "arguments": [ { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "17876:6:2" - }, - { - "name": "value3", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "17884:6:2" + "src": "22964:9:2" }, { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17896:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17907:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17892:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17892:19:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "22975:2:2", + "type": "", + "value": "96" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "add", "nodeType": "YulIdentifier", - "src": "17849:26:2" + "src": "22960:3:2" }, "nodeType": "YulFunctionCall", - "src": "17849:63:2" + "src": "22960:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17841:4:2" + "src": "22952:4:2" } ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17932:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17943:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17928:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17928:18:2" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "17948:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17921:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17921:34:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17921:34:2" } ] }, - "name": "abi_encode_tuple_t_uint256_t_address_t_string_calldata_ptr_t_bytes32__to_t_uint256_t_address_t_string_memory_ptr_t_bytes32__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17602:9:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "17613:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "17621:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "17629:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "17637:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "17645:6:2", + "src": "22785:9:2", "type": "" } ], @@ -13537,16 +16758,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17656:4:2", + "src": "22799:4:2", "type": "" } ], - "src": "17450:511:2" + "src": "22634:350:2" }, { "body": { "nodeType": "YulBlock", - "src": "17998:152:2", + "src": "23021:152:2", "statements": [ { "expression": { @@ -13554,14 +16775,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "18015:1:2", + "src": "23038:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18018:77:2", + "src": "23041:77:2", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -13569,42 +16790,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18008:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18008:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18008:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18112:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18115:4:2", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18105:6:2" + "src": "23031:6:2" }, "nodeType": "YulFunctionCall", - "src": "18105:15:2" + "src": "23031:88:2" }, "nodeType": "YulExpressionStatement", - "src": "18105:15:2" + "src": "23031:88:2" }, { "expression": { @@ -13612,604 +16804,319 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "18136:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18139:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18129:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18129:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18129:15:2" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "17966:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18219:622:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "18268:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18277:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18280:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18270:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18270:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18270:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18247:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18255:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18243:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18243:17:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "18262:3:2" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "18239:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18239:27:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "18232:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18232:35:2" - }, - "nodeType": "YulIf", - "src": "18229:55:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18293:23:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18309:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "18303:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "18303:13:2" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "18297:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18325:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18335:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "18329:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18376:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "18378:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "18378:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18378:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18368:2:2" + "src": "23135:1:2", + "type": "", + "value": "4" }, { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "18372:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "23138:4:2", + "type": "", + "value": "0x41" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18365:2:2" + "src": "23128:6:2" }, "nodeType": "YulFunctionCall", - "src": "18365:10:2" + "src": "23128:15:2" }, - "nodeType": "YulIf", - "src": "18362:36:2" + "nodeType": "YulExpressionStatement", + "src": "23128:15:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "18407:17:2", - "value": { + "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "18421:2:2", + "src": "23159:1:2", "type": "", - "value": "31" + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23162:4:2", + "type": "", + "value": "0x24" } ], "functionName": { - "name": "not", + "name": "revert", "nodeType": "YulIdentifier", - "src": "18417:3:2" + "src": "23152:6:2" }, "nodeType": "YulFunctionCall", - "src": "18417:7:2" + "src": "23152:15:2" }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "18411:2:2", - "type": "" - } - ] - }, + "nodeType": "YulExpressionStatement", + "src": "23152:15:2" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "22989:184:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "23352:171:2", + "statements": [ { - "nodeType": "YulVariableDeclaration", - "src": "18433:23:2", - "value": { + "expression": { "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "23369:9:2" + }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18453:2:2", + "src": "23380:2:2", "type": "", - "value": "64" + "value": "32" } ], "functionName": { - "name": "mload", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18447:5:2" + "src": "23362:6:2" }, "nodeType": "YulFunctionCall", - "src": "18447:9:2" + "src": "23362:21:2" }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "18437:6:2", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "23362:21:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "18465:71:2", - "value": { + "expression": { "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "18487:6:2" - }, { "arguments": [ { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18511:2:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18515:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18507:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18507:13:2" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "18522:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "18503:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18503:22:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18527:2:2", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18499:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18499:31:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "23403:9:2" }, { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "18532:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "23414:2:2", + "type": "", + "value": "32" } ], "functionName": { - "name": "and", + "name": "add", "nodeType": "YulIdentifier", - "src": "18495:3:2" + "src": "23399:3:2" }, "nodeType": "YulFunctionCall", - "src": "18495:40:2" + "src": "23399:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23419:2:2", + "type": "", + "value": "21" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18483:3:2" + "src": "23392:6:2" }, "nodeType": "YulFunctionCall", - "src": "18483:53:2" + "src": "23392:30:2" }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "18469:10:2", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "23392:30:2" }, { - "body": { - "nodeType": "YulBlock", - "src": "18595:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "18597:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "18597:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18597:18:2" - } - ] - }, - "condition": { + "expression": { "arguments": [ { "arguments": [ { - "name": "newFreePtr", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "18554:10:2" + "src": "23442:9:2" }, { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "18566:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "23453:2:2", + "type": "", + "value": "64" } ], "functionName": { - "name": "gt", + "name": "add", "nodeType": "YulIdentifier", - "src": "18551:2:2" + "src": "23438:3:2" }, "nodeType": "YulFunctionCall", - "src": "18551:18:2" + "src": "23438:18:2" }, { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "18574:10:2" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "18586:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "18571:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "18571:22:2" + "hexValue": "6a6f696e2070686173652068617320706173736564", + "kind": "string", + "nodeType": "YulLiteral", + "src": "23458:23:2", + "type": "", + "value": "join phase has passed" } ], "functionName": { - "name": "or", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18548:2:2" + "src": "23431:6:2" }, "nodeType": "YulFunctionCall", - "src": "18548:46:2" + "src": "23431:51:2" }, - "nodeType": "YulIf", - "src": "18545:72:2" + "nodeType": "YulExpressionStatement", + "src": "23431:51:2" }, { - "expression": { + "nodeType": "YulAssignment", + "src": "23491:26:2", + "value": { "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "23503:9:2" + }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18633:2:2", + "src": "23514:2:2", "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "18637:10:2" + "value": "96" } ], "functionName": { - "name": "mstore", + "name": "add", "nodeType": "YulIdentifier", - "src": "18626:6:2" + "src": "23499:3:2" }, "nodeType": "YulFunctionCall", - "src": "18626:22:2" + "src": "23499:18:2" }, - "nodeType": "YulExpressionStatement", - "src": "18626:22:2" - }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "23491:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "23329:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "23343:4:2", + "type": "" + } + ], + "src": "23178:345:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "23702:231:2", + "statements": [ { "expression": { "arguments": [ { - "name": "memPtr", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "18664:6:2" + "src": "23719:9:2" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18672:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "23730:2:2", + "type": "", + "value": "32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18657:6:2" + "src": "23712:6:2" }, "nodeType": "YulFunctionCall", - "src": "18657:18:2" + "src": "23712:21:2" }, "nodeType": "YulExpressionStatement", - "src": "18657:18:2" + "src": "23712:21:2" }, { - "body": { - "nodeType": "YulBlock", - "src": "18723:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18732:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18735:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18725:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18725:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18725:12:2" - } - ] - }, - "condition": { + "expression": { "arguments": [ { "arguments": [ { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18698:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18706:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18694:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18694:15:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "23753:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18711:4:2", + "src": "23764:2:2", "type": "", - "value": "0x20" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18690:3:2" + "src": "23749:3:2" }, "nodeType": "YulFunctionCall", - "src": "18690:26:2" + "src": "23749:18:2" }, { - "name": "end", - "nodeType": "YulIdentifier", - "src": "18718:3:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "23769:2:2", + "type": "", + "value": "41" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18687:2:2" + "src": "23742:6:2" }, "nodeType": "YulFunctionCall", - "src": "18687:35:2" + "src": "23742:30:2" }, - "nodeType": "YulIf", - "src": "18684:55:2" + "nodeType": "YulExpressionStatement", + "src": "23742:30:2" }, { "expression": { @@ -14217,612 +17124,552 @@ { "arguments": [ { - "name": "offset", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "18774:6:2" + "src": "23792:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18782:4:2", + "src": "23803:2:2", "type": "", - "value": "0x20" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18770:3:2" + "src": "23788:3:2" }, "nodeType": "YulFunctionCall", - "src": "18770:17:2" + "src": "23788:18:2" }, + { + "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469", + "kind": "string", + "nodeType": "YulLiteral", + "src": "23808:34:2", + "type": "", + "value": "Cannot join the same round multi" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "23781:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "23781:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "23781:62:2" + }, + { + "expression": { + "arguments": [ { "arguments": [ { - "name": "memPtr", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "18793:6:2" + "src": "23863:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18801:4:2", + "src": "23874:2:2", "type": "", - "value": "0x20" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18789:3:2" + "src": "23859:3:2" }, "nodeType": "YulFunctionCall", - "src": "18789:17:2" + "src": "23859:18:2" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18808:2:2" + "hexValue": "706c652074696d6573", + "kind": "string", + "nodeType": "YulLiteral", + "src": "23879:11:2", + "type": "", + "value": "ple times" } ], "functionName": { - "name": "copy_memory_to_memory", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18748:21:2" + "src": "23852:6:2" }, "nodeType": "YulFunctionCall", - "src": "18748:63:2" + "src": "23852:39:2" }, "nodeType": "YulExpressionStatement", - "src": "18748:63:2" + "src": "23852:39:2" }, { "nodeType": "YulAssignment", - "src": "18820:15:2", + "src": "23900:27:2", "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "18829:6:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "23912:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23923:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23908:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23908:19:2" }, "variableNames": [ { - "name": "array", + "name": "tail", "nodeType": "YulIdentifier", - "src": "18820:5:2" + "src": "23900:4:2" } ] } ] }, - "name": "abi_decode_string_fromMemory", + "name": "abi_encode_tuple_t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "offset", - "nodeType": "YulTypedName", - "src": "18193:6:2", - "type": "" - }, - { - "name": "end", + "name": "headStart", "nodeType": "YulTypedName", - "src": "18201:3:2", + "src": "23679:9:2", "type": "" } ], "returnVariables": [ { - "name": "array", + "name": "tail", "nodeType": "YulTypedName", - "src": "18209:5:2", + "src": "23693:4:2", "type": "" } ], - "src": "18155:686:2" + "src": "23528:405:2" }, { "body": { - "nodeType": "YulBlock", - "src": "18949:839:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "18995:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19004:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19007:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18997:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18997:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18997:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18970:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18979:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18966:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18966:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18991:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "18962:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18962:32:2" - }, - "nodeType": "YulIf", - "src": "18959:52:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19020:30:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19040:9:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "19034:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "19034:16:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "19024:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19059:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19069:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "19063:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19114:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19123:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19126:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19116:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19116:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19116:12:2" - } - ] - }, - "condition": { + "nodeType": "YulBlock", + "src": "24211:427:2", + "statements": [ + { + "expression": { "arguments": [ { - "name": "offset", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "19102:6:2" + "src": "24228:9:2" }, { - "name": "_1", + "name": "value0", "nodeType": "YulIdentifier", - "src": "19110:2:2" + "src": "24239:6:2" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "19099:2:2" + "src": "24221:6:2" }, "nodeType": "YulFunctionCall", - "src": "19099:14:2" + "src": "24221:25:2" }, - "nodeType": "YulIf", - "src": "19096:34:2" + "nodeType": "YulExpressionStatement", + "src": "24221:25:2" }, { - "nodeType": "YulVariableDeclaration", - "src": "19139:32:2", - "value": { + "expression": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19153:9:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24266:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24277:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24262:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24262:18:2" }, { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "19164:6:2" + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "24286:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24294:42:2", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "24282:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24282:55:2" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "19149:3:2" + "src": "24255:6:2" }, "nodeType": "YulFunctionCall", - "src": "19149:22:2" + "src": "24255:83:2" }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "19143:2:2", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "24255:83:2" }, { - "body": { - "nodeType": "YulBlock", - "src": "19211:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19220:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19223:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19213:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19213:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19213:12:2" - } - ] - }, - "condition": { + "expression": { "arguments": [ { "arguments": [ { - "name": "dataEnd", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "19191:7:2" + "src": "24358:9:2" }, { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "19200:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "24369:2:2", + "type": "", + "value": "64" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "19187:3:2" + "src": "24354:3:2" }, "nodeType": "YulFunctionCall", - "src": "19187:16:2" + "src": "24354:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19205:4:2", + "src": "24374:3:2", "type": "", - "value": "0x40" + "value": "160" } ], "functionName": { - "name": "slt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "19183:3:2" + "src": "24347:6:2" }, "nodeType": "YulFunctionCall", - "src": "19183:27:2" + "src": "24347:31:2" }, - "nodeType": "YulIf", - "src": "19180:47:2" + "nodeType": "YulExpressionStatement", + "src": "24347:31:2" }, { "nodeType": "YulVariableDeclaration", - "src": "19236:25:2", + "src": "24387:76:2", "value": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19256:4:2", - "type": "", - "value": "0x40" + "name": "value2", + "nodeType": "YulIdentifier", + "src": "24427:6:2" + }, + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "24435:6:2" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24447:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24458:3:2", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24443:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24443:19:2" } ], "functionName": { - "name": "mload", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "19250:5:2" + "src": "24401:25:2" }, "nodeType": "YulFunctionCall", - "src": "19250:11:2" + "src": "24401:62:2" }, "variables": [ { - "name": "memPtr", + "name": "tail_1", "nodeType": "YulTypedName", - "src": "19240:6:2", + "src": "24391:6:2", "type": "" } ] }, { - "nodeType": "YulVariableDeclaration", - "src": "19270:35:2", - "value": { + "expression": { "arguments": [ { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "19292:6:2" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24483:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24494:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24479:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24479:18:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19300:4:2", - "type": "", - "value": "0x40" + "name": "value4", + "nodeType": "YulIdentifier", + "src": "24499:6:2" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "19288:3:2" + "src": "24472:6:2" }, "nodeType": "YulFunctionCall", - "src": "19288:17:2" + "src": "24472:34:2" }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "19274:10:2", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "24472:34:2" }, { - "body": { - "nodeType": "YulBlock", - "src": "19364:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "19366:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "19366:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19366:18:2" - } - ] - }, - "condition": { + "expression": { "arguments": [ { "arguments": [ { - "name": "newFreePtr", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "19323:10:2" + "src": "24526:9:2" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19335:2:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "24537:3:2", + "type": "", + "value": "128" } ], "functionName": { - "name": "gt", + "name": "add", "nodeType": "YulIdentifier", - "src": "19320:2:2" + "src": "24522:3:2" }, "nodeType": "YulFunctionCall", - "src": "19320:18:2" + "src": "24522:19:2" }, { "arguments": [ { - "name": "newFreePtr", + "name": "tail_1", "nodeType": "YulIdentifier", - "src": "19343:10:2" + "src": "24547:6:2" }, { - "name": "memPtr", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "19355:6:2" + "src": "24555:9:2" } ], "functionName": { - "name": "lt", + "name": "sub", "nodeType": "YulIdentifier", - "src": "19340:2:2" + "src": "24543:3:2" }, "nodeType": "YulFunctionCall", - "src": "19340:22:2" + "src": "24543:22:2" } ], "functionName": { - "name": "or", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "19317:2:2" + "src": "24515:6:2" }, "nodeType": "YulFunctionCall", - "src": "19317:46:2" + "src": "24515:51:2" }, - "nodeType": "YulIf", - "src": "19314:72:2" + "nodeType": "YulExpressionStatement", + "src": "24515:51:2" }, { - "expression": { + "nodeType": "YulAssignment", + "src": "24575:57:2", + "value": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19402:4:2", - "type": "", - "value": "0x40" + "name": "value5", + "nodeType": "YulIdentifier", + "src": "24609:6:2" }, { - "name": "newFreePtr", + "name": "value6", "nodeType": "YulIdentifier", - "src": "19408:10:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19395:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19395:24:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19395:24:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19428:25:2", - "value": { - "arguments": [ + "src": "24617:6:2" + }, { - "name": "_2", + "name": "tail_1", "nodeType": "YulIdentifier", - "src": "19450:2:2" + "src": "24625:6:2" } ], "functionName": { - "name": "mload", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "19444:5:2" + "src": "24583:25:2" }, "nodeType": "YulFunctionCall", - "src": "19444:9:2" + "src": "24583:49:2" }, - "variables": [ + "variableNames": [ { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "19432:8:2", - "type": "" + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24575:4:2" } ] - }, + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_address_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr__to_t_uint256_t_address_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "24132:9:2", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "24143:6:2", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "24151:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "24159:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "24167:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "24175:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "24183:6:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "24191:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "24202:4:2", + "type": "" + } + ], + "src": "23938:700:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24707:622:2", + "statements": [ { "body": { "nodeType": "YulBlock", - "src": "19482:16:2", + "src": "24756:16:2", "statements": [ { "expression": { @@ -14830,14 +17677,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "19491:1:2", + "src": "24765:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19494:1:2", + "src": "24768:1:2", "type": "", "value": "0" } @@ -14845,139 +17692,112 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "19484:6:2" + "src": "24758:6:2" }, "nodeType": "YulFunctionCall", - "src": "19484:12:2" + "src": "24758:12:2" }, "nodeType": "YulExpressionStatement", - "src": "19484:12:2" + "src": "24758:12:2" } ] }, "condition": { "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "19468:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19478:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "19465:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "19465:16:2" - }, - "nodeType": "YulIf", - "src": "19462:36:2" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "19514:6:2" - }, { "arguments": [ { "arguments": [ { - "name": "_2", + "name": "offset", "nodeType": "YulIdentifier", - "src": "19555:2:2" + "src": "24735:6:2" }, { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "19559:8:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "24743:4:2", + "type": "", + "value": "0x1f" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19551:3:2" + "src": "24731:3:2" }, "nodeType": "YulFunctionCall", - "src": "19551:17:2" + "src": "24731:17:2" }, { - "name": "dataEnd", + "name": "end", "nodeType": "YulIdentifier", - "src": "19570:7:2" + "src": "24750:3:2" } ], "functionName": { - "name": "abi_decode_string_fromMemory", + "name": "slt", "nodeType": "YulIdentifier", - "src": "19522:28:2" + "src": "24727:3:2" }, "nodeType": "YulFunctionCall", - "src": "19522:56:2" + "src": "24727:27:2" } ], "functionName": { - "name": "mstore", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "19507:6:2" + "src": "24720:6:2" }, "nodeType": "YulFunctionCall", - "src": "19507:72:2" + "src": "24720:35:2" }, - "nodeType": "YulExpressionStatement", - "src": "19507:72:2" + "nodeType": "YulIf", + "src": "24717:55:2" }, { "nodeType": "YulVariableDeclaration", - "src": "19588:34:2", + "src": "24781:23:2", "value": { "arguments": [ { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "19614:2:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19618:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19610:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19610:11:2" + "name": "offset", + "nodeType": "YulIdentifier", + "src": "24797:6:2" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "19604:5:2" + "src": "24791:5:2" }, "nodeType": "YulFunctionCall", - "src": "19604:18:2" + "src": "24791:13:2" }, "variables": [ { - "name": "offset_2", + "name": "_1", + "nodeType": "YulTypedName", + "src": "24785:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "24813:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24823:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_2", "nodeType": "YulTypedName", - "src": "19592:8:2", + "src": "24817:2:2", "type": "" } ] @@ -14985,575 +17805,431 @@ { "body": { "nodeType": "YulBlock", - "src": "19651:16:2", + "src": "24864:22:2", "statements": [ { "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19660:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19663:1:2", - "type": "", - "value": "0" - } - ], + "arguments": [], "functionName": { - "name": "revert", + "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "19653:6:2" + "src": "24866:16:2" }, "nodeType": "YulFunctionCall", - "src": "19653:12:2" + "src": "24866:18:2" }, "nodeType": "YulExpressionStatement", - "src": "19653:12:2" + "src": "24866:18:2" } ] }, "condition": { "arguments": [ { - "name": "offset_2", + "name": "_1", "nodeType": "YulIdentifier", - "src": "19637:8:2" + "src": "24856:2:2" }, { - "name": "_1", + "name": "_2", "nodeType": "YulIdentifier", - "src": "19647:2:2" + "src": "24860:2:2" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "19634:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "19634:16:2" - }, - "nodeType": "YulIf", - "src": "19631:36:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "19687:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19695:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19683:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19683:15:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "19733:2:2" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "19737:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19729:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19729:17:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "19748:7:2" - } - ], - "functionName": { - "name": "abi_decode_string_fromMemory", - "nodeType": "YulIdentifier", - "src": "19700:28:2" - }, - "nodeType": "YulFunctionCall", - "src": "19700:56:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19676:6:2" + "src": "24853:2:2" }, "nodeType": "YulFunctionCall", - "src": "19676:81:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19676:81:2" - }, - { - "nodeType": "YulAssignment", - "src": "19766:16:2", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "19776:6:2" + "src": "24853:10:2" }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "19766:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_Node_$1670_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18915:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "18926:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18938:6:2", - "type": "" - } - ], - "src": "18846:942:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20028:318:2", - "statements": [ + "nodeType": "YulIf", + "src": "24850:36:2" + }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "24895:17:2", + "value": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20045:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20056:6:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "24909:2:2", + "type": "", + "value": "31" } ], "functionName": { - "name": "mstore", + "name": "not", "nodeType": "YulIdentifier", - "src": "20038:6:2" + "src": "24905:3:2" }, "nodeType": "YulFunctionCall", - "src": "20038:25:2" + "src": "24905:7:2" }, - "nodeType": "YulExpressionStatement", - "src": "20038:25:2" + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "24899:2:2", + "type": "" + } + ] }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "24921:23:2", + "value": { "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20083:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20094:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20079:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20079:18:2" - }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20099:3:2", + "src": "24941:2:2", "type": "", - "value": "128" + "value": "64" } ], "functionName": { - "name": "mstore", + "name": "mload", "nodeType": "YulIdentifier", - "src": "20072:6:2" + "src": "24935:5:2" }, "nodeType": "YulFunctionCall", - "src": "20072:31:2" + "src": "24935:9:2" }, - "nodeType": "YulExpressionStatement", - "src": "20072:31:2" + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "24925:6:2", + "type": "" + } + ] }, { "nodeType": "YulVariableDeclaration", - "src": "20112:77:2", + "src": "24953:71:2", "value": { "arguments": [ { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "20153:6:2" - }, - { - "name": "value2", + "name": "memPtr", "nodeType": "YulIdentifier", - "src": "20161:6:2" + "src": "24975:6:2" }, { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20173:9:2" + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "24999:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25003:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24995:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24995:13:2" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "25010:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "24991:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24991:22:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25015:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24987:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "24987:31:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20184:3:2", - "type": "", - "value": "128" + "name": "_3", + "nodeType": "YulIdentifier", + "src": "25020:2:2" } ], "functionName": { - "name": "add", + "name": "and", "nodeType": "YulIdentifier", - "src": "20169:3:2" + "src": "24983:3:2" }, "nodeType": "YulFunctionCall", - "src": "20169:19:2" + "src": "24983:40:2" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "add", "nodeType": "YulIdentifier", - "src": "20126:26:2" + "src": "24971:3:2" }, "nodeType": "YulFunctionCall", - "src": "20126:63:2" + "src": "24971:53:2" }, "variables": [ { - "name": "tail_1", + "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "20116:6:2", + "src": "24957:10:2", "type": "" } ] }, { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "25083:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "25085:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "25085:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25085:18:2" + } + ] + }, + "condition": { "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "20209:9:2" + "src": "25042:10:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20220:2:2", - "type": "", - "value": "64" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "25054:2:2" } ], "functionName": { - "name": "add", + "name": "gt", "nodeType": "YulIdentifier", - "src": "20205:3:2" + "src": "25039:2:2" }, "nodeType": "YulFunctionCall", - "src": "20205:18:2" + "src": "25039:18:2" }, { "arguments": [ { - "name": "tail_1", + "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "20229:6:2" + "src": "25062:10:2" }, { - "name": "headStart", + "name": "memPtr", "nodeType": "YulIdentifier", - "src": "20237:9:2" + "src": "25074:6:2" } ], "functionName": { - "name": "sub", + "name": "lt", "nodeType": "YulIdentifier", - "src": "20225:3:2" + "src": "25059:2:2" }, "nodeType": "YulFunctionCall", - "src": "20225:22:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20198:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20198:50:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20198:50:2" - }, - { - "nodeType": "YulAssignment", - "src": "20257:40:2", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "20282:6:2" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "20290:6:2" + "src": "25059:22:2" } ], "functionName": { - "name": "abi_encode_bytes", + "name": "or", "nodeType": "YulIdentifier", - "src": "20265:16:2" + "src": "25036:2:2" }, "nodeType": "YulFunctionCall", - "src": "20265:32:2" + "src": "25036:46:2" }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20257:4:2" - } - ] + "nodeType": "YulIf", + "src": "25033:72:2" }, { "expression": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20317:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20328:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20313:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20313:18:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "25121:2:2", + "type": "", + "value": "64" }, { - "name": "value4", + "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "20333:6:2" + "src": "25125:10:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20306:6:2" + "src": "25114:6:2" }, "nodeType": "YulFunctionCall", - "src": "20306:34:2" + "src": "25114:22:2" }, "nodeType": "YulExpressionStatement", - "src": "20306:34:2" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_memory_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "19965:9:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "19976:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "19984:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "19992:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "20000:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "20008:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20019:4:2", - "type": "" - } - ], - "src": "19793:553:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20525:236:2", - "statements": [ + "src": "25114:22:2" + }, { "expression": { "arguments": [ { - "name": "headStart", + "name": "memPtr", "nodeType": "YulIdentifier", - "src": "20542:9:2" + "src": "25152:6:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20553:2:2", - "type": "", - "value": "32" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "25160:2:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20535:6:2" + "src": "25145:6:2" }, "nodeType": "YulFunctionCall", - "src": "20535:21:2" + "src": "25145:18:2" }, "nodeType": "YulExpressionStatement", - "src": "20535:21:2" + "src": "25145:18:2" }, { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "25211:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25220:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25223:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "25213:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "25213:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25213:12:2" + } + ] + }, + "condition": { "arguments": [ { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20576:9:2" + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "25186:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "25194:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "25182:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "25182:15:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20587:2:2", + "src": "25199:4:2", "type": "", - "value": "32" + "value": "0x20" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20572:3:2" + "src": "25178:3:2" }, "nodeType": "YulFunctionCall", - "src": "20572:18:2" + "src": "25178:26:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20592:2:2", - "type": "", - "value": "46" + "name": "end", + "nodeType": "YulIdentifier", + "src": "25206:3:2" } ], "functionName": { - "name": "mstore", + "name": "gt", "nodeType": "YulIdentifier", - "src": "20565:6:2" + "src": "25175:2:2" }, "nodeType": "YulFunctionCall", - "src": "20565:30:2" + "src": "25175:35:2" }, - "nodeType": "YulExpressionStatement", - "src": "20565:30:2" + "nodeType": "YulIf", + "src": "25172:55:2" }, { "expression": { @@ -15561,628 +18237,830 @@ { "arguments": [ { - "name": "headStart", + "name": "offset", "nodeType": "YulIdentifier", - "src": "20615:9:2" + "src": "25262:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20626:2:2", + "src": "25270:4:2", "type": "", - "value": "64" + "value": "0x20" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20611:3:2" + "src": "25258:3:2" }, "nodeType": "YulFunctionCall", - "src": "20611:18:2" + "src": "25258:17:2" }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d697420", - "kind": "string", - "nodeType": "YulLiteral", - "src": "20631:34:2", - "type": "", - "value": "commitment length exceeds limit " - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20604:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20604:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20604:62:2" - }, - { - "expression": { - "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "memPtr", "nodeType": "YulIdentifier", - "src": "20686:9:2" + "src": "25281:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20697:2:2", + "src": "25289:4:2", "type": "", - "value": "96" + "value": "0x20" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20682:3:2" + "src": "25277:3:2" }, "nodeType": "YulFunctionCall", - "src": "20682:18:2" + "src": "25277:17:2" }, { - "hexValue": "6f7220697420697320656d707479", - "kind": "string", - "nodeType": "YulLiteral", - "src": "20702:16:2", - "type": "", - "value": "or it is empty" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "25296:2:2" } ], "functionName": { - "name": "mstore", + "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "20675:6:2" + "src": "25236:21:2" }, "nodeType": "YulFunctionCall", - "src": "20675:44:2" + "src": "25236:63:2" }, "nodeType": "YulExpressionStatement", - "src": "20675:44:2" + "src": "25236:63:2" }, { "nodeType": "YulAssignment", - "src": "20728:27:2", + "src": "25308:15:2", "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20740:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20751:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20736:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20736:19:2" + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "25317:6:2" }, "variableNames": [ { - "name": "tail", + "name": "array", "nodeType": "YulIdentifier", - "src": "20728:4:2" + "src": "25308:5:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_decode_string_fromMemory", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", + "name": "offset", + "nodeType": "YulTypedName", + "src": "24681:6:2", + "type": "" + }, + { + "name": "end", "nodeType": "YulTypedName", - "src": "20502:9:2", + "src": "24689:3:2", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "array", "nodeType": "YulTypedName", - "src": "20516:4:2", + "src": "24697:5:2", "type": "" } ], - "src": "20351:410:2" + "src": "24643:686:2" }, { "body": { "nodeType": "YulBlock", - "src": "20940:172:2", + "src": "25437:839:2", "statements": [ { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "25483:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25492:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25495:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "25485:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "25485:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25485:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "25458:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "25467:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "25454:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "25454:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25479:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "25450:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "25450:32:2" + }, + "nodeType": "YulIf", + "src": "25447:52:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "25508:30:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "25528:9:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "25522:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "25522:16:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "25512:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "25547:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25557:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "25551:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25602:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25611:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25614:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "25604:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "25604:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25604:12:2" + } + ] + }, + "condition": { "arguments": [ { - "name": "headStart", + "name": "offset", "nodeType": "YulIdentifier", - "src": "20957:9:2" + "src": "25590:6:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20968:2:2", - "type": "", - "value": "32" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "25598:2:2" } ], "functionName": { - "name": "mstore", + "name": "gt", "nodeType": "YulIdentifier", - "src": "20950:6:2" + "src": "25587:2:2" }, "nodeType": "YulFunctionCall", - "src": "20950:21:2" + "src": "25587:14:2" }, - "nodeType": "YulExpressionStatement", - "src": "20950:21:2" + "nodeType": "YulIf", + "src": "25584:34:2" }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "25627:32:2", + "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20991:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21002:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20987:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20987:18:2" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "25641:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21007:2:2", - "type": "", - "value": "22" + "name": "offset", + "nodeType": "YulIdentifier", + "src": "25652:6:2" } ], "functionName": { - "name": "mstore", + "name": "add", "nodeType": "YulIdentifier", - "src": "20980:6:2" + "src": "25637:3:2" }, "nodeType": "YulFunctionCall", - "src": "20980:30:2" + "src": "25637:22:2" }, - "nodeType": "YulExpressionStatement", - "src": "20980:30:2" + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "25631:2:2", + "type": "" + } + ] }, { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "25699:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25708:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25711:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "25701:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "25701:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25701:12:2" + } + ] + }, + "condition": { "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "21030:9:2" + "src": "25679:7:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21041:2:2", - "type": "", - "value": "64" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "25688:2:2" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "21026:3:2" + "src": "25675:3:2" }, "nodeType": "YulFunctionCall", - "src": "21026:18:2" + "src": "25675:16:2" }, { - "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "kind": "string", + "kind": "number", "nodeType": "YulLiteral", - "src": "21046:24:2", + "src": "25693:4:2", "type": "", - "value": "not in upload ss phase" + "value": "0x40" } ], "functionName": { - "name": "mstore", + "name": "slt", "nodeType": "YulIdentifier", - "src": "21019:6:2" + "src": "25671:3:2" }, "nodeType": "YulFunctionCall", - "src": "21019:52:2" + "src": "25671:27:2" }, - "nodeType": "YulExpressionStatement", - "src": "21019:52:2" + "nodeType": "YulIf", + "src": "25668:47:2" }, { - "nodeType": "YulAssignment", - "src": "21080:26:2", + "nodeType": "YulVariableDeclaration", + "src": "25724:25:2", "value": { "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21092:9:2" - }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21103:2:2", + "src": "25744:4:2", "type": "", - "value": "96" + "value": "0x40" } ], "functionName": { - "name": "add", + "name": "mload", "nodeType": "YulIdentifier", - "src": "21088:3:2" + "src": "25738:5:2" }, "nodeType": "YulFunctionCall", - "src": "21088:18:2" + "src": "25738:11:2" }, - "variableNames": [ + "variables": [ { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21080:4:2" + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "25728:6:2", + "type": "" } ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20917:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20931:4:2", - "type": "" - } - ], - "src": "20766:346:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21291:178:2", - "statements": [ + }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "25758:35:2", + "value": { "arguments": [ { - "name": "headStart", + "name": "memPtr", "nodeType": "YulIdentifier", - "src": "21308:9:2" + "src": "25780:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21319:2:2", + "src": "25788:4:2", "type": "", - "value": "32" + "value": "0x40" } ], "functionName": { - "name": "mstore", + "name": "add", "nodeType": "YulIdentifier", - "src": "21301:6:2" + "src": "25776:3:2" }, "nodeType": "YulFunctionCall", - "src": "21301:21:2" + "src": "25776:17:2" }, - "nodeType": "YulExpressionStatement", - "src": "21301:21:2" + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "25762:10:2", + "type": "" + } + ] }, { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "25852:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "25854:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "25854:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25854:18:2" + } + ] + }, + "condition": { "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "21342:9:2" + "src": "25811:10:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21353:2:2", - "type": "", - "value": "32" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "25823:2:2" } ], "functionName": { - "name": "add", + "name": "gt", "nodeType": "YulIdentifier", - "src": "21338:3:2" + "src": "25808:2:2" }, "nodeType": "YulFunctionCall", - "src": "21338:18:2" + "src": "25808:18:2" }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21358:2:2", - "type": "", - "value": "28" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21331:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21331:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21331:30:2" - }, - { - "expression": { - "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "21381:9:2" + "src": "25831:10:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21392:2:2", - "type": "", - "value": "64" + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "25843:6:2" } ], "functionName": { - "name": "add", + "name": "lt", "nodeType": "YulIdentifier", - "src": "21377:3:2" + "src": "25828:2:2" }, "nodeType": "YulFunctionCall", - "src": "21377:18:2" - }, + "src": "25828:22:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "25805:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "25805:46:2" + }, + "nodeType": "YulIf", + "src": "25802:72:2" + }, + { + "expression": { + "arguments": [ { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "kind": "string", + "kind": "number", "nodeType": "YulLiteral", - "src": "21397:30:2", + "src": "25890:4:2", "type": "", - "value": "must upload commitment first" + "value": "0x40" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "25896:10:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21370:6:2" + "src": "25883:6:2" }, "nodeType": "YulFunctionCall", - "src": "21370:58:2" + "src": "25883:24:2" }, "nodeType": "YulExpressionStatement", - "src": "21370:58:2" + "src": "25883:24:2" }, { - "nodeType": "YulAssignment", - "src": "21437:26:2", + "nodeType": "YulVariableDeclaration", + "src": "25916:25:2", "value": { "arguments": [ { - "name": "headStart", + "name": "_2", "nodeType": "YulIdentifier", - "src": "21449:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21460:2:2", - "type": "", - "value": "96" + "src": "25938:2:2" } ], "functionName": { - "name": "add", + "name": "mload", "nodeType": "YulIdentifier", - "src": "21445:3:2" + "src": "25932:5:2" }, "nodeType": "YulFunctionCall", - "src": "21445:18:2" + "src": "25932:9:2" }, - "variableNames": [ + "variables": [ { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21437:4:2" + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "25920:8:2", + "type": "" } ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21268:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21282:4:2", - "type": "" - } - ], - "src": "21117:352:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21648:223:2", - "statements": [ + }, { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "25970:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25979:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25982:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "25972:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "25972:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "25972:12:2" + } + ] + }, + "condition": { "arguments": [ { - "name": "headStart", + "name": "offset_1", "nodeType": "YulIdentifier", - "src": "21665:9:2" + "src": "25956:8:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21676:2:2", - "type": "", - "value": "32" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "25966:2:2" } ], "functionName": { - "name": "mstore", + "name": "gt", "nodeType": "YulIdentifier", - "src": "21658:6:2" + "src": "25953:2:2" }, "nodeType": "YulFunctionCall", - "src": "21658:21:2" + "src": "25953:16:2" }, - "nodeType": "YulExpressionStatement", - "src": "21658:21:2" + "nodeType": "YulIf", + "src": "25950:36:2" }, { "expression": { "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "26002:6:2" + }, { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21699:9:2" + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "26043:2:2" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "26047:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26039:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "26039:17:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21710:2:2", - "type": "", - "value": "32" + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "26058:7:2" } ], "functionName": { - "name": "add", + "name": "abi_decode_string_fromMemory", "nodeType": "YulIdentifier", - "src": "21695:3:2" + "src": "26010:28:2" }, "nodeType": "YulFunctionCall", - "src": "21695:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21715:2:2", - "type": "", - "value": "33" + "src": "26010:56:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21688:6:2" + "src": "25995:6:2" }, "nodeType": "YulFunctionCall", - "src": "21688:30:2" + "src": "25995:72:2" }, "nodeType": "YulExpressionStatement", - "src": "21688:30:2" + "src": "25995:72:2" }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "26076:34:2", + "value": { "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "_2", "nodeType": "YulIdentifier", - "src": "21738:9:2" + "src": "26102:2:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21749:2:2", + "src": "26106:2:2", "type": "", - "value": "64" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21734:3:2" + "src": "26098:3:2" }, "nodeType": "YulFunctionCall", - "src": "21734:18:2" + "src": "26098:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "26092:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "26092:18:2" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "26080:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26139:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26148:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26151:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "26141:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "26141:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "26141:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "26125:8:2" }, { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21754:34:2", - "type": "", - "value": "cannot upload seed multiple time" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "26135:2:2" } ], "functionName": { - "name": "mstore", + "name": "gt", "nodeType": "YulIdentifier", - "src": "21727:6:2" + "src": "26122:2:2" }, "nodeType": "YulFunctionCall", - "src": "21727:62:2" + "src": "26122:16:2" }, - "nodeType": "YulExpressionStatement", - "src": "21727:62:2" + "nodeType": "YulIf", + "src": "26119:36:2" }, { "expression": { @@ -16190,106 +19068,123 @@ { "arguments": [ { - "name": "headStart", + "name": "memPtr", "nodeType": "YulIdentifier", - "src": "21809:9:2" + "src": "26175:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21820:2:2", + "src": "26183:2:2", "type": "", - "value": "96" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21805:3:2" + "src": "26171:3:2" }, "nodeType": "YulFunctionCall", - "src": "21805:18:2" + "src": "26171:15:2" }, { - "hexValue": "73", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21825:3:2", - "type": "", - "value": "s" + "arguments": [ + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "26221:2:2" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "26225:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26217:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "26217:17:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "26236:7:2" + } + ], + "functionName": { + "name": "abi_decode_string_fromMemory", + "nodeType": "YulIdentifier", + "src": "26188:28:2" + }, + "nodeType": "YulFunctionCall", + "src": "26188:56:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21798:6:2" + "src": "26164:6:2" }, "nodeType": "YulFunctionCall", - "src": "21798:31:2" + "src": "26164:81:2" }, "nodeType": "YulExpressionStatement", - "src": "21798:31:2" + "src": "26164:81:2" }, { "nodeType": "YulAssignment", - "src": "21838:27:2", + "src": "26254:16:2", "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21850:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21861:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21846:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21846:19:2" + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "26264:6:2" }, "variableNames": [ { - "name": "tail", + "name": "value0", "nodeType": "YulIdentifier", - "src": "21838:4:2" + "src": "26254:6:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_decode_tuple_t_struct$_Node_$1934_memory_ptr_fromMemory", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "21625:9:2", + "src": "25403:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "25414:7:2", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "value0", "nodeType": "YulTypedName", - "src": "21639:4:2", + "src": "25426:6:2", "type": "" } ], - "src": "21474:397:2" + "src": "25334:942:2" }, { "body": { "nodeType": "YulBlock", - "src": "22216:539:2", + "src": "26574:450:2", "statements": [ { "expression": { @@ -16297,24 +19192,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22233:9:2" + "src": "26591:9:2" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "22244:6:2" + "src": "26602:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22226:6:2" + "src": "26584:6:2" }, "nodeType": "YulFunctionCall", - "src": "22226:25:2" + "src": "26584:25:2" }, "nodeType": "YulExpressionStatement", - "src": "22226:25:2" + "src": "26584:25:2" }, { "expression": { @@ -16324,12 +19219,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22271:9:2" + "src": "26629:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22282:2:2", + "src": "26640:2:2", "type": "", "value": "32" } @@ -16337,123 +19232,85 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22267:3:2" + "src": "26625:3:2" }, "nodeType": "YulFunctionCall", - "src": "22267:18:2" + "src": "26625:18:2" }, { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "22291:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22299:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "22287:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22287:31:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "26645:3:2", + "type": "", + "value": "160" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22260:6:2" + "src": "26618:6:2" }, "nodeType": "YulFunctionCall", - "src": "22260:59:2" + "src": "26618:31:2" }, "nodeType": "YulExpressionStatement", - "src": "22260:59:2" + "src": "26618:31:2" }, { "nodeType": "YulVariableDeclaration", - "src": "22328:52:2", + "src": "26658:76:2", "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22338:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "22332:2:2", - "type": "" - } - ] - }, - { - "expression": { "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "26698:6:2" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "26706:6:2" + }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22400:9:2" + "src": "26718:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22411:2:2", + "src": "26729:3:2", "type": "", - "value": "64" + "value": "160" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22396:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22396:18:2" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "22420:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22428:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "22416:3:2" + "src": "26714:3:2" }, "nodeType": "YulFunctionCall", - "src": "22416:15:2" + "src": "26714:19:2" } ], "functionName": { - "name": "mstore", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "22389:6:2" + "src": "26672:25:2" }, "nodeType": "YulFunctionCall", - "src": "22389:43:2" + "src": "26672:62:2" }, - "nodeType": "YulExpressionStatement", - "src": "22389:43:2" + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "26662:6:2", + "type": "" + } + ] }, { "expression": { @@ -16463,101 +19320,89 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22452:9:2" + "src": "26754:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22463:2:2", + "src": "26765:2:2", "type": "", - "value": "96" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22448:3:2" + "src": "26750:3:2" }, "nodeType": "YulFunctionCall", - "src": "22448:18:2" + "src": "26750:18:2" }, { "arguments": [ { - "name": "value3", + "name": "tail_1", "nodeType": "YulIdentifier", - "src": "22472:6:2" + "src": "26774:6:2" }, { - "name": "_1", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "22480:2:2" + "src": "26782:9:2" } ], "functionName": { - "name": "and", + "name": "sub", "nodeType": "YulIdentifier", - "src": "22468:3:2" + "src": "26770:3:2" }, "nodeType": "YulFunctionCall", - "src": "22468:15:2" + "src": "26770:22:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22441:6:2" + "src": "26743:6:2" }, "nodeType": "YulFunctionCall", - "src": "22441:43:2" + "src": "26743:50:2" }, "nodeType": "YulExpressionStatement", - "src": "22441:43:2" + "src": "26743:50:2" }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "26802:47:2", + "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22504:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22515:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22500:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22500:19:2" + "name": "value3", + "nodeType": "YulIdentifier", + "src": "26834:6:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22521:3:2", - "type": "", - "value": "192" + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "26842:6:2" } ], "functionName": { - "name": "mstore", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "22493:6:2" + "src": "26816:17:2" }, "nodeType": "YulFunctionCall", - "src": "22493:32:2" + "src": "26816:33:2" }, - "nodeType": "YulExpressionStatement", - "src": "22493:32:2" + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "26806:6:2", + "type": "" + } + ] }, { "expression": { @@ -16567,42 +19412,40 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22545:9:2" + "src": "26869:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22556:3:2", + "src": "26880:2:2", "type": "", - "value": "192" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22541:3:2" + "src": "26865:3:2" }, "nodeType": "YulFunctionCall", - "src": "22541:19:2" + "src": "26865:18:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22562:1:2", - "type": "", - "value": "4" + "name": "value4", + "nodeType": "YulIdentifier", + "src": "26885:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22534:6:2" + "src": "26858:6:2" }, "nodeType": "YulFunctionCall", - "src": "22534:30:2" + "src": "26858:34:2" }, "nodeType": "YulExpressionStatement", - "src": "22534:30:2" + "src": "26858:34:2" }, { "expression": { @@ -16612,204 +19455,145 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22584:9:2" + "src": "26912:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22595:3:2", + "src": "26923:3:2", "type": "", - "value": "224" + "value": "128" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22580:3:2" + "src": "26908:3:2" }, "nodeType": "YulFunctionCall", - "src": "22580:19:2" + "src": "26908:19:2" }, - { - "hexValue": "53454544", - "kind": "string", - "nodeType": "YulLiteral", - "src": "22601:6:2", - "type": "", - "value": "SEED" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22573:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22573:35:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22573:35:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22617:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22627:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "22621:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ { "arguments": [ { - "name": "headStart", + "name": "tail_2", "nodeType": "YulIdentifier", - "src": "22650:9:2" + "src": "26933:6:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22661:3:2", - "type": "", - "value": "160" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26941:9:2" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "22646:3:2" + "src": "26929:3:2" }, "nodeType": "YulFunctionCall", - "src": "22646:19:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "22667:2:2" + "src": "26929:22:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22639:6:2" + "src": "26901:6:2" }, "nodeType": "YulFunctionCall", - "src": "22639:31:2" + "src": "26901:51:2" }, "nodeType": "YulExpressionStatement", - "src": "22639:31:2" + "src": "26901:51:2" }, { "nodeType": "YulAssignment", - "src": "22679:70:2", + "src": "26961:57:2", "value": { "arguments": [ { - "name": "value4", + "name": "value5", "nodeType": "YulIdentifier", - "src": "22714:6:2" + "src": "26995:6:2" }, { - "name": "value5", + "name": "value6", "nodeType": "YulIdentifier", - "src": "22722:6:2" + "src": "27003:6:2" }, { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22734:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "22745:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22730:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22730:18:2" + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "27011:6:2" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "22687:26:2" + "src": "26969:25:2" }, "nodeType": "YulFunctionCall", - "src": "22687:62:2" + "src": "26969:49:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22679:4:2" + "src": "26961:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_memory_ptr_t_bytes32_t_string_calldata_ptr__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "22145:9:2", + "src": "26495:9:2", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "26506:6:2", "type": "" }, { "name": "value5", "nodeType": "YulTypedName", - "src": "22156:6:2", + "src": "26514:6:2", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "22164:6:2", + "src": "26522:6:2", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "22172:6:2", + "src": "26530:6:2", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "22180:6:2", + "src": "26538:6:2", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "22188:6:2", + "src": "26546:6:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "22196:6:2", + "src": "26554:6:2", "type": "" } ], @@ -16817,16 +19601,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "22207:4:2", + "src": "26565:4:2", "type": "" } ], - "src": "21876:879:2" + "src": "26281:743:2" }, { "body": { "nodeType": "YulBlock", - "src": "22934:171:2", + "src": "27203:169:2", "statements": [ { "expression": { @@ -16834,12 +19618,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22951:9:2" + "src": "27220:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22962:2:2", + "src": "27231:2:2", "type": "", "value": "32" } @@ -16847,13 +19631,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22944:6:2" + "src": "27213:6:2" }, "nodeType": "YulFunctionCall", - "src": "22944:21:2" + "src": "27213:21:2" }, "nodeType": "YulExpressionStatement", - "src": "22944:21:2" + "src": "27213:21:2" }, { "expression": { @@ -16863,12 +19647,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22985:9:2" + "src": "27254:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22996:2:2", + "src": "27265:2:2", "type": "", "value": "32" } @@ -16876,29 +19660,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22981:3:2" + "src": "27250:3:2" }, "nodeType": "YulFunctionCall", - "src": "22981:18:2" + "src": "27250:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23001:2:2", + "src": "27270:2:2", "type": "", - "value": "21" + "value": "19" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22974:6:2" + "src": "27243:6:2" }, "nodeType": "YulFunctionCall", - "src": "22974:30:2" + "src": "27243:30:2" }, "nodeType": "YulExpressionStatement", - "src": "22974:30:2" + "src": "27243:30:2" }, { "expression": { @@ -16908,12 +19692,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23024:9:2" + "src": "27293:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23035:2:2", + "src": "27304:2:2", "type": "", "value": "64" } @@ -16921,45 +19705,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23020:3:2" + "src": "27289:3:2" }, "nodeType": "YulFunctionCall", - "src": "23020:18:2" + "src": "27289:18:2" }, { - "hexValue": "6a6f696e2070686173652068617320706173736564", + "hexValue": "43616c6c6572206973206e6f74206f776e6572", "kind": "string", "nodeType": "YulLiteral", - "src": "23040:23:2", + "src": "27309:21:2", "type": "", - "value": "join phase has passed" + "value": "Caller is not owner" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23013:6:2" + "src": "27282:6:2" }, "nodeType": "YulFunctionCall", - "src": "23013:51:2" + "src": "27282:49:2" }, "nodeType": "YulExpressionStatement", - "src": "23013:51:2" + "src": "27282:49:2" }, { "nodeType": "YulAssignment", - "src": "23073:26:2", + "src": "27340:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23085:9:2" + "src": "27352:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23096:2:2", + "src": "27363:2:2", "type": "", "value": "96" } @@ -16967,28 +19751,28 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23081:3:2" + "src": "27348:3:2" }, "nodeType": "YulFunctionCall", - "src": "23081:18:2" + "src": "27348:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23073:4:2" + "src": "27340:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "22911:9:2", + "src": "27180:9:2", "type": "" } ], @@ -16996,16 +19780,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "22925:4:2", + "src": "27194:4:2", "type": "" } ], - "src": "22760:345:2" + "src": "27029:343:2" }, { "body": { "nodeType": "YulBlock", - "src": "23284:231:2", + "src": "27551:179:2", "statements": [ { "expression": { @@ -17013,12 +19797,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23301:9:2" + "src": "27568:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23312:2:2", + "src": "27579:2:2", "type": "", "value": "32" } @@ -17026,13 +19810,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23294:6:2" + "src": "27561:6:2" }, "nodeType": "YulFunctionCall", - "src": "23294:21:2" + "src": "27561:21:2" }, "nodeType": "YulExpressionStatement", - "src": "23294:21:2" + "src": "27561:21:2" }, { "expression": { @@ -17042,12 +19826,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23335:9:2" + "src": "27602:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23346:2:2", + "src": "27613:2:2", "type": "", "value": "32" } @@ -17055,29 +19839,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23331:3:2" + "src": "27598:3:2" }, "nodeType": "YulFunctionCall", - "src": "23331:18:2" + "src": "27598:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23351:2:2", + "src": "27618:2:2", "type": "", - "value": "41" + "value": "29" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23324:6:2" + "src": "27591:6:2" }, "nodeType": "YulFunctionCall", - "src": "23324:30:2" + "src": "27591:30:2" }, "nodeType": "YulExpressionStatement", - "src": "23324:30:2" + "src": "27591:30:2" }, { "expression": { @@ -17087,12 +19871,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23374:9:2" + "src": "27641:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23385:2:2", + "src": "27652:2:2", "type": "", "value": "64" } @@ -17100,120 +19884,74 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23370:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23370:18:2" - }, - { - "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23390:34:2", - "type": "", - "value": "Cannot join the same round multi" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23363:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23363:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23363:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23445:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23456:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23441:3:2" + "src": "27637:3:2" }, "nodeType": "YulFunctionCall", - "src": "23441:18:2" + "src": "27637:18:2" }, { - "hexValue": "706c652074696d6573", + "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", "kind": "string", "nodeType": "YulLiteral", - "src": "23461:11:2", + "src": "27657:31:2", "type": "", - "value": "ple times" + "value": "This round is not running now" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23434:6:2" + "src": "27630:6:2" }, "nodeType": "YulFunctionCall", - "src": "23434:39:2" + "src": "27630:59:2" }, "nodeType": "YulExpressionStatement", - "src": "23434:39:2" + "src": "27630:59:2" }, { "nodeType": "YulAssignment", - "src": "23482:27:2", + "src": "27698:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23494:9:2" + "src": "27710:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23505:3:2", + "src": "27721:2:2", "type": "", - "value": "128" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23490:3:2" + "src": "27706:3:2" }, "nodeType": "YulFunctionCall", - "src": "23490:19:2" + "src": "27706:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23482:4:2" + "src": "27698:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "23261:9:2", + "src": "27528:9:2", "type": "" } ], @@ -17221,16 +19959,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "23275:4:2", + "src": "27542:4:2", "type": "" } ], - "src": "23110:405:2" + "src": "27377:353:2" }, { "body": { "nodeType": "YulBlock", - "src": "23694:169:2", + "src": "27909:245:2", "statements": [ { "expression": { @@ -17238,12 +19976,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23711:9:2" + "src": "27926:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23722:2:2", + "src": "27937:2:2", "type": "", "value": "32" } @@ -17251,13 +19989,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23704:6:2" + "src": "27919:6:2" }, "nodeType": "YulFunctionCall", - "src": "23704:21:2" + "src": "27919:21:2" }, "nodeType": "YulExpressionStatement", - "src": "23704:21:2" + "src": "27919:21:2" }, { "expression": { @@ -17267,12 +20005,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23745:9:2" + "src": "27960:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23756:2:2", + "src": "27971:2:2", "type": "", "value": "32" } @@ -17280,29 +20018,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23741:3:2" + "src": "27956:3:2" }, "nodeType": "YulFunctionCall", - "src": "23741:18:2" + "src": "27956:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23761:2:2", + "src": "27976:2:2", "type": "", - "value": "19" + "value": "55" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23734:6:2" + "src": "27949:6:2" }, "nodeType": "YulFunctionCall", - "src": "23734:30:2" + "src": "27949:30:2" }, "nodeType": "YulExpressionStatement", - "src": "23734:30:2" + "src": "27949:30:2" }, { "expression": { @@ -17312,12 +20050,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23784:9:2" + "src": "27999:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23795:2:2", + "src": "28010:2:2", "type": "", "value": "64" } @@ -17325,163 +20063,30 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23780:3:2" + "src": "27995:3:2" }, "nodeType": "YulFunctionCall", - "src": "23780:18:2" + "src": "27995:18:2" }, { - "hexValue": "43616c6c6572206973206e6f74206f776e6572", + "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f", "kind": "string", "nodeType": "YulLiteral", - "src": "23800:21:2", + "src": "28015:34:2", "type": "", - "value": "Caller is not owner" + "value": "receivers length is not equal to" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23773:6:2" + "src": "27988:6:2" }, "nodeType": "YulFunctionCall", - "src": "23773:49:2" + "src": "27988:62:2" }, "nodeType": "YulExpressionStatement", - "src": "23773:49:2" - }, - { - "nodeType": "YulAssignment", - "src": "23831:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23843:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23854:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23839:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23839:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23831:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23671:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23685:4:2", - "type": "" - } - ], - "src": "23520:343:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24042:179:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24059:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24070:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24052:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24052:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24052:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24093:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24104:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24089:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24089:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24109:2:2", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24082:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24082:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24082:30:2" + "src": "27988:62:2" }, { "expression": { @@ -17491,87 +20096,87 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24132:9:2" + "src": "28070:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24143:2:2", + "src": "28081:2:2", "type": "", - "value": "64" + "value": "96" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24128:3:2" + "src": "28066:3:2" }, "nodeType": "YulFunctionCall", - "src": "24128:18:2" + "src": "28066:18:2" }, { - "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", + "hexValue": "2073656564436f6d6d69746d656e7473206c656e677468", "kind": "string", "nodeType": "YulLiteral", - "src": "24148:31:2", + "src": "28086:25:2", "type": "", - "value": "This round is not running now" + "value": " seedCommitments length" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24121:6:2" + "src": "28059:6:2" }, "nodeType": "YulFunctionCall", - "src": "24121:59:2" + "src": "28059:53:2" }, "nodeType": "YulExpressionStatement", - "src": "24121:59:2" + "src": "28059:53:2" }, { "nodeType": "YulAssignment", - "src": "24189:26:2", + "src": "28121:27:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24201:9:2" + "src": "28133:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24212:2:2", + "src": "28144:3:2", "type": "", - "value": "96" + "value": "128" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24197:3:2" + "src": "28129:3:2" }, "nodeType": "YulFunctionCall", - "src": "24197:18:2" + "src": "28129:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24189:4:2" + "src": "28121:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24019:9:2", + "src": "27886:9:2", "type": "" } ], @@ -17579,16 +20184,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24033:4:2", + "src": "27900:4:2", "type": "" } ], - "src": "23868:353:2" + "src": "27735:419:2" }, { "body": { "nodeType": "YulBlock", - "src": "24400:177:2", + "src": "28333:177:2", "statements": [ { "expression": { @@ -17596,12 +20201,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24417:9:2" + "src": "28350:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24428:2:2", + "src": "28361:2:2", "type": "", "value": "32" } @@ -17609,13 +20214,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24410:6:2" + "src": "28343:6:2" }, "nodeType": "YulFunctionCall", - "src": "24410:21:2" + "src": "28343:21:2" }, "nodeType": "YulExpressionStatement", - "src": "24410:21:2" + "src": "28343:21:2" }, { "expression": { @@ -17625,12 +20230,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24451:9:2" + "src": "28384:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24462:2:2", + "src": "28395:2:2", "type": "", "value": "32" } @@ -17638,15 +20243,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24447:3:2" + "src": "28380:3:2" }, "nodeType": "YulFunctionCall", - "src": "24447:18:2" + "src": "28380:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24467:2:2", + "src": "28400:2:2", "type": "", "value": "27" } @@ -17654,13 +20259,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24440:6:2" + "src": "28373:6:2" }, "nodeType": "YulFunctionCall", - "src": "24440:30:2" + "src": "28373:30:2" }, "nodeType": "YulExpressionStatement", - "src": "24440:30:2" + "src": "28373:30:2" }, { "expression": { @@ -17670,12 +20275,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24490:9:2" + "src": "28423:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24501:2:2", + "src": "28434:2:2", "type": "", "value": "64" } @@ -17683,16 +20288,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24486:3:2" + "src": "28419:3:2" }, "nodeType": "YulFunctionCall", - "src": "24486:18:2" + "src": "28419:18:2" }, { "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", "kind": "string", "nodeType": "YulLiteral", - "src": "24506:29:2", + "src": "28439:29:2", "type": "", "value": "not in secret sharing phase" } @@ -17700,28 +20305,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24479:6:2" + "src": "28412:6:2" }, "nodeType": "YulFunctionCall", - "src": "24479:57:2" + "src": "28412:57:2" }, "nodeType": "YulExpressionStatement", - "src": "24479:57:2" + "src": "28412:57:2" }, { "nodeType": "YulAssignment", - "src": "24545:26:2", + "src": "28478:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24557:9:2" + "src": "28490:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24568:2:2", + "src": "28501:2:2", "type": "", "value": "96" } @@ -17729,16 +20334,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24553:3:2" + "src": "28486:3:2" }, "nodeType": "YulFunctionCall", - "src": "24553:18:2" + "src": "28486:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24545:4:2" + "src": "28478:4:2" } ] } @@ -17750,7 +20355,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24377:9:2", + "src": "28310:9:2", "type": "" } ], @@ -17758,16 +20363,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24391:4:2", + "src": "28324:4:2", "type": "" } ], - "src": "24226:351:2" + "src": "28159:351:2" }, { "body": { "nodeType": "YulBlock", - "src": "24756:228:2", + "src": "28689:228:2", "statements": [ { "expression": { @@ -17775,12 +20380,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24773:9:2" + "src": "28706:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24784:2:2", + "src": "28717:2:2", "type": "", "value": "32" } @@ -17788,13 +20393,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24766:6:2" + "src": "28699:6:2" }, "nodeType": "YulFunctionCall", - "src": "24766:21:2" + "src": "28699:21:2" }, "nodeType": "YulExpressionStatement", - "src": "24766:21:2" + "src": "28699:21:2" }, { "expression": { @@ -17804,12 +20409,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24807:9:2" + "src": "28740:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24818:2:2", + "src": "28751:2:2", "type": "", "value": "32" } @@ -17817,15 +20422,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24803:3:2" + "src": "28736:3:2" }, "nodeType": "YulFunctionCall", - "src": "24803:18:2" + "src": "28736:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24823:2:2", + "src": "28756:2:2", "type": "", "value": "38" } @@ -17833,13 +20438,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24796:6:2" + "src": "28729:6:2" }, "nodeType": "YulFunctionCall", - "src": "24796:30:2" + "src": "28729:30:2" }, "nodeType": "YulExpressionStatement", - "src": "24796:30:2" + "src": "28729:30:2" }, { "expression": { @@ -17849,12 +20454,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24846:9:2" + "src": "28779:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24857:2:2", + "src": "28790:2:2", "type": "", "value": "64" } @@ -17862,16 +20467,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24842:3:2" + "src": "28775:3:2" }, "nodeType": "YulFunctionCall", - "src": "24842:18:2" + "src": "28775:18:2" }, { "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c65", "kind": "string", "nodeType": "YulLiteral", - "src": "24862:34:2", + "src": "28795:34:2", "type": "", "value": "cannot upload seed cmmt multiple" } @@ -17879,13 +20484,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24835:6:2" + "src": "28768:6:2" }, "nodeType": "YulFunctionCall", - "src": "24835:62:2" + "src": "28768:62:2" }, "nodeType": "YulExpressionStatement", - "src": "24835:62:2" + "src": "28768:62:2" }, { "expression": { @@ -17895,12 +20500,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24917:9:2" + "src": "28850:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24928:2:2", + "src": "28861:2:2", "type": "", "value": "96" } @@ -17908,16 +20513,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24913:3:2" + "src": "28846:3:2" }, "nodeType": "YulFunctionCall", - "src": "24913:18:2" + "src": "28846:18:2" }, { "hexValue": "2074696d6573", "kind": "string", "nodeType": "YulLiteral", - "src": "24933:8:2", + "src": "28866:8:2", "type": "", "value": " times" } @@ -17925,28 +20530,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24906:6:2" + "src": "28839:6:2" }, "nodeType": "YulFunctionCall", - "src": "24906:36:2" + "src": "28839:36:2" }, "nodeType": "YulExpressionStatement", - "src": "24906:36:2" + "src": "28839:36:2" }, { "nodeType": "YulAssignment", - "src": "24951:27:2", + "src": "28884:27:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24963:9:2" + "src": "28896:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24974:3:2", + "src": "28907:3:2", "type": "", "value": "128" } @@ -17954,16 +20559,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24959:3:2" + "src": "28892:3:2" }, "nodeType": "YulFunctionCall", - "src": "24959:19:2" + "src": "28892:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24951:4:2" + "src": "28884:4:2" } ] } @@ -17975,7 +20580,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24733:9:2", + "src": "28666:9:2", "type": "" } ], @@ -17983,16 +20588,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24747:4:2", + "src": "28680:4:2", "type": "" } ], - "src": "24582:402:2" + "src": "28515:402:2" }, { "body": { "nodeType": "YulBlock", - "src": "25329:543:2", + "src": "29262:542:2", "statements": [ { "expression": { @@ -18000,24 +20605,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25346:9:2" + "src": "29279:9:2" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "25357:6:2" + "src": "29290:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25339:6:2" + "src": "29272:6:2" }, "nodeType": "YulFunctionCall", - "src": "25339:25:2" + "src": "29272:25:2" }, "nodeType": "YulExpressionStatement", - "src": "25339:25:2" + "src": "29272:25:2" }, { "expression": { @@ -18027,12 +20632,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25384:9:2" + "src": "29317:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25395:2:2", + "src": "29328:2:2", "type": "", "value": "32" } @@ -18040,22 +20645,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25380:3:2" + "src": "29313:3:2" }, "nodeType": "YulFunctionCall", - "src": "25380:18:2" + "src": "29313:18:2" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "25404:6:2" + "src": "29337:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25412:18:2", + "src": "29345:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -18063,30 +20668,30 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "25400:3:2" + "src": "29333:3:2" }, "nodeType": "YulFunctionCall", - "src": "25400:31:2" + "src": "29333:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25373:6:2" + "src": "29306:6:2" }, "nodeType": "YulFunctionCall", - "src": "25373:59:2" + "src": "29306:59:2" }, "nodeType": "YulExpressionStatement", - "src": "25373:59:2" + "src": "29306:59:2" }, { "nodeType": "YulVariableDeclaration", - "src": "25441:52:2", + "src": "29374:52:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "25451:42:2", + "src": "29384:42:2", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" }, @@ -18094,7 +20699,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "25445:2:2", + "src": "29378:2:2", "type": "" } ] @@ -18107,12 +20712,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25513:9:2" + "src": "29446:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25524:2:2", + "src": "29457:2:2", "type": "", "value": "64" } @@ -18120,43 +20725,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25509:3:2" + "src": "29442:3:2" }, "nodeType": "YulFunctionCall", - "src": "25509:18:2" + "src": "29442:18:2" }, { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "25533:6:2" + "src": "29466:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "25541:2:2" + "src": "29474:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "25529:3:2" + "src": "29462:3:2" }, "nodeType": "YulFunctionCall", - "src": "25529:15:2" + "src": "29462:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25502:6:2" + "src": "29435:6:2" }, "nodeType": "YulFunctionCall", - "src": "25502:43:2" + "src": "29435:43:2" }, "nodeType": "YulExpressionStatement", - "src": "25502:43:2" + "src": "29435:43:2" }, { "expression": { @@ -18166,12 +20771,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25565:9:2" + "src": "29498:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25576:2:2", + "src": "29509:2:2", "type": "", "value": "96" } @@ -18179,43 +20784,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25561:3:2" + "src": "29494:3:2" }, "nodeType": "YulFunctionCall", - "src": "25561:18:2" + "src": "29494:18:2" }, { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "25585:6:2" + "src": "29518:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "25593:2:2" + "src": "29526:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "25581:3:2" + "src": "29514:3:2" }, "nodeType": "YulFunctionCall", - "src": "25581:15:2" + "src": "29514:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25554:6:2" + "src": "29487:6:2" }, "nodeType": "YulFunctionCall", - "src": "25554:43:2" + "src": "29487:43:2" }, "nodeType": "YulExpressionStatement", - "src": "25554:43:2" + "src": "29487:43:2" }, { "expression": { @@ -18225,12 +20830,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25617:9:2" + "src": "29550:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25628:3:2", + "src": "29561:3:2", "type": "", "value": "128" } @@ -18238,15 +20843,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25613:3:2" + "src": "29546:3:2" }, "nodeType": "YulFunctionCall", - "src": "25613:19:2" + "src": "29546:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25634:3:2", + "src": "29567:3:2", "type": "", "value": "192" } @@ -18254,13 +20859,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25606:6:2" + "src": "29539:6:2" }, "nodeType": "YulFunctionCall", - "src": "25606:32:2" + "src": "29539:32:2" }, "nodeType": "YulExpressionStatement", - "src": "25606:32:2" + "src": "29539:32:2" }, { "expression": { @@ -18270,12 +20875,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25658:9:2" + "src": "29591:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25669:3:2", + "src": "29602:3:2", "type": "", "value": "192" } @@ -18283,15 +20888,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25654:3:2" + "src": "29587:3:2" }, "nodeType": "YulFunctionCall", - "src": "25654:19:2" + "src": "29587:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25675:1:2", + "src": "29608:1:2", "type": "", "value": "8" } @@ -18299,13 +20904,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25647:6:2" + "src": "29580:6:2" }, "nodeType": "YulFunctionCall", - "src": "25647:30:2" + "src": "29580:30:2" }, "nodeType": "YulExpressionStatement", - "src": "25647:30:2" + "src": "29580:30:2" }, { "expression": { @@ -18315,12 +20920,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25697:9:2" + "src": "29630:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25708:3:2", + "src": "29641:3:2", "type": "", "value": "224" } @@ -18328,16 +20933,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25693:3:2" + "src": "29626:3:2" }, "nodeType": "YulFunctionCall", - "src": "25693:19:2" + "src": "29626:19:2" }, { "hexValue": "53454544434d4d54", "kind": "string", "nodeType": "YulLiteral", - "src": "25714:10:2", + "src": "29647:10:2", "type": "", "value": "SEEDCMMT" } @@ -18345,21 +20950,21 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25686:6:2" + "src": "29619:6:2" }, "nodeType": "YulFunctionCall", - "src": "25686:39:2" + "src": "29619:39:2" }, "nodeType": "YulExpressionStatement", - "src": "25686:39:2" + "src": "29619:39:2" }, { "nodeType": "YulVariableDeclaration", - "src": "25734:13:2", + "src": "29667:13:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "25744:3:2", + "src": "29677:3:2", "type": "", "value": "256" }, @@ -18367,7 +20972,7 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "25738:2:2", + "src": "29671:2:2", "type": "" } ] @@ -18380,12 +20985,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25767:9:2" + "src": "29700:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25778:3:2", + "src": "29711:3:2", "type": "", "value": "160" } @@ -18393,78 +20998,78 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25763:3:2" + "src": "29696:3:2" }, "nodeType": "YulFunctionCall", - "src": "25763:19:2" + "src": "29696:19:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "25784:2:2" + "src": "29717:2:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25756:6:2" + "src": "29689:6:2" }, "nodeType": "YulFunctionCall", - "src": "25756:31:2" + "src": "29689:31:2" }, "nodeType": "YulExpressionStatement", - "src": "25756:31:2" + "src": "29689:31:2" }, { "nodeType": "YulAssignment", - "src": "25796:70:2", + "src": "29729:69:2", "value": { "arguments": [ { "name": "value4", "nodeType": "YulIdentifier", - "src": "25831:6:2" + "src": "29763:6:2" }, { "name": "value5", "nodeType": "YulIdentifier", - "src": "25839:6:2" + "src": "29771:6:2" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25851:9:2" + "src": "29783:9:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "25862:2:2" + "src": "29794:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25847:3:2" + "src": "29779:3:2" }, "nodeType": "YulFunctionCall", - "src": "25847:18:2" + "src": "29779:18:2" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "25804:26:2" + "src": "29737:25:2" }, "nodeType": "YulFunctionCall", - "src": "25804:62:2" + "src": "29737:61:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25796:4:2" + "src": "29729:4:2" } ] } @@ -18476,43 +21081,43 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25258:9:2", + "src": "29191:9:2", "type": "" }, { "name": "value5", "nodeType": "YulTypedName", - "src": "25269:6:2", + "src": "29202:6:2", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "25277:6:2", + "src": "29210:6:2", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "25285:6:2", + "src": "29218:6:2", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "25293:6:2", + "src": "29226:6:2", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "25301:6:2", + "src": "29234:6:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "25309:6:2", + "src": "29242:6:2", "type": "" } ], @@ -18520,16 +21125,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25320:4:2", + "src": "29253:4:2", "type": "" } ], - "src": "24989:883:2" + "src": "28922:882:2" }, { "body": { "nodeType": "YulBlock", - "src": "26051:172:2", + "src": "29983:242:2", "statements": [ { "expression": { @@ -18537,12 +21142,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26068:9:2" + "src": "30000:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26079:2:2", + "src": "30011:2:2", "type": "", "value": "32" } @@ -18550,13 +21155,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26061:6:2" + "src": "29993:6:2" }, "nodeType": "YulFunctionCall", - "src": "26061:21:2" + "src": "29993:21:2" }, "nodeType": "YulExpressionStatement", - "src": "26061:21:2" + "src": "29993:21:2" }, { "expression": { @@ -18566,12 +21171,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26102:9:2" + "src": "30034:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26113:2:2", + "src": "30045:2:2", "type": "", "value": "32" } @@ -18579,29 +21184,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26098:3:2" + "src": "30030:3:2" }, "nodeType": "YulFunctionCall", - "src": "26098:18:2" + "src": "30030:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26118:2:2", + "src": "30050:2:2", "type": "", - "value": "22" + "value": "52" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26091:6:2" + "src": "30023:6:2" }, "nodeType": "YulFunctionCall", - "src": "26091:30:2" + "src": "30023:30:2" }, "nodeType": "YulExpressionStatement", - "src": "26091:30:2" + "src": "30023:30:2" }, { "expression": { @@ -18611,12 +21216,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26141:9:2" + "src": "30073:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26152:2:2", + "src": "30084:2:2", "type": "", "value": "64" } @@ -18624,209 +21229,30 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26137:3:2" + "src": "30069:3:2" }, "nodeType": "YulFunctionCall", - "src": "26137:18:2" + "src": "30069:18:2" }, { - "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", + "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f2073", "kind": "string", "nodeType": "YulLiteral", - "src": "26157:24:2", + "src": "30089:34:2", "type": "", - "value": "not in uploading phase" + "value": "senders length is not equal to s" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26130:6:2" + "src": "30062:6:2" }, "nodeType": "YulFunctionCall", - "src": "26130:52:2" + "src": "30062:62:2" }, "nodeType": "YulExpressionStatement", - "src": "26130:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "26191:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26203:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26214:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26199:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26199:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26191:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26028:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26042:4:2", - "type": "" - } - ], - "src": "25877:346:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26402:235:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26419:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26430:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26412:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26412:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26412:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26453:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26464:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26449:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26449:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26469:2:2", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26442:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26442:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26442:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26492:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26503:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26488:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26488:18:2" - }, - { - "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d", - "kind": "string", - "nodeType": "YulLiteral", - "src": "26508:34:2", - "type": "", - "value": "cannot upload weightCommitment m" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26481:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26481:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26481:62:2" + "src": "30062:62:2" }, { "expression": { @@ -18836,12 +21262,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26563:9:2" + "src": "30144:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26574:2:2", + "src": "30155:2:2", "type": "", "value": "96" } @@ -18849,45 +21275,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26559:3:2" + "src": "30140:3:2" }, "nodeType": "YulFunctionCall", - "src": "26559:18:2" + "src": "30140:18:2" }, { - "hexValue": "756c7469706c652074696d6573", + "hexValue": "65637265746b65794d61736b73206c656e677468", "kind": "string", "nodeType": "YulLiteral", - "src": "26579:15:2", + "src": "30160:22:2", "type": "", - "value": "ultiple times" + "value": "ecretkeyMasks length" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26552:6:2" + "src": "30133:6:2" }, "nodeType": "YulFunctionCall", - "src": "26552:43:2" + "src": "30133:50:2" }, "nodeType": "YulExpressionStatement", - "src": "26552:43:2" + "src": "30133:50:2" }, { "nodeType": "YulAssignment", - "src": "26604:27:2", + "src": "30192:27:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26616:9:2" + "src": "30204:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26627:3:2", + "src": "30215:3:2", "type": "", "value": "128" } @@ -18895,28 +21321,28 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26612:3:2" + "src": "30200:3:2" }, "nodeType": "YulFunctionCall", - "src": "26612:19:2" + "src": "30200:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26604:4:2" + "src": "30192:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26379:9:2", + "src": "29960:9:2", "type": "" } ], @@ -18924,16 +21350,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "26393:4:2", + "src": "29974:4:2", "type": "" } ], - "src": "26228:409:2" + "src": "29809:416:2" }, { "body": { "nodeType": "YulBlock", - "src": "26982:541:2", + "src": "30570:540:2", "statements": [ { "expression": { @@ -18941,24 +21367,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26999:9:2" + "src": "30587:9:2" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "27010:6:2" + "src": "30598:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26992:6:2" + "src": "30580:6:2" }, "nodeType": "YulFunctionCall", - "src": "26992:25:2" + "src": "30580:25:2" }, "nodeType": "YulExpressionStatement", - "src": "26992:25:2" + "src": "30580:25:2" }, { "expression": { @@ -18968,12 +21394,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27037:9:2" + "src": "30625:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27048:2:2", + "src": "30636:2:2", "type": "", "value": "32" } @@ -18981,22 +21407,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27033:3:2" + "src": "30621:3:2" }, "nodeType": "YulFunctionCall", - "src": "27033:18:2" + "src": "30621:18:2" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "27057:6:2" + "src": "30645:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27065:18:2", + "src": "30653:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -19004,30 +21430,30 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "27053:3:2" + "src": "30641:3:2" }, "nodeType": "YulFunctionCall", - "src": "27053:31:2" + "src": "30641:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27026:6:2" + "src": "30614:6:2" }, "nodeType": "YulFunctionCall", - "src": "27026:59:2" + "src": "30614:59:2" }, "nodeType": "YulExpressionStatement", - "src": "27026:59:2" + "src": "30614:59:2" }, { "nodeType": "YulVariableDeclaration", - "src": "27094:52:2", + "src": "30682:52:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "27104:42:2", + "src": "30692:42:2", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" }, @@ -19035,7 +21461,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "27098:2:2", + "src": "30686:2:2", "type": "" } ] @@ -19048,12 +21474,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27166:9:2" + "src": "30754:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27177:2:2", + "src": "30765:2:2", "type": "", "value": "64" } @@ -19061,43 +21487,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27162:3:2" + "src": "30750:3:2" }, "nodeType": "YulFunctionCall", - "src": "27162:18:2" + "src": "30750:18:2" }, { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "27186:6:2" + "src": "30774:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "27194:2:2" + "src": "30782:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "27182:3:2" + "src": "30770:3:2" }, "nodeType": "YulFunctionCall", - "src": "27182:15:2" + "src": "30770:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27155:6:2" + "src": "30743:6:2" }, "nodeType": "YulFunctionCall", - "src": "27155:43:2" + "src": "30743:43:2" }, "nodeType": "YulExpressionStatement", - "src": "27155:43:2" + "src": "30743:43:2" }, { "expression": { @@ -19107,12 +21533,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27218:9:2" + "src": "30806:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27229:2:2", + "src": "30817:2:2", "type": "", "value": "96" } @@ -19120,43 +21546,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27214:3:2" + "src": "30802:3:2" }, "nodeType": "YulFunctionCall", - "src": "27214:18:2" + "src": "30802:18:2" }, { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "27238:6:2" + "src": "30826:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "27246:2:2" + "src": "30834:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "27234:3:2" + "src": "30822:3:2" }, "nodeType": "YulFunctionCall", - "src": "27234:15:2" + "src": "30822:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27207:6:2" + "src": "30795:6:2" }, "nodeType": "YulFunctionCall", - "src": "27207:43:2" + "src": "30795:43:2" }, "nodeType": "YulExpressionStatement", - "src": "27207:43:2" + "src": "30795:43:2" }, { "expression": { @@ -19166,12 +21592,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27270:9:2" + "src": "30858:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27281:3:2", + "src": "30869:3:2", "type": "", "value": "128" } @@ -19179,15 +21605,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27266:3:2" + "src": "30854:3:2" }, "nodeType": "YulFunctionCall", - "src": "27266:19:2" + "src": "30854:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27287:3:2", + "src": "30875:3:2", "type": "", "value": "192" } @@ -19195,13 +21621,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27259:6:2" + "src": "30847:6:2" }, "nodeType": "YulFunctionCall", - "src": "27259:32:2" + "src": "30847:32:2" }, "nodeType": "YulExpressionStatement", - "src": "27259:32:2" + "src": "30847:32:2" }, { "expression": { @@ -19211,12 +21637,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27311:9:2" + "src": "30899:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27322:3:2", + "src": "30910:3:2", "type": "", "value": "192" } @@ -19224,15 +21650,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27307:3:2" + "src": "30895:3:2" }, "nodeType": "YulFunctionCall", - "src": "27307:19:2" + "src": "30895:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27328:1:2", + "src": "30916:1:2", "type": "", "value": "6" } @@ -19240,13 +21666,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27300:6:2" + "src": "30888:6:2" }, "nodeType": "YulFunctionCall", - "src": "27300:30:2" + "src": "30888:30:2" }, "nodeType": "YulExpressionStatement", - "src": "27300:30:2" + "src": "30888:30:2" }, { "expression": { @@ -19256,12 +21682,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27350:9:2" + "src": "30938:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27361:3:2", + "src": "30949:3:2", "type": "", "value": "224" } @@ -19269,38 +21695,38 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27346:3:2" + "src": "30934:3:2" }, "nodeType": "YulFunctionCall", - "src": "27346:19:2" + "src": "30934:19:2" }, { - "hexValue": "574549474854", + "hexValue": "534b4d41534b", "kind": "string", "nodeType": "YulLiteral", - "src": "27367:8:2", + "src": "30955:8:2", "type": "", - "value": "WEIGHT" + "value": "SKMASK" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27339:6:2" + "src": "30927:6:2" }, "nodeType": "YulFunctionCall", - "src": "27339:37:2" + "src": "30927:37:2" }, "nodeType": "YulExpressionStatement", - "src": "27339:37:2" + "src": "30927:37:2" }, { "nodeType": "YulVariableDeclaration", - "src": "27385:13:2", + "src": "30973:13:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "27395:3:2", + "src": "30983:3:2", "type": "", "value": "256" }, @@ -19308,7 +21734,7 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "27389:2:2", + "src": "30977:2:2", "type": "" } ] @@ -19321,12 +21747,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27418:9:2" + "src": "31006:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27429:3:2", + "src": "31017:3:2", "type": "", "value": "160" } @@ -19334,126 +21760,126 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27414:3:2" + "src": "31002:3:2" }, "nodeType": "YulFunctionCall", - "src": "27414:19:2" + "src": "31002:19:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "27435:2:2" + "src": "31023:2:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27407:6:2" + "src": "30995:6:2" }, "nodeType": "YulFunctionCall", - "src": "27407:31:2" + "src": "30995:31:2" }, "nodeType": "YulExpressionStatement", - "src": "27407:31:2" + "src": "30995:31:2" }, { "nodeType": "YulAssignment", - "src": "27447:70:2", + "src": "31035:69:2", "value": { "arguments": [ { "name": "value4", "nodeType": "YulIdentifier", - "src": "27482:6:2" + "src": "31069:6:2" }, { "name": "value5", "nodeType": "YulIdentifier", - "src": "27490:6:2" + "src": "31077:6:2" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27502:9:2" + "src": "31089:9:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "27513:2:2" + "src": "31100:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27498:3:2" + "src": "31085:3:2" }, "nodeType": "YulFunctionCall", - "src": "27498:18:2" + "src": "31085:18:2" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "27455:26:2" + "src": "31043:25:2" }, "nodeType": "YulFunctionCall", - "src": "27455:62:2" + "src": "31043:61:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27447:4:2" + "src": "31035:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26911:9:2", + "src": "30499:9:2", "type": "" }, { "name": "value5", "nodeType": "YulTypedName", - "src": "26922:6:2", + "src": "30510:6:2", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "26930:6:2", + "src": "30518:6:2", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "26938:6:2", + "src": "30526:6:2", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "26946:6:2", + "src": "30534:6:2", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "26954:6:2", + "src": "30542:6:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "26962:6:2", + "src": "30550:6:2", "type": "" } ], @@ -19461,16 +21887,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "26973:4:2", + "src": "30561:4:2", "type": "" } ], - "src": "26642:881:2" + "src": "30230:880:2" }, { "body": { "nodeType": "YulBlock", - "src": "27868:546:2", + "src": "31289:250:2", "statements": [ { "expression": { @@ -19478,24 +21904,249 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27885:9:2" + "src": "31306:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31317:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31299:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "31299:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "31299:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31340:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31351:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31336:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "31336:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31356:2:2", + "type": "", + "value": "60" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31329:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "31329:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "31329:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31379:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31390:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31375:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "31375:18:2" + }, + { + "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f", + "kind": "string", + "nodeType": "YulLiteral", + "src": "31395:34:2", + "type": "", + "value": "receivers length is not equal to" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31368:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "31368:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "31368:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31450:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31461:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31446:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "31446:18:2" + }, + { + "hexValue": "207365637265744b6579436f6d6d69746d656e7473206c656e677468", + "kind": "string", + "nodeType": "YulLiteral", + "src": "31466:30:2", + "type": "", + "value": " secretKeyCommitments length" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31439:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "31439:58:2" + }, + "nodeType": "YulExpressionStatement", + "src": "31439:58:2" + }, + { + "nodeType": "YulAssignment", + "src": "31506:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31518:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31529:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31514:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "31514:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "31506:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "31266:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "31280:4:2", + "type": "" + } + ], + "src": "31115:424:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "31884:545:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31901:9:2" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "27896:6:2" + "src": "31912:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27878:6:2" + "src": "31894:6:2" }, "nodeType": "YulFunctionCall", - "src": "27878:25:2" + "src": "31894:25:2" }, "nodeType": "YulExpressionStatement", - "src": "27878:25:2" + "src": "31894:25:2" }, { "expression": { @@ -19505,12 +22156,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27923:9:2" + "src": "31939:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27934:2:2", + "src": "31950:2:2", "type": "", "value": "32" } @@ -19518,22 +22169,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27919:3:2" + "src": "31935:3:2" }, "nodeType": "YulFunctionCall", - "src": "27919:18:2" + "src": "31935:18:2" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "27943:6:2" + "src": "31959:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27951:18:2", + "src": "31967:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -19541,30 +22192,30 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "27939:3:2" + "src": "31955:3:2" }, "nodeType": "YulFunctionCall", - "src": "27939:31:2" + "src": "31955:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27912:6:2" + "src": "31928:6:2" }, "nodeType": "YulFunctionCall", - "src": "27912:59:2" + "src": "31928:59:2" }, "nodeType": "YulExpressionStatement", - "src": "27912:59:2" + "src": "31928:59:2" }, { "nodeType": "YulVariableDeclaration", - "src": "27980:52:2", + "src": "31996:52:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "27990:42:2", + "src": "32006:42:2", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" }, @@ -19572,7 +22223,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "27984:2:2", + "src": "32000:2:2", "type": "" } ] @@ -19585,12 +22236,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28052:9:2" + "src": "32068:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28063:2:2", + "src": "32079:2:2", "type": "", "value": "64" } @@ -19598,43 +22249,192 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28048:3:2" + "src": "32064:3:2" }, "nodeType": "YulFunctionCall", - "src": "28048:18:2" + "src": "32064:18:2" }, { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "28072:6:2" + "src": "32088:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "32096:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "32084:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "32084:15:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32057:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "32057:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "32057:43:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "32120:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32131:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "32116:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "32116:18:2" + }, + { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "32140:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "28080:2:2" + "src": "32148:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "28068:3:2" + "src": "32136:3:2" }, "nodeType": "YulFunctionCall", - "src": "28068:15:2" + "src": "32136:15:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32109:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "32109:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "32109:43:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "32172:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32183:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "32168:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "32168:19:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32189:3:2", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32161:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "32161:32:2" + }, + "nodeType": "YulExpressionStatement", + "src": "32161:32:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "32213:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32224:3:2", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "32209:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "32209:19:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32230:2:2", + "type": "", + "value": "10" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28041:6:2" + "src": "32202:6:2" }, "nodeType": "YulFunctionCall", - "src": "28041:43:2" + "src": "32202:31:2" }, "nodeType": "YulExpressionStatement", - "src": "28041:43:2" + "src": "32202:31:2" }, { "expression": { @@ -19644,56 +22444,62 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28104:9:2" + "src": "32253:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28115:2:2", + "src": "32264:3:2", "type": "", - "value": "96" + "value": "224" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28100:3:2" + "src": "32249:3:2" }, "nodeType": "YulFunctionCall", - "src": "28100:18:2" + "src": "32249:19:2" }, { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "28124:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "28132:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "28120:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28120:15:2" + "hexValue": "534b4d41534b434d4d54", + "kind": "string", + "nodeType": "YulLiteral", + "src": "32270:12:2", + "type": "", + "value": "SKMASKCMMT" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28093:6:2" + "src": "32242:6:2" }, "nodeType": "YulFunctionCall", - "src": "28093:43:2" + "src": "32242:41:2" }, "nodeType": "YulExpressionStatement", - "src": "28093:43:2" + "src": "32242:41:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "32292:13:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32302:3:2", + "type": "", + "value": "256" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "32296:2:2", + "type": "" + } + ] }, { "expression": { @@ -19703,87 +22509,183 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28156:9:2" + "src": "32325:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28167:3:2", + "src": "32336:3:2", "type": "", - "value": "128" + "value": "160" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28152:3:2" + "src": "32321:3:2" }, "nodeType": "YulFunctionCall", - "src": "28152:19:2" + "src": "32321:19:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28173:3:2", - "type": "", - "value": "192" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "32342:2:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28145:6:2" + "src": "32314:6:2" }, "nodeType": "YulFunctionCall", - "src": "28145:32:2" + "src": "32314:31:2" }, "nodeType": "YulExpressionStatement", - "src": "28145:32:2" + "src": "32314:31:2" }, { - "expression": { + "nodeType": "YulAssignment", + "src": "32354:69:2", + "value": { "arguments": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "32388:6:2" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "32396:6:2" + }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28197:9:2" + "src": "32408:9:2" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28208:3:2", - "type": "", - "value": "192" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "32419:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28193:3:2" + "src": "32404:3:2" }, "nodeType": "YulFunctionCall", - "src": "28193:19:2" + "src": "32404:18:2" + } + ], + "functionName": { + "name": "abi_encode_bytes_calldata", + "nodeType": "YulIdentifier", + "src": "32362:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "32362:61:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "32354:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "31813:9:2", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "31824:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "31832:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "31840:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "31848:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "31856:6:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "31864:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "31875:4:2", + "type": "" + } + ], + "src": "31544:885:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32608:172:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "32625:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28214:2:2", + "src": "32636:2:2", "type": "", - "value": "10" + "value": "32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28186:6:2" + "src": "32618:6:2" }, "nodeType": "YulFunctionCall", - "src": "28186:31:2" + "src": "32618:21:2" }, "nodeType": "YulExpressionStatement", - "src": "28186:31:2" + "src": "32618:21:2" }, { "expression": { @@ -19793,62 +22695,42 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28237:9:2" + "src": "32659:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28248:3:2", + "src": "32670:2:2", "type": "", - "value": "224" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28233:3:2" + "src": "32655:3:2" }, "nodeType": "YulFunctionCall", - "src": "28233:19:2" + "src": "32655:18:2" }, { - "hexValue": "534b4d41534b434d4d54", - "kind": "string", + "kind": "number", "nodeType": "YulLiteral", - "src": "28254:12:2", + "src": "32675:2:2", "type": "", - "value": "SKMASKCMMT" + "value": "22" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28226:6:2" + "src": "32648:6:2" }, "nodeType": "YulFunctionCall", - "src": "28226:41:2" + "src": "32648:30:2" }, "nodeType": "YulExpressionStatement", - "src": "28226:41:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "28276:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28286:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "28280:2:2", - "type": "" - } - ] + "src": "32648:30:2" }, { "expression": { @@ -19858,139 +22740,87 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28309:9:2" + "src": "32698:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28320:3:2", + "src": "32709:2:2", "type": "", - "value": "160" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28305:3:2" + "src": "32694:3:2" }, "nodeType": "YulFunctionCall", - "src": "28305:19:2" + "src": "32694:18:2" }, { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "28326:2:2" + "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", + "kind": "string", + "nodeType": "YulLiteral", + "src": "32714:24:2", + "type": "", + "value": "not in uploading phase" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28298:6:2" + "src": "32687:6:2" }, "nodeType": "YulFunctionCall", - "src": "28298:31:2" + "src": "32687:52:2" }, "nodeType": "YulExpressionStatement", - "src": "28298:31:2" + "src": "32687:52:2" }, { "nodeType": "YulAssignment", - "src": "28338:70:2", + "src": "32748:26:2", "value": { "arguments": [ { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "28373:6:2" - }, - { - "name": "value5", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "28381:6:2" + "src": "32760:9:2" }, { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28393:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "28404:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28389:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28389:18:2" + "kind": "number", + "nodeType": "YulLiteral", + "src": "32771:2:2", + "type": "", + "value": "96" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "add", "nodeType": "YulIdentifier", - "src": "28346:26:2" + "src": "32756:3:2" }, "nodeType": "YulFunctionCall", - "src": "28346:62:2" + "src": "32756:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28338:4:2" + "src": "32748:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "27797:9:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "27808:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "27816:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "27824:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "27832:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "27840:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "27848:6:2", + "src": "32585:9:2", "type": "" } ], @@ -19998,16 +22828,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "27859:4:2", + "src": "32599:4:2", "type": "" } ], - "src": "27528:886:2" + "src": "32434:346:2" }, { "body": { "nodeType": "YulBlock", - "src": "28593:225:2", + "src": "32959:235:2", "statements": [ { "expression": { @@ -20015,12 +22845,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28610:9:2" + "src": "32976:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28621:2:2", + "src": "32987:2:2", "type": "", "value": "32" } @@ -20028,13 +22858,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28603:6:2" + "src": "32969:6:2" }, "nodeType": "YulFunctionCall", - "src": "28603:21:2" + "src": "32969:21:2" }, "nodeType": "YulExpressionStatement", - "src": "28603:21:2" + "src": "32969:21:2" }, { "expression": { @@ -20044,12 +22874,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28644:9:2" + "src": "33010:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28655:2:2", + "src": "33021:2:2", "type": "", "value": "32" } @@ -20057,29 +22887,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28640:3:2" + "src": "33006:3:2" }, "nodeType": "YulFunctionCall", - "src": "28640:18:2" + "src": "33006:18:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28660:2:2", + "src": "33026:2:2", "type": "", - "value": "35" + "value": "45" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28633:6:2" + "src": "32999:6:2" }, "nodeType": "YulFunctionCall", - "src": "28633:30:2" + "src": "32999:30:2" }, "nodeType": "YulExpressionStatement", - "src": "28633:30:2" + "src": "32999:30:2" }, { "expression": { @@ -20089,12 +22919,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28683:9:2" + "src": "33049:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28694:2:2", + "src": "33060:2:2", "type": "", "value": "64" } @@ -20102,30 +22932,30 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28679:3:2" + "src": "33045:3:2" }, "nodeType": "YulFunctionCall", - "src": "28679:18:2" + "src": "33045:18:2" }, { - "hexValue": "63616e6e6f742075706c6f616420736b6d61736b206d756c7469706c65207469", + "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d", "kind": "string", "nodeType": "YulLiteral", - "src": "28699:34:2", + "src": "33065:34:2", "type": "", - "value": "cannot upload skmask multiple ti" + "value": "cannot upload weightCommitment m" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28672:6:2" + "src": "33038:6:2" }, "nodeType": "YulFunctionCall", - "src": "28672:62:2" + "src": "33038:62:2" }, "nodeType": "YulExpressionStatement", - "src": "28672:62:2" + "src": "33038:62:2" }, { "expression": { @@ -20135,12 +22965,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28754:9:2" + "src": "33120:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28765:2:2", + "src": "33131:2:2", "type": "", "value": "96" } @@ -20148,45 +22978,45 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28750:3:2" + "src": "33116:3:2" }, "nodeType": "YulFunctionCall", - "src": "28750:18:2" + "src": "33116:18:2" }, { - "hexValue": "6d6573", + "hexValue": "756c7469706c652074696d6573", "kind": "string", "nodeType": "YulLiteral", - "src": "28770:5:2", + "src": "33136:15:2", "type": "", - "value": "mes" + "value": "ultiple times" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28743:6:2" + "src": "33109:6:2" }, "nodeType": "YulFunctionCall", - "src": "28743:33:2" + "src": "33109:43:2" }, "nodeType": "YulExpressionStatement", - "src": "28743:33:2" + "src": "33109:43:2" }, { "nodeType": "YulAssignment", - "src": "28785:27:2", + "src": "33161:27:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28797:9:2" + "src": "33173:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28808:3:2", + "src": "33184:3:2", "type": "", "value": "128" } @@ -20194,28 +23024,28 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28793:3:2" + "src": "33169:3:2" }, "nodeType": "YulFunctionCall", - "src": "28793:19:2" + "src": "33169:19:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28785:4:2" + "src": "33161:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_1bbb835911f9c5ad7d1a17e2a5a40140e5ee2a0491fd530884b7d1c65d711da9__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "28570:9:2", + "src": "32936:9:2", "type": "" } ], @@ -20223,16 +23053,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "28584:4:2", + "src": "32950:4:2", "type": "" } ], - "src": "28419:399:2" + "src": "32785:409:2" }, { "body": { "nodeType": "YulBlock", - "src": "29163:541:2", + "src": "33539:540:2", "statements": [ { "expression": { @@ -20240,24 +23070,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29180:9:2" + "src": "33556:9:2" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "29191:6:2" + "src": "33567:6:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29173:6:2" + "src": "33549:6:2" }, "nodeType": "YulFunctionCall", - "src": "29173:25:2" + "src": "33549:25:2" }, "nodeType": "YulExpressionStatement", - "src": "29173:25:2" + "src": "33549:25:2" }, { "expression": { @@ -20267,12 +23097,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29218:9:2" + "src": "33594:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29229:2:2", + "src": "33605:2:2", "type": "", "value": "32" } @@ -20280,22 +23110,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29214:3:2" + "src": "33590:3:2" }, "nodeType": "YulFunctionCall", - "src": "29214:18:2" + "src": "33590:18:2" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "29238:6:2" + "src": "33614:6:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29246:18:2", + "src": "33622:18:2", "type": "", "value": "0xffffffffffffffff" } @@ -20303,30 +23133,30 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "29234:3:2" + "src": "33610:3:2" }, "nodeType": "YulFunctionCall", - "src": "29234:31:2" + "src": "33610:31:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29207:6:2" + "src": "33583:6:2" }, "nodeType": "YulFunctionCall", - "src": "29207:59:2" + "src": "33583:59:2" }, "nodeType": "YulExpressionStatement", - "src": "29207:59:2" + "src": "33583:59:2" }, { "nodeType": "YulVariableDeclaration", - "src": "29275:52:2", + "src": "33651:52:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "29285:42:2", + "src": "33661:42:2", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" }, @@ -20334,7 +23164,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "29279:2:2", + "src": "33655:2:2", "type": "" } ] @@ -20347,12 +23177,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29347:9:2" + "src": "33723:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29358:2:2", + "src": "33734:2:2", "type": "", "value": "64" } @@ -20360,43 +23190,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29343:3:2" + "src": "33719:3:2" }, "nodeType": "YulFunctionCall", - "src": "29343:18:2" + "src": "33719:18:2" }, { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "29367:6:2" + "src": "33743:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "29375:2:2" + "src": "33751:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "29363:3:2" + "src": "33739:3:2" }, "nodeType": "YulFunctionCall", - "src": "29363:15:2" + "src": "33739:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29336:6:2" + "src": "33712:6:2" }, "nodeType": "YulFunctionCall", - "src": "29336:43:2" + "src": "33712:43:2" }, "nodeType": "YulExpressionStatement", - "src": "29336:43:2" + "src": "33712:43:2" }, { "expression": { @@ -20406,12 +23236,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29399:9:2" + "src": "33775:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29410:2:2", + "src": "33786:2:2", "type": "", "value": "96" } @@ -20419,43 +23249,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29395:3:2" + "src": "33771:3:2" }, "nodeType": "YulFunctionCall", - "src": "29395:18:2" + "src": "33771:18:2" }, { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "29419:6:2" + "src": "33795:6:2" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "29427:2:2" + "src": "33803:2:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "29415:3:2" + "src": "33791:3:2" }, "nodeType": "YulFunctionCall", - "src": "29415:15:2" + "src": "33791:15:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29388:6:2" + "src": "33764:6:2" }, "nodeType": "YulFunctionCall", - "src": "29388:43:2" + "src": "33764:43:2" }, "nodeType": "YulExpressionStatement", - "src": "29388:43:2" + "src": "33764:43:2" }, { "expression": { @@ -20465,12 +23295,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29451:9:2" + "src": "33827:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29462:3:2", + "src": "33838:3:2", "type": "", "value": "128" } @@ -20478,15 +23308,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29447:3:2" + "src": "33823:3:2" }, "nodeType": "YulFunctionCall", - "src": "29447:19:2" + "src": "33823:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29468:3:2", + "src": "33844:3:2", "type": "", "value": "192" } @@ -20494,13 +23324,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29440:6:2" + "src": "33816:6:2" }, "nodeType": "YulFunctionCall", - "src": "29440:32:2" + "src": "33816:32:2" }, "nodeType": "YulExpressionStatement", - "src": "29440:32:2" + "src": "33816:32:2" }, { "expression": { @@ -20510,12 +23340,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29492:9:2" + "src": "33868:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29503:3:2", + "src": "33879:3:2", "type": "", "value": "192" } @@ -20523,15 +23353,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29488:3:2" + "src": "33864:3:2" }, "nodeType": "YulFunctionCall", - "src": "29488:19:2" + "src": "33864:19:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29509:1:2", + "src": "33885:1:2", "type": "", "value": "6" } @@ -20539,13 +23369,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29481:6:2" + "src": "33857:6:2" }, "nodeType": "YulFunctionCall", - "src": "29481:30:2" + "src": "33857:30:2" }, "nodeType": "YulExpressionStatement", - "src": "29481:30:2" + "src": "33857:30:2" }, { "expression": { @@ -20555,12 +23385,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29531:9:2" + "src": "33907:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29542:3:2", + "src": "33918:3:2", "type": "", "value": "224" } @@ -20568,38 +23398,38 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29527:3:2" + "src": "33903:3:2" }, "nodeType": "YulFunctionCall", - "src": "29527:19:2" + "src": "33903:19:2" }, { - "hexValue": "534b4d41534b", + "hexValue": "574549474854", "kind": "string", "nodeType": "YulLiteral", - "src": "29548:8:2", + "src": "33924:8:2", "type": "", - "value": "SKMASK" + "value": "WEIGHT" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29520:6:2" + "src": "33896:6:2" }, "nodeType": "YulFunctionCall", - "src": "29520:37:2" + "src": "33896:37:2" }, "nodeType": "YulExpressionStatement", - "src": "29520:37:2" + "src": "33896:37:2" }, { "nodeType": "YulVariableDeclaration", - "src": "29566:13:2", + "src": "33942:13:2", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "29576:3:2", + "src": "33952:3:2", "type": "", "value": "256" }, @@ -20607,7 +23437,7 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "29570:2:2", + "src": "33946:2:2", "type": "" } ] @@ -20620,12 +23450,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29599:9:2" + "src": "33975:9:2" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29610:3:2", + "src": "33986:3:2", "type": "", "value": "160" } @@ -20633,126 +23463,126 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29595:3:2" + "src": "33971:3:2" }, "nodeType": "YulFunctionCall", - "src": "29595:19:2" + "src": "33971:19:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "29616:2:2" + "src": "33992:2:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29588:6:2" + "src": "33964:6:2" }, "nodeType": "YulFunctionCall", - "src": "29588:31:2" + "src": "33964:31:2" }, "nodeType": "YulExpressionStatement", - "src": "29588:31:2" + "src": "33964:31:2" }, { "nodeType": "YulAssignment", - "src": "29628:70:2", + "src": "34004:69:2", "value": { "arguments": [ { "name": "value4", "nodeType": "YulIdentifier", - "src": "29663:6:2" + "src": "34038:6:2" }, { "name": "value5", "nodeType": "YulIdentifier", - "src": "29671:6:2" + "src": "34046:6:2" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29683:9:2" + "src": "34058:9:2" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "29694:2:2" + "src": "34069:2:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29679:3:2" + "src": "34054:3:2" }, "nodeType": "YulFunctionCall", - "src": "29679:18:2" + "src": "34054:18:2" } ], "functionName": { - "name": "abi_encode_string_calldata", + "name": "abi_encode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "29636:26:2" + "src": "34012:25:2" }, "nodeType": "YulFunctionCall", - "src": "29636:62:2" + "src": "34012:61:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29628:4:2" + "src": "34004:4:2" } ] } ] }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "29092:9:2", + "src": "33468:9:2", "type": "" }, { "name": "value5", "nodeType": "YulTypedName", - "src": "29103:6:2", + "src": "33479:6:2", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "29111:6:2", + "src": "33487:6:2", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "29119:6:2", + "src": "33495:6:2", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "29127:6:2", + "src": "33503:6:2", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "29135:6:2", + "src": "33511:6:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "29143:6:2", + "src": "33519:6:2", "type": "" } ], @@ -20760,35 +23590,35 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "29154:4:2", + "src": "33530:4:2", "type": "" } ], - "src": "28823:881:2" + "src": "33199:880:2" } ] }, - "contents": "{\n { }\n function abi_decode_uint64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_uint32t_uint32(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n value2 := abi_decode_uint32(add(headStart, 64))\n value3 := abi_decode_uint32(add(headStart, 96))\n }\n function abi_encode_tuple_t_contract$_IdentityContract_$1929__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let length := calldataload(_2)\n if gt(length, _1) { revert(0, 0) }\n if gt(add(add(_2, mul(length, 32)), 32), dataEnd) { revert(0, 0) }\n value2 := add(_2, 32)\n value3 := length\n }\n function abi_encode_tuple_t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr__to_t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let tail_1 := add(headStart, 192)\n mstore(add(headStart, _1), and(mload(value0), 0xffffffffffffffff))\n let memberValue0 := mload(add(value0, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 64), and(memberValue0, _2))\n mstore(add(headStart, 96), and(mload(add(value0, 64)), _2))\n mstore(add(headStart, 128), and(mload(add(value0, 96)), 0xff))\n let memberValue0_1 := mload(add(value0, 128))\n mstore(add(headStart, 0xa0), 0xa0)\n let pos := tail_1\n let length := mload(memberValue0_1)\n mstore(tail_1, length)\n pos := add(headStart, 224)\n let srcPtr := add(memberValue0_1, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, and(mload(srcPtr), 0xffffffffffffffffffffffffffffffffffffffff))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_addresst_address(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n value2 := abi_decode_address(add(headStart, 64))\n value3 := abi_decode_address(add(headStart, 96))\n }\n function copy_memory_to_memory(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length) { mstore(add(dst, length), 0) }\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_struct$_SSData_$104_memory_ptr__to_t_struct$_SSData_$104_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n let memberValue0 := mload(value0)\n mstore(add(headStart, 32), 0x80)\n let tail_1 := abi_encode_bytes(memberValue0, add(headStart, 160))\n let memberValue0_1 := mload(add(value0, 32))\n let _1 := not(31)\n mstore(add(headStart, 64), add(sub(tail_1, headStart), _1))\n let tail_2 := abi_encode_bytes(memberValue0_1, tail_1)\n let memberValue0_2 := mload(add(value0, 64))\n mstore(add(headStart, 96), add(sub(tail_2, headStart), _1))\n let tail_3 := abi_encode_bytes(memberValue0_2, tail_2)\n let memberValue0_3 := mload(add(value0, 96))\n mstore(add(headStart, 0x80), add(sub(tail_3, headStart), _1))\n tail := abi_encode_bytes(memberValue0_3, tail_3)\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_tuple_t_struct$_Task_$60_memory_ptr__to_t_struct$_Task_$60_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), and(mload(value0), 0xffffffffffffffffffffffffffffffffffffffff))\n let memberValue0 := mload(add(value0, 32))\n mstore(add(headStart, 64), 0xa0)\n let tail_1 := abi_encode_bytes(memberValue0, add(headStart, 192))\n let memberValue0_1 := mload(add(value0, 64))\n mstore(add(headStart, 96), add(sub(tail_1, headStart), not(31)))\n let tail_2 := abi_encode_bytes(memberValue0_1, tail_1)\n mstore(add(headStart, 128), mload(add(value0, 96)))\n mstore(add(headStart, 0xa0), and(mload(add(value0, 128)), 0xffffffffffffffff))\n tail := tail_2\n }\n function abi_encode_tuple_t_uint64_t_uint64__to_t_uint64_t_uint64__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := 0xffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_string_calldata_ptrt_bytes32(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_addresst_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n value2 := abi_decode_address(add(headStart, 64))\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value3 := value3_1\n value4 := value4_1\n }\n function abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_1 := calldataload(add(headStart, 96))\n if gt(offset_1, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n }\n function abi_decode_tuple_t_uint64(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_uint64(headStart)\n }\n function abi_decode_tuple_t_bytes32t_uint64t_address(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n value2 := abi_decode_address(add(headStart, 64))\n }\n function abi_encode_tuple_t_struct$_Candidate_$65_memory_ptr__to_t_struct$_Candidate_$65_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n let memberValue0 := mload(value0)\n mstore(add(headStart, 32), 0x40)\n let tail_1 := abi_encode_bytes(memberValue0, add(headStart, 96))\n let memberValue0_1 := mload(add(value0, 32))\n mstore(add(headStart, 0x40), add(sub(tail_1, headStart), not(31)))\n tail := abi_encode_bytes(memberValue0_1, tail_1)\n }\n function abi_decode_tuple_t_bytes32t_addresst_uint64(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_address(add(headStart, 32))\n value2 := abi_decode_uint64(add(headStart, 64))\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_encode_tuple_t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Must called by the task owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 25)\n mstore(add(headStart, 64), \"this round does not exist\")\n tail := add(headStart, 96)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x21()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n }\n function abi_encode_tuple_t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 15)\n mstore(add(headStart, 64), \"Task not exists\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 66)\n mstore(add(headStart, 64), \"the round has been already start\")\n mstore(add(headStart, 96), \"ed or the pre round does not exi\")\n mstore(add(headStart, 128), \"st\")\n tail := add(headStart, 160)\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n if lt(x, y) { panic_error_0x11() }\n diff := sub(x, y)\n }\n function abi_encode_tuple_t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"Must provide addresses\")\n tail := add(headStart, 96)\n }\n function extract_byte_array_length(data) -> length\n {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Candidate must exist\")\n tail := add(headStart, 96)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_array$_t_address_$dyn_calldata_ptr__to_t_bytes32_t_uint64_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 96)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), and(value1, 0xffffffffffffffff))\n mstore(add(headStart, 64), 96)\n let pos := tail_1\n mstore(tail_1, value3)\n pos := add(headStart, 128)\n let srcPtr := value2\n let i := 0\n for { } lt(i, value3) { i := add(i, 1) }\n {\n mstore(pos, and(abi_decode_address(srcPtr), 0xffffffffffffffffffffffffffffffffffffffff))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_encode_tuple_t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"Calculating has not started\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 26)\n mstore(add(headStart, 64), \"The Task Round Must exists\")\n tail := add(headStart, 96)\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_uint256_t_address_t_string_calldata_ptr_t_bytes32__to_t_uint256_t_address_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 64), 128)\n tail := abi_encode_string_calldata(value2, value3, add(headStart, 128))\n mstore(add(headStart, 96), value4)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_string_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory(add(offset, 0x20), add(memPtr, 0x20), _1)\n array := memPtr\n }\n function abi_decode_tuple_t_struct$_Node_$1670_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x40) { revert(0, 0) }\n let memPtr := mload(0x40)\n let newFreePtr := add(memPtr, 0x40)\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(0x40, newFreePtr)\n let offset_1 := mload(_2)\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(memPtr, abi_decode_string_fromMemory(add(_2, offset_1), dataEnd))\n let offset_2 := mload(add(_2, 32))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(memPtr, 32), abi_decode_string_fromMemory(add(_2, offset_2), dataEnd))\n value0 := memPtr\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_memory_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_bytes(value3, tail_1)\n mstore(add(headStart, 96), value4)\n }\n function abi_encode_tuple_t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"commitment length exceeds limit \")\n mstore(add(headStart, 96), \"or it is empty\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"not in upload ss phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 28)\n mstore(add(headStart, 64), \"must upload commitment first\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 33)\n mstore(add(headStart, 64), \"cannot upload seed multiple time\")\n mstore(add(headStart, 96), \"s\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 4)\n mstore(add(headStart, 224), \"SEED\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_string_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 21)\n mstore(add(headStart, 64), \"join phase has passed\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 41)\n mstore(add(headStart, 64), \"Cannot join the same round multi\")\n mstore(add(headStart, 96), \"ple times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 19)\n mstore(add(headStart, 64), \"Caller is not owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"This round is not running now\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"not in secret sharing phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"cannot upload seed cmmt multiple\")\n mstore(add(headStart, 96), \" times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 8)\n mstore(add(headStart, 224), \"SEEDCMMT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_string_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"not in uploading phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"cannot upload weightCommitment m\")\n mstore(add(headStart, 96), \"ultiple times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 6)\n mstore(add(headStart, 224), \"WEIGHT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_string_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 10)\n mstore(add(headStart, 224), \"SKMASKCMMT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_string_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_1bbb835911f9c5ad7d1a17e2a5a40140e5ee2a0491fd530884b7d1c65d711da9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 35)\n mstore(add(headStart, 64), \"cannot upload skmask multiple ti\")\n mstore(add(headStart, 96), \"mes\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 6)\n mstore(add(headStart, 224), \"SKMASK\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_string_calldata(value4, value5, add(headStart, _2))\n }\n}", + "contents": "{\n { }\n function abi_decode_uint64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_uint32t_uint32(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n value2 := abi_decode_uint32(add(headStart, 64))\n value3 := abi_decode_uint32(add(headStart, 96))\n }\n function abi_decode_array_address_dyn_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, mul(length, 0x20)), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_1 := calldataload(add(headStart, 96))\n if gt(offset_1, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset_1), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_contract$_IdentityContract_$2193__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_encode_tuple_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__to_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let tail_1 := add(headStart, 192)\n mstore(add(headStart, _1), and(mload(value0), 0xffffffffffffffff))\n let memberValue0 := mload(add(value0, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 64), and(memberValue0, _2))\n mstore(add(headStart, 96), and(mload(add(value0, 64)), _2))\n mstore(add(headStart, 128), and(mload(add(value0, 96)), 0xff))\n let memberValue0_1 := mload(add(value0, 128))\n mstore(add(headStart, 0xa0), 0xa0)\n let pos := tail_1\n let length := mload(memberValue0_1)\n mstore(tail_1, length)\n pos := add(headStart, 224)\n let srcPtr := add(memberValue0_1, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, and(mload(srcPtr), 0xffffffffffffffffffffffffffffffffffffffff))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function copy_memory_to_memory(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length) { mstore(add(dst, length), 0) }\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_struct$_Task_$62_memory_ptr__to_t_struct$_Task_$62_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), and(mload(value0), 0xffffffffffffffffffffffffffffffffffffffff))\n let memberValue0 := mload(add(value0, 32))\n mstore(add(headStart, 64), 0xc0)\n let tail_1 := abi_encode_string(memberValue0, add(headStart, 224))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := not(31)\n mstore(add(headStart, 96), add(sub(tail_1, headStart), _1))\n let tail_2 := abi_encode_string(memberValue0_1, tail_1)\n mstore(add(headStart, 128), mload(add(value0, 96)))\n let memberValue0_2 := mload(add(value0, 128))\n mstore(add(headStart, 160), add(sub(tail_2, headStart), _1))\n let tail_3 := abi_encode_string(memberValue0_2, tail_2)\n mstore(add(headStart, 0xc0), and(mload(add(value0, 160)), 0xffffffffffffffff))\n tail := tail_3\n }\n function abi_encode_tuple_t_uint64_t_uint64__to_t_uint64_t_uint64__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := 0xffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_address(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n value4 := abi_decode_address(add(headStart, 96))\n }\n function abi_encode_tuple_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, mul(length, _1)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x80\n let memberValue0 := mload(_3)\n mstore(tail_2, _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let memberValue0_1 := mload(add(_3, _1))\n mstore(add(tail_2, _1), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let memberValue0_2 := mload(add(_3, _2))\n mstore(add(tail_2, _2), sub(tail_4, tail_2))\n let tail_5 := abi_encode_string(memberValue0_2, tail_4)\n let _5 := 0x60\n let memberValue0_3 := mload(add(_3, _5))\n mstore(add(tail_2, _5), sub(tail_5, tail_2))\n tail_2 := abi_encode_string(memberValue0_3, tail_5)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_bytes_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_1 := calldataload(add(headStart, 96))\n if gt(offset_1, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_bytes_calldata(add(headStart, offset_1), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_string_calldata_ptrt_bytes32t_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := calldataload(add(headStart, 32))\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_bytes_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n }\n function abi_decode_tuple_t_uint64(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_uint64(headStart)\n }\n function abi_encode_tuple_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, mul(length, _1)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let memberValue0 := mload(_3)\n mstore(tail_2, _2)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _2))\n let memberValue0_1 := mload(add(_3, _1))\n mstore(add(tail_2, _1), sub(tail_3, tail_2))\n tail_2 := abi_encode_string(memberValue0_1, tail_3)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_tuple_t_bytes32t_addresst_uint64(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_address(add(headStart, 32))\n value2 := abi_decode_uint64(add(headStart, 64))\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_encode_tuple_t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Must called by the task owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 25)\n mstore(add(headStart, 64), \"this round does not exist\")\n tail := add(headStart, 96)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x21()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n }\n function abi_encode_tuple_t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 15)\n mstore(add(headStart, 64), \"Task not exists\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 66)\n mstore(add(headStart, 64), \"the round has been already start\")\n mstore(add(headStart, 96), \"ed or the pre round does not exi\")\n mstore(add(headStart, 128), \"st\")\n tail := add(headStart, 160)\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n if lt(x, y) { panic_error_0x11() }\n diff := sub(x, y)\n }\n function abi_encode_tuple_t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"senders length is not equal to s\")\n mstore(add(headStart, 96), \"eeds length\")\n tail := add(headStart, 128)\n }\n function access_calldata_tail_t_bytes_calldata_ptr(base_ref, ptr_to_tail) -> addr, length\n {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), base_ref), not(30)))) { revert(0, 0) }\n let addr_1 := add(base_ref, rel_offset_of_tail)\n length := calldataload(addr_1)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n addr := add(addr_1, 0x20)\n if sgt(addr, sub(calldatasize(), length)) { revert(0, 0) }\n }\n function abi_encode_tuple_t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"commitment length exceeds limit \")\n mstore(add(headStart, 96), \"or it is empty\")\n tail := add(headStart, 128)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"not in upload ss phase\")\n tail := add(headStart, 96)\n }\n function extract_byte_array_length(data) -> length\n {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 28)\n mstore(add(headStart, 64), \"must upload commitment first\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 33)\n mstore(add(headStart, 64), \"cannot upload seed multiple time\")\n mstore(add(headStart, 96), \"s\")\n tail := add(headStart, 128)\n }\n function abi_encode_bytes_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 4)\n mstore(add(headStart, 224), \"SEED\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"Must provide addresses\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Candidate must exist\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_array$_t_address_$dyn_calldata_ptr__to_t_bytes32_t_uint64_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 96)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), and(value1, 0xffffffffffffffff))\n mstore(add(headStart, 64), 96)\n let pos := tail_1\n mstore(tail_1, value3)\n pos := add(headStart, 128)\n let srcPtr := value2\n let i := 0\n for { } lt(i, value3) { i := add(i, 1) }\n {\n mstore(pos, and(abi_decode_address(srcPtr), 0xffffffffffffffffffffffffffffffffffffffff))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_encode_tuple_t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"Calculating has not started\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 26)\n mstore(add(headStart, 64), \"The Task Round Must exists\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 21)\n mstore(add(headStart, 64), \"join phase has passed\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 41)\n mstore(add(headStart, 64), \"Cannot join the same round multi\")\n mstore(add(headStart, 96), \"ple times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_uint256_t_address_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr__to_t_uint256_t_address_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 64), 160)\n let tail_1 := abi_encode_bytes_calldata(value2, value3, add(headStart, 160))\n mstore(add(headStart, 96), value4)\n mstore(add(headStart, 128), sub(tail_1, headStart))\n tail := abi_encode_bytes_calldata(value5, value6, tail_1)\n }\n function abi_decode_string_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory(add(offset, 0x20), add(memPtr, 0x20), _1)\n array := memPtr\n }\n function abi_decode_tuple_t_struct$_Node_$1934_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x40) { revert(0, 0) }\n let memPtr := mload(0x40)\n let newFreePtr := add(memPtr, 0x40)\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(0x40, newFreePtr)\n let offset_1 := mload(_2)\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(memPtr, abi_decode_string_fromMemory(add(_2, offset_1), dataEnd))\n let offset_2 := mload(add(_2, 32))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(memPtr, 32), abi_decode_string_fromMemory(add(_2, offset_2), dataEnd))\n value0 := memPtr\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_memory_ptr_t_bytes32_t_string_calldata_ptr__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 160)\n let tail_1 := abi_encode_bytes_calldata(value1, value2, add(headStart, 160))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value3, tail_1)\n mstore(add(headStart, 96), value4)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_bytes_calldata(value5, value6, tail_2)\n }\n function abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 19)\n mstore(add(headStart, 64), \"Caller is not owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"This round is not running now\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 55)\n mstore(add(headStart, 64), \"receivers length is not equal to\")\n mstore(add(headStart, 96), \" seedCommitments length\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"not in secret sharing phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"cannot upload seed cmmt multiple\")\n mstore(add(headStart, 96), \" times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 8)\n mstore(add(headStart, 224), \"SEEDCMMT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 52)\n mstore(add(headStart, 64), \"senders length is not equal to s\")\n mstore(add(headStart, 96), \"ecretkeyMasks length\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 6)\n mstore(add(headStart, 224), \"SKMASK\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 60)\n mstore(add(headStart, 64), \"receivers length is not equal to\")\n mstore(add(headStart, 96), \" secretKeyCommitments length\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 10)\n mstore(add(headStart, 224), \"SKMASKCMMT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"not in uploading phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"cannot upload weightCommitment m\")\n mstore(add(headStart, 96), \"ultiple times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 6)\n mstore(add(headStart, 224), \"WEIGHT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n}", "id": 2, "language": "Yul", "name": "#utility.yul" } ], - "sourceMap": "160:21917:0:-:0;;;541:51;;;-1:-1:-1;;;;;;598:41:0;;;;;4230:220;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4276:10;:18;;-1:-1:-1;;;;;;4276:18:0;;;-1:-1:-1;;;;;4276:18:0;;;;;-1:-1:-1;4304:18:0;;4312:10;4304:18;;;;;;4416:27;;4312:10;;4276;4416:27;;4276:10;;4416:27;4230:220;160:21917;;14:315:2;109:6;162:2;150:9;141:7;137:23;133:32;130:52;;;178:1;175;168:12;130:52;204:16;;-1:-1:-1;;;;;249:31:2;;239:42;;229:70;;295:1;292;285:12;229:70;318:5;14:315;-1:-1:-1;;;14:315:2:o;:::-;160:21917:0;;;;;;", - "deployedSourceMap": "160:21917:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13397:285;;;;;;;;;;-1:-1:-1;13397:285:0;;;;;:::i;:::-;;:::i;:::-;;5944:970;;;;;;;;;;-1:-1:-1;5944:970:0;;;;;:::i;:::-;;:::i;189:34::-;;;;;;;;;;-1:-1:-1;189:34:0;;;;-1:-1:-1;;;;;189:34:0;;;;;;-1:-1:-1;;;;;1206:55:2;;;1188:74;;1176:2;1161:18;189:34:0;;;;;;;;9260:595;;;;;;;;;;-1:-1:-1;9260:595:0;;;;;:::i;:::-;;:::i;8537:508::-;;;;;;;;;;-1:-1:-1;8537:508:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11854:695::-;;;;;;;;;;-1:-1:-1;11854:695:0;;;;;:::i;:::-;;:::i;10887:540::-;;;;;;;;;;-1:-1:-1;10887:540:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;4531:175::-;;;;;;;;;;-1:-1:-1;4531:175:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;21469:220::-;;;;;;;;;;-1:-1:-1;21612:20:0;;21469:220;;;21612:20;;;;;;6464:34:2;;21657:25:0;;;6529:2:2;6514:18;;6507:43;6400:18;21469:220:0;6257:299:2;5005:731:0;;;;;;:::i;:::-;;:::i;:::-;;;7544:25:2;;;7532:2;7517:18;5005:731:0;7398:177:2;21994:81:0;;;;;;;;;;-1:-1:-1;22063:5:0;;-1:-1:-1;;;;;22063:5:0;21994:81;;16659:1126;;;;;;;;;;-1:-1:-1;16659:1126:0;;;;;:::i;:::-;;:::i;7180:778::-;;;;;;;;;;-1:-1:-1;7180:778:0;;;;;:::i;:::-;;:::i;:::-;;;9471:14:2;;9464:22;9446:41;;9434:2;9419:18;7180:778:0;9306:187:2;21780:127:0;;;;;;;;;;-1:-1:-1;21780:127:0;;;;;:::i;:::-;;:::i;12785:477::-;;;;;;;;;;-1:-1:-1;12785:477:0;;;;;:::i;:::-;;:::i;21216:125::-;;;;;;;;;;-1:-1:-1;21216:125:0;;;;;:::i;:::-;;:::i;15276:1156::-;;;;;;;;;;-1:-1:-1;15276:1156:0;;;;;:::i;:::-;;:::i;21347:116::-;;;;;;;;;;-1:-1:-1;21347:116:0;;;;;:::i;:::-;;:::i;8061:304::-;;;;;;;;;;-1:-1:-1;8061:304:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;10292:534::-;;;;;;;;;;-1:-1:-1;10292:534:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;13889:1131::-;;;;;;;;;;-1:-1:-1;13889:1131:0;;;;;:::i;:::-;;:::i;18044:1425::-;;;;;;;;;;-1:-1:-1;18044:1425:0;;;;;:::i;:::-;;:::i;19707:1503::-;;;;;;;;;;-1:-1:-1;19707:1503:0;;;;;:::i;:::-;;:::i;13397:285::-;4049:21;;;;:12;:21;;;;;:29;13478:6;;-1:-1:-1;;;;;4049:29:0;4082:10;4049:43;4028:119;;;;-1:-1:-1;;;;;4028:119:0;;;;;;;:::i;:::-;;;;;;;;;3557:26:::1;3586:19:::0;;;:10:::1;:19;::::0;;;;3636:13;;13506:6;;13514:5;;3652:1:::1;-1:-1:-1::0;3636:42:0;::::1;;;-1:-1:-1::0;3657:13:0;;:21:::1;::::0;::::1;-1:-1:-1::0;3636:42:0::1;3615:114;;;;-1:-1:-1::0;;;;;3615:114:0::1;;;;;;;:::i;:::-;13535:26:::2;13564:18:::0;;;:10:::2;:18;::::0;;;;:25;;::::2;::::0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;;::::2;::::0;;;::::2;;13599:38:::0;;-1:-1:-1;;13599:38:0::2;::::0;::::2;::::0;;13652:23:::2;::::0;;13113:25:2;;;13186:18;13174:31;;13154:18;;;13147:59;;;;13652:23:0;;13564:25;;-1:-1:-1;13652:23:0::2;::::0;;;;;;::::2;13525:157;3547:200:::1;4157:1;;13397:285:::0;;;:::o;5944:970::-;3449:1;3408:21;;;:12;:21;;;;;:29;6086:6;;-1:-1:-1;;;;;3408:29:0;3400:71;;;;-1:-1:-1;;;;;3400:71:0;;;;;;;:::i;:::-;4049:21:::1;::::0;;;:12:::1;:21;::::0;;;;:29;6104:6;;-1:-1:-1;;;;;4049:29:0::1;4082:10;4049:43;4028:119;;;;-1:-1:-1::0;;;;;4028:119:0::1;;;;;;;:::i;:::-;6122:26:::2;6151:18:::0;;;:10:::2;:18;::::0;;;;6200:13;;:22:::2;::::0;::::2;;6179:135;;;::::0;-1:-1:-1;;;;;6179:135:0;;13763:2:2;6179:135:0::2;::::0;::::2;13745:21:2::0;13802:2;13782:18;;;13775:30;13841:34;13821:18;;;13814:62;13912:34;13892:18;;;13885:62;13984:4;13963:19;;;13956:33;14006:19;;6179:135:0::2;13561:470:2::0;6179:135:0::2;6324:17;6344:20:::0;;;:12:::2;:20;::::0;;;;6374:17:::2;::::0;::::2;:25:::0;;-1:-1:-1;;6374:25:0::2;;::::0;::::2;;::::0;;6409:94:::2;6416:13:::0;;:18;;:47:::2;;-1:-1:-1::0;6438:13:0;;:25:::2;::::0;::::2;::::0;:17:::2;::::0;6454:1:::2;::::0;6438:17:::2;:::i;:::-;:25;6416:47;6409:94;;;6479:13:::0;;::::2;;::::0;;-1:-1:-1;6479:13:0;;;6409:94:::2;;;6541:5;6512:6;6519:5;6512:13;;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;:34:::0;;-1:-1:-1;;6512:34:0::2;;::::0;;::::2;;::::0;;6556:13;;6582:9;;6556:13;;;;::::2;::::0;;::::2;;;;;:::i;:::-;;;;;;;;;;;:23;;;:35;;;;;;;;;;;;;;;;;;6627:9;6601:6;6608:5;6601:13;;;;;;;;;;:::i;:::-;;;;;;;;;;;:23;;;:35;;;;;;;;;;;;;;;;;;6669:19;6646:6;6653:5;6646:13;;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;:42:::0;;-1:-1:-1;;6646:42:0::2;-1:-1:-1::0;;;6646:42:0;::::2;::::0;::::2;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;6698:37:0::2;6738:29:::0;;;:21:::2;:29;::::0;;;;6777:91:::2;6784:12:::0;;:17;;:45:::2;;-1:-1:-1::0;6805:12:0;;:24:::2;::::0;::::2;::::0;:16:::2;::::0;6820:1:::2;::::0;6805:16:::2;:::i;:::-;:24;6784:45;6777:91;;;6845:12:::0;;::::2;;::::0;;-1:-1:-1;6845:12:0;;;6777:91:::2;;;6882:25;::::0;;13113::2;;;13186:18;13174:31;;13169:2;13154:18;;13147:59;6882:25:0::2;::::0;13086:18:2;6882:25:0::2;;;;;;;;6112:802;;;3481:1:::1;5944:970:::0;;;;;:::o;9260:595::-;4049:21;;;;:12;:21;;;;;:29;9389:6;;-1:-1:-1;;;;;4049:29:0;4082:10;4049:43;4028:119;;;;-1:-1:-1;;;;;4028:119:0;;;;;;;:::i;:::-;3557:26:::1;3586:19:::0;;;:10:::1;:19;::::0;;;;3636:13;;9409:6;;9417:5;;3652:1:::1;-1:-1:-1::0;3636:42:0;::::1;;;-1:-1:-1::0;3657:13:0;;:21:::1;::::0;::::1;-1:-1:-1::0;3636:42:0::1;3615:114;;;;-1:-1:-1::0;;;;;3615:114:0::1;;;;;;;:::i;:::-;9442:16:::0;9434:51:::2;;;::::0;-1:-1:-1;;;;;9434:51:0;;14557:2:2;9434:51:0::2;::::0;::::2;14539:21:2::0;14596:2;14576:18;;;14569:30;14635:24;14615:18;;;14608:52;14677:18;;9434:51:0::2;14355:346:2::0;9434:51:0::2;9495:26;9524:18:::0;;;:10:::2;:18;::::0;;;;:25;;::::2;::::0;::::2;::::0;;::::2;;;;;:::i;:::-;;;;;;;;;;;9495:54;;9564:9;9559:191;9579:16:::0;;::::2;9559:191;;;9684:1;9641:8;:19;;:29;9661:5;;9667:1;9661:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9641:29:0::2;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;9641:29:0;:40;;::::2;::::0;::::2;:::i;:::-;;;:44;9616:123;;;::::0;-1:-1:-1;;;;;9616:123:0;;15350:2:2;9616:123:0::2;::::0;::::2;15332:21:2::0;15389:2;15369:18;;;15362:30;15428:22;15408:18;;;15401:50;15468:18;;9616:123:0::2;15148:344:2::0;9616:123:0::2;9597:3:::0;::::2;::::0;::::2;:::i;:::-;;;;9559:191;;;-1:-1:-1::0;9759:37:0;;-1:-1:-1;;9759:37:0::2;-1:-1:-1::0;;;9759:37:0::2;::::0;;9811::::2;::::0;::::2;::::0;::::2;::::0;9827:6;;9835:5;;9842;;;;9811:37:::2;:::i;8537:508::-:0;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3586:19:0;;;:10;:19;;;;;;3636:13;;3586:19;;8645:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;8724:22:::1;8749:18:::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;8796:242:::1;::::0;;::::1;::::0;::::1;::::0;;8749:25:::1;::::0;;::::1;::::0;;::::1;8847:17:::0;;::::1;::::0;::::1;8796:242:::0;;8889:14:::1;::::0;;::::1;::::0;::::1;8796:242:::0;;::::1;::::0;;;;8928:14;;::::1;::::0;;::::1;8796:242:::0;;;;;;;8749:25;-1:-1:-1;8796:242:0;;;;;8972:11:::1;-1:-1:-1::0;;;8972:11:0;;::::1;;8964:20;::::0;::::1;;;;;;:::i;:::-;8796:242;;;;;;9011:4;:16;;8796:242;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;8796:242:0::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;::::0;8784:254:::1;;8714:331;3547:200:::0;8537:508;;;;;;:::o;11854:695::-;4049:21;;;;:12;:21;;;;;:29;11989:6;;-1:-1:-1;;;;;4049:29:0;4082:10;4049:43;4028:119;;;;-1:-1:-1;;;;;4028:119:0;;;;;;;:::i;:::-;3557:26:::1;3586:19:::0;;;:10:::1;:19;::::0;;;;3636:13;;12009:6;;12017:5;;3652:1:::1;-1:-1:-1::0;3636:42:0;::::1;;;-1:-1:-1::0;3657:13:0;;:21:::1;::::0;::::1;-1:-1:-1::0;3636:42:0::1;3615:114;;;;-1:-1:-1::0;;;;;3615:114:0::1;;;;;;;:::i;:::-;12034:26:::2;12063:18:::0;;;:10:::2;:18;::::0;;;;:25;;::::2;::::0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;-1:-1:-1;12138:23:0::2;12119:15:::0;;-1:-1:-1;;;12119:15:0;::::2;;;:42;::::0;::::2;;;;;;:::i;:::-;;12098:116;;;::::0;-1:-1:-1;;;;;12098:116:0;;16669:2:2;12098:116:0::2;::::0;::::2;16651:21:2::0;16708:2;16688:18;;;16681:30;16747:29;16727:18;;;16720:57;16794:18;;12098:116:0::2;16467:351:2::0;12098:116:0::2;12224:41:::0;;-1:-1:-1;;12224:41:0::2;::::0;::::2;::::0;;-1:-1:-1;12275:207:0::2;12295:24:::0;;::::2;12275:207;;;12416:1;12365:8;:19;;:37;12385:13;;12399:1;12385:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12365:37:0::2;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;12365:37:0;:48;;::::2;::::0;::::2;:::i;:::-;;;:52;12340:131;;;::::0;-1:-1:-1;;;;;12340:131:0;;15350:2:2;12340:131:0::2;::::0;::::2;15332:21:2::0;15389:2;15369:18;;;15362:30;15428:22;15408:18;;;15401:50;15468:18;;12340:131:0::2;15148:344:2::0;12340:131:0::2;12321:3:::0;::::2;::::0;::::2;:::i;:::-;;;;12275:207;;;;12496:46;12513:6;12521:5;12528:13;;12496:46;;;;;;;;;:::i;10887:540::-:0;11138:20;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11138:20:0;3557:26;3586:19;;;:10;:19;;;;;3636:13;;11067:6;;11075:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;3819:37:::1;3859:30:::0;;;:21:::1;:30;::::0;;;;3907:12;;11106:6;;11114:5;;3907:20:::1;::::0;::::1;-1:-1:-1::0;3899:59:0::1;;;;-1:-1:-1::0;;;;;3899:59:0::1;;;;;;;:::i;:::-;11174:37:::2;11214:29:::0;;;:21:::2;:29;::::0;;;;11261:12;;:21:::2;::::0;::::2;-1:-1:-1::0;11261:21:0::2;11253:60;;;;-1:-1:-1::0;;;;;11253:60:0::2;;;;;;;:::i;:::-;11323:34;11360:5;11366;11360:12;;;;;;;;;;:::i;:::-;;;;;;;;;;;11323:49;;11391:4;:11;;:19;11403:6;-1:-1:-1::0;;;;;11391:19:0::2;-1:-1:-1::0;;;;;11391:19:0::2;;;;;;;;;;;;:29;11411:8;-1:-1:-1::0;;;;;11391:29:0::2;-1:-1:-1::0;;;;;11391:29:0::2;;;;;;;;;;;;11382:38;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;11164:263;;3809:167:::1;3739:1;;3547:200:::0;10887:540;;;;;;;;:::o;4531:175::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3449:1:0;3408:21;;;:12;:21;;;;;:29;4615:6;;-1:-1:-1;;;;;3408:29:0;3400:71;;;;-1:-1:-1;;;;;3400:71:0;;;;;;;:::i;:::-;4679:20:::1;::::0;;;:12:::1;:20;::::0;;;;;;;;4672:27;;::::1;::::0;::::1;::::0;;;;;-1:-1:-1;;;;;4672:27:0::1;::::0;;;;::::1;::::0;;4679:20;;4672:27;::::1;::::0;::::1;::::0;::::1;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;4672:27:0;;;-1:-1:-1;;4672:27:0::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;;;;;;4531:175;-1:-1:-1;;;4531:175:0:o;5005:731::-;5116:14;5142:15;5194;5211:10;5223:7;;5232:10;5183:60;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;5183:60:0;;;;;;;5160:93;;5183:60;5160:93;;;;5263:33;5299:10;;:34;;;5322:10;5299:34;;;1188:74:2;5160:93:0;;-1:-1:-1;5263:33:0;-1:-1:-1;;;;;5299:10:0;;;;:22;;1161:18:2;;5299:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5299:34:0;;;;;;;;;;;;:::i;:::-;5263:70;;5367:178;;;;;;;;5429:10;-1:-1:-1;;;;;5367:178:0;;;;;5398:4;:8;;;5367:178;;;;5462:7;;5367:178;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5367:178:0;;;-1:-1:-1;;;5367:178:0;;;;;;;;;;;;;;5343:21;;;:12;:21;;;;;:202;;;;-1:-1:-1;;5343:202:0;-1:-1:-1;;;;;5343:202:0;;;;;;;;;;;;:21;;:202;;-1:-1:-1;5343:202:0;;;;;;;;:::i;:::-;-1:-1:-1;5343:202:0;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5343:202:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5343:202:0;;;;;;;;;;;-1:-1:-1;5610:18:0;;;;;;;;;;;;5638:13;;-1:-1:-1;5638:13:0;;;;;;;5708:8;;5666:63;;5610:18;;-1:-1:-1;5610:18:0;;5678:10;;5666:63;;;;5610:18;;5699:7;;;;5718:10;;5666:63;:::i;:::-;;;;;;;;5132:604;;;5005:731;;;;;:::o;16659:1126::-;3557:26;3586:19;;;:10;:19;;;;;3636:13;;16803:6;;16811:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;16849:15;;;;;:54:::1;;-1:-1:-1::0;16883:20:0::1;::::0;;;::::1;;;16868:35:::0;::::1;;16849:54;16828:147;;;;-1:-1:-1::0;;;;;16828:147:0::1;;;;;;;:::i;:::-;16985:26;17014:18:::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;17070:15:0;;-1:-1:-1;;;17070:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;17049:111;;;::::0;-1:-1:-1;;;;;17049:111:0;;20968:2:2;17049:111:0::1;::::0;::::1;20950:21:2::0;21007:2;20987:18;;;20980:30;21046:24;21026:18;;;21019:52;21088:18;;17049:111:0::1;20766:346:2::0;17049:111:0::1;17170:43;17216:51:::0;;;:21:::1;:51;::::0;;;;17320:18;;17216:51;;17170:43;17216:51;;17320:18:::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;17387:10:::1;17369:29:::0;;:17:::1;17320:18;::::0;;::::1;;17369:17:::0;;::::1;:29:::0;;;;;;-1:-1:-1;;;;;17369:37:0;::::1;::::0;;;;;;;;:52;;::::1;:59:::0;;17320:18;;-1:-1:-1;17369:52:0;:59:::1;::::0;::::1;:::i;:::-;;;:63;17348:138;;;::::0;-1:-1:-1;;;;;17348:138:0;;21319:2:2;17348:138:0::1;::::0;::::1;21301:21:2::0;21358:2;21338:18;;;21331:30;21397;21377:18;;;21370:58;21445:18;;17348:138:0::1;21117:352:2::0;17348:138:0::1;17535:10;17517:29;::::0;;;:17:::1;::::0;::::1;:29;::::0;;;;;;;-1:-1:-1;;;;;17517:37:0;::::1;::::0;;;;;;;:54;;::::1;::::0;::::1;:::i;:::-;:59:::0;;-1:-1:-1;17496:139:0::1;;;;-1:-1:-1::0;;;;;17496:139:0::1;;;;;;;:::i;:::-;17663:10;17645:29;::::0;;;:17:::1;::::0;::::1;:29;::::0;;;;;;;-1:-1:-1;;;;;17645:37:0;::::1;::::0;;;;;;;:54:::1;::::0;17695:4;;17645:54:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;17730:6:0::1;17738:5;17745:10;17757:6;17773:4;;17714:64;;;;;;;;;;;:::i;:::-;;;;;;;;16818:967;;;3547:200:::0;16659:1126;;;;;;;:::o;7180:778::-;7369:4;3408:21;;;:12;:21;;;;;:29;7325:6;;-1:-1:-1;;;;;3408:29:0;3400:71;;;;-1:-1:-1;;;;;3400:71:0;;;;;;;:::i;:::-;3557:26:::1;3586:19:::0;;;:10:::1;:19;::::0;;;;3636:13;;7345:6;;7353:5;;3652:1:::1;-1:-1:-1::0;3636:42:0;::::1;;;-1:-1:-1::0;3657:13:0;;:21:::1;::::0;::::1;-1:-1:-1::0;3636:42:0::1;3615:114;;;;-1:-1:-1::0;;;;;3615:114:0::1;;;;;;;:::i;:::-;7385:26:::2;7414:18:::0;;;:10:::2;:18;::::0;;;;7479:13;;7414:18;;7385:26;7414:18;;7479:17:::2;::::0;7495:1:::2;::::0;7479:17:::2;:::i;:::-;7472:25;;;;;;;;:::i;:::-;;;;;;;;;;;7442:55;;7549:5;7528:26;;7544:1;7528:6;:13;;;;:17;;;;:::i;:::-;:26;:85;;;;-1:-1:-1::0;7594:19:0::2;7574:16:::0;;-1:-1:-1;;;7574:16:0;::::2;;;:39;::::0;::::2;;;;;;:::i;:::-;;7528:85;7507:153;;;::::0;-1:-1:-1;;;;;7507:153:0;;22962:2:2;7507:153:0::2;::::0;::::2;22944:21:2::0;23001:2;22981:18;;;22974:30;23040:23;23020:18;;;23013:51;23081:18;;7507:153:0::2;22760:345:2::0;7507:153:0::2;7712:10;7691:32;::::0;;;:20:::2;::::0;::::2;:32;::::0;;;;:43;;::::2;::::0;::::2;:::i;:::-;:48:::0;;-1:-1:-1;7670:136:0::2;;;::::0;-1:-1:-1;;;;;7670:136:0;;23312:2:2;7670:136:0::2;::::0;::::2;23294:21:2::0;23351:2;23331:18;;;23324:30;23390:34;23370:18;;;23363:62;23461:11;23441:18;;;23434:39;23490:19;;7670:136:0::2;23110:405:2::0;7670:136:0::2;7851:31;::::0;;;::::2;;::::0;::::2;::::0;;::::2;;::::0;;;;;;;;::::2;::::0;;;;;;;;7867:3;;;;;;7851:31;;7867:3;;;;7851:31;::::2;;::::0;::::2;::::0;;;;-1:-1:-1;;;7851:31:0;;;-1:-1:-1;7851:31:0::2;::::0;;::::2;;::::0;::::2;::::0;;::::2;::::0;::::2;::::0;;;;;;;;;;;;::::2;::::0;;7877:3;;;;;;7851:31;::::2;7877:3:::0;;;;7851:31;::::2;;::::0;::::2;::::0;;;-1:-1:-1;7851:31:0;;;;-1:-1:-1;;7837:10:0::2;7816:32:::0;;:20:::2;::::0;::::2;:32;::::0;;;;;;;:66;;;;:32;;-1:-1:-1;7816:66:0::2;::::0;:32;;:66;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;7816:66:0::2;::::0;;::::2;::::0;;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;;;7892:21:0::2;;:38:::0;;::::2;::::0;;::::2;::::0;;-1:-1:-1;7892:38:0;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;;7892:38:0::2;7919:10;7892:38;::::0;;;-1:-1:-1;;3547:200:0::1;3481:1;;7180:778:::0;;;;;;;;;:::o;21780:127::-;3300:5;;-1:-1:-1;;;;;3300:5:0;3286:10;:19;3278:51;;;;-1:-1:-1;;;;;3278:51:0;;;;;;;:::i;:::-;21858:5:::1;::::0;21849:25:::1;::::0;-1:-1:-1;;;;;21849:25:0;;::::1;::::0;21858:5:::1;::::0;21849:25:::1;::::0;21858:5:::1;::::0;21849:25:::1;21884:5;:16:::0;;-1:-1:-1;;21884:16:0::1;-1:-1:-1::0;;;;;21884:16:0;;;::::1;::::0;;;::::1;::::0;;21780:127::o;12785:477::-;4049:21;;;;:12;:21;;;;;:29;12920:6;;-1:-1:-1;;;;;4049:29:0;4082:10;4049:43;4028:119;;;;-1:-1:-1;;;;;4028:119:0;;;;;;;:::i;:::-;3557:26:::1;3586:19:::0;;;:10:::1;:19;::::0;;;;3636:13;;12940:6;;12948:5;;3652:1:::1;-1:-1:-1::0;3636:42:0;::::1;;;-1:-1:-1::0;3657:13:0;;:21:::1;::::0;::::1;-1:-1:-1::0;3636:42:0::1;3615:114;;;;-1:-1:-1::0;;;;;3615:114:0::1;;;;;;;:::i;:::-;12965:26:::2;12994:18:::0;;;:10:::2;:18;::::0;;;;:25;;::::2;::::0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;-1:-1:-1;13069:19:0::2;13050:15:::0;;-1:-1:-1;;;13050:15:0;::::2;;;:38;::::0;::::2;;;;;;:::i;:::-;;13029:114;;;::::0;-1:-1:-1;;;;;13029:114:0;;24070:2:2;13029:114:0::2;::::0;::::2;24052:21:2::0;24109:2;24089:18;;;24082:30;24148:31;24128:18;;;24121:59;24197:18;;13029:114:0::2;23868:353:2::0;13029:114:0::2;13153:41:::0;;-1:-1:-1;;13153:41:0::2;::::0;::::2;::::0;;13209:46:::2;::::0;::::2;::::0;::::2;::::0;13226:6;;13234:5;;13241:13;;;;13209:46:::2;:::i;21216:125::-:0;3300:5;;-1:-1:-1;;;;;3300:5:0;3286:10;:19;3278:51;;;;-1:-1:-1;;;;;3278:51:0;;;;;;;:::i;:::-;21297:25:::1;:37:::0;;-1:-1:-1;;21297:37:0::1;;::::0;;;::::1;::::0;;;::::1;::::0;;21216:125::o;15276:1156::-;3557:26;3586:19;;;:10;:19;;;;;3636:13;;15440:6;;15448:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;15486:25;;;;;:90:::1;;-1:-1:-1::0;15556:20:0::1;::::0;;;::::1;;;15531:45:::0;::::1;;15486:90;15465:183;;;;-1:-1:-1::0;;;;;15465:183:0::1;;;;;;;:::i;:::-;15658:26;15687:18:::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;15762:19:0::1;15743:15:::0;;-1:-1:-1;;;15743:15:0;::::1;;;:38;::::0;::::1;;;;;;:::i;:::-;;15722:112;;;::::0;-1:-1:-1;;;;;15722:112:0;;24428:2:2;15722:112:0::1;::::0;::::1;24410:21:2::0;24467:2;24447:18;;;24440:30;24506:29;24486:18;;;24479:57;24553:18;;15722:112:0::1;24226:351:2::0;15722:112:0::1;15844:43;15890:51:::0;;;:21:::1;:51;::::0;;;;15994:18;;15890:51;;15844:43;15890:51;;15994:18:::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;16061:10:::1;16043:29:::0;;:17:::1;15994:18;::::0;;::::1;;16043:17:::0;;::::1;:29:::0;;;;;;-1:-1:-1;;;;;16043:37:0;::::1;::::0;;;;;;;:52:::1;:59:::0;;15994:18;;-1:-1:-1;16043:52:0;:59:::1;::::0;::::1;:::i;:::-;:64:::0;;-1:-1:-1;16022:149:0::1;;;::::0;-1:-1:-1;;;;;16022:149:0;;24784:2:2;16022:149:0::1;::::0;::::1;24766:21:2::0;24823:2;24803:18;;;24796:30;24862:34;24842:18;;;24835:62;24933:8;24913:18;;;24906:36;24959:19;;16022:149:0::1;24582:402:2::0;16022:149:0::1;16199:10;16181:29;::::0;;;:17:::1;::::0;;::::1;:29;::::0;;;;;;;-1:-1:-1;;;;;16181:37:0;::::1;::::0;;;;;;;;:69:::1;::::0;:52:::1;16236:14:::0;;16181:69:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;16294:6:0::1;16314:5;16333:10;16357:6;16401:14;;16265:160;;;;;;;;;;;:::i;21347:116::-:0;3300:5;;-1:-1:-1;;;;;3300:5:0;3286:10;:19;3278:51;;;;-1:-1:-1;;;;;3278:51:0;;;;;;;:::i;:::-;21424:20:::1;:32:::0;;::::1;::::0;;::::1;::::0;::::1;-1:-1:-1::0;;21424:32:0;;::::1;::::0;;;::::1;::::0;;21347:116::o;8061:304::-;-1:-1:-1;;;;;;;;;;;;;;;;;3557:26:0;3586:19;;;:10;:19;;;;;3636:13;;8221:6;;8229:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;8307:18:::1;::::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;:36;;:51;8344:13;-1:-1:-1::0;;;;;8307:51:0::1;-1:-1:-1::0;;;;;8307:51:0::1;;;;;;;;;;;;8295:63;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;3547:200:::0;8061:304;;;;;;;:::o;10292:534::-;3557:26;3586:19;;;:10;:19;;;;;3636:13;;10523:23;;10452:6;;10460:5;;3586:19;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;3819:37:::1;3859:30:::0;;;:21:::1;:30;::::0;;;;3907:12;;10491:6;;10499:5;;3907:20:::1;::::0;::::1;-1:-1:-1::0;3899:59:0::1;;;;-1:-1:-1::0;;;;;3899:59:0::1;;;;;;;:::i;:::-;10562:37:::2;10602:29:::0;;;:21:::2;:29;::::0;;;;10649:12;;:21:::2;::::0;::::2;-1:-1:-1::0;10649:21:0::2;10641:60;;;;-1:-1:-1::0;;;;;10641:60:0::2;;;;;;;:::i;:::-;10711:34;10748:5;10754;10748:12;;;;;;;;;;:::i;:::-;;;;;;;;;;;10711:49;;10783:4;:21;;:36;10805:13;-1:-1:-1::0;;;;;10783:36:0::2;-1:-1:-1::0;;;;;10783:36:0::2;;;;;;;;;;;;10770:49;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10552:274;;3809:167:::1;3739:1;;3547:200:::0;10292:534;;;;;;;:::o;13889:1131::-;3557:26;3586:19;;;:10;:19;;;;;3636:13;;14033:6;;14041:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;14079:27;;;;;:99:::1;;-1:-1:-1::0;14153:25:0::1;::::0;::::1;;14126:52:::0;::::1;;14079:99;14058:192;;;;-1:-1:-1::0;;;;;14058:192:0::1;;;;;;;:::i;:::-;14260:26;14289:18:::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;14364:23:0::1;14345:15:::0;;-1:-1:-1;;;14345:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;14324:111;;;::::0;-1:-1:-1;;;;;14324:111:0;;26079:2:2;14324:111:0::1;::::0;::::1;26061:21:2::0;26118:2;26098:18;;;26091:30;26157:24;26137:18;;;26130:52;26199:18;;14324:111:0::1;25877:346:2::0;14324:111:0::1;14445:43;14491:51:::0;;;:21:::1;:51;::::0;;;;14595:18;;14491:51;;14445:43;14491:51;;14595:18:::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;14672:10:::1;14644:39:::0;;14595:18:::1;::::0;;::::1;::::0;;::::1;14644:39:::0;;;;;;;;:46;;14595:18;;-1:-1:-1;14644:39:0;:46:::1;::::0;::::1;:::i;:::-;:51:::0;;-1:-1:-1;14623:143:0::1;;;::::0;-1:-1:-1;;;;;14623:143:0;;26430:2:2;14623:143:0::1;::::0;::::1;26412:21:2::0;26469:2;26449:18;;;26442:30;26508:34;26488:18;;;26481:62;26579:15;26559:18;;;26552:43;26612:19;;14623:143:0::1;26228:409:2::0;14623:143:0::1;14804:10;14776:27;:39:::0;;;::::1;::::0;;;;;;:58:::1;::::0;14818:16;;14776:58:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;14878:6:0::1;14898:5;14917:10;14949:1;14987:16;;14849:164;;;;;;;;;;;:::i;:::-;;;;;;;;14048:972;;;3547:200:::0;13889:1131;;;;;;:::o;18044:1425::-;3557:26;3586:19;;;:10;:19;;;;;3636:13;;18218:6;;18226:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;18264:30;;;;;:100:::1;;-1:-1:-1::0;18344:20:0::1;::::0;;;::::1;;;18314:50:::0;::::1;;18264:100;18243:193;;;;-1:-1:-1::0;;;;;18243:193:0::1;;;;;;;:::i;:::-;18446:26;18475:18:::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;18550:19:0::1;18531:15:::0;;-1:-1:-1;;;18531:15:0;::::1;;;:38;::::0;::::1;;;;;;:::i;:::-;;18510:112;;;::::0;-1:-1:-1;;;;;18510:112:0;;24428:2:2;18510:112:0::1;::::0;::::1;24410:21:2::0;24467:2;24447:18;;;24440:30;24506:29;24486:18;;;24479:57;24553:18;;18510:112:0::1;24226:351:2::0;18510:112:0::1;18632:43;18678:51:::0;;;:21:::1;:51;::::0;;;;18743:18;;:27:::1;::::0;::::1;;18739:76;;;18786:18:::0;;::::1;;::::0;;-1:-1:-1;18786:18:0;;;18739:76:::1;18824:40;18867:11;18879:5;18867:18;;;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;18951:10:::1;18916:46:::0;;:34:::1;18867:18;::::0;;::::1;;18916:34:::0;;::::1;:46:::0;;;;;;-1:-1:-1;;;;;18916:54:0;::::1;::::0;;;;;;;;:95:::1;;:119:::0;;18867:18;;-1:-1:-1;18916:95:0;:119:::1;::::0;::::1;:::i;:::-;:124:::0;;-1:-1:-1;18895:204:0::1;;;;-1:-1:-1::0;;;;;18895:204:0::1;;;;;;;:::i;:::-;19136:10;19109:38;::::0;;;:26:::1;::::0;::::1;:38;::::0;;;;;;;-1:-1:-1;;;;;19109:46:0;::::1;::::0;;;;;;;:105:::1;::::0;:83:::1;;19195:19:::0;;19109:105:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;19258:6:0::1;19278:5;19297:10;19321:6;19367:19;;19229:167;;;;;;;;;;;:::i;19707:1503::-:0;3557:26;3586:19;;;:10;:19;;;;;3636:13;;19869:6;;19877:5;;3652:1;-1:-1:-1;3636:42:0;;;;-1:-1:-1;3657:13:0;;:21;;;-1:-1:-1;3636:42:0;3615:114;;;;-1:-1:-1;;;;;3615:114:0;;;;;;;:::i;:::-;19915:24;;;;;:88:::1;;-1:-1:-1::0;19983:20:0::1;::::0;;;::::1;;;19959:44:::0;::::1;;19915:88;19894:181;;;;-1:-1:-1::0;;;;;19894:181:0::1;;;;;;;:::i;:::-;20085:26;20114:18:::0;;;:10:::1;:18;::::0;;;;:25;;::::1;::::0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;20170:15:0;;-1:-1:-1;;;20170:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;20149:111;;;::::0;-1:-1:-1;;;;;20149:111:0;;20968:2:2;20149:111:0::1;::::0;::::1;20950:21:2::0;21007:2;20987:18;;;20980:30;21046:24;21026:18;;;21019:52;21088:18;;20149:111:0::1;20766:346:2::0;20149:111:0::1;20270:43;20316:51:::0;;;:21:::1;:51;::::0;;;;20381:18;;:27:::1;::::0;::::1;;20377:76;;;20424:18:::0;;::::1;;::::0;;-1:-1:-1;20424:18:0;;;20377:76:::1;20462:40;20505:11;20517:5;20505:18;;;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;-1:-1:-1;;;;;20554:42:0;::::1;::::0;;:34:::1;20505:18;::::0;;::::1;;20554:34:::0;;::::1;:42:::0;;;;;;20597:10:::1;20554:54:::0;;;;;;;:95:::1;;:119:::0;;20505:18;;-1:-1:-1;20554:95:0;:119:::1;::::0;::::1;:::i;:::-;;;:123;20533:198;;;::::0;-1:-1:-1;;;;;20533:198:0;;21319:2:2;20533:198:0::1;::::0;::::1;21301:21:2::0;21358:2;21338:18;;;21331:30;21397;21377:18;;;21370:58;21445:18;;20533:198:0::1;21117:352:2::0;20533:198:0::1;-1:-1:-1::0;;;;;20762:25:0;::::1;;::::0;;;:17:::1;::::0;::::1;:25;::::0;;;;;;;20788:10:::1;20762:37:::0;;;;;;;:52:::1;;:59:::0;;::::1;::::0;::::1;:::i;:::-;:64:::0;;-1:-1:-1;20741:146:0::1;;;::::0;-1:-1:-1;;;;;20741:146:0;;28621:2:2;20741:146:0::1;::::0;::::1;28603:21:2::0;28660:2;28640:18;;;28633:30;28699:34;28679:18;;;28672:62;28770:5;28750:18;;;28743:33;28793:19;;20741:146:0::1;28419:399:2::0;20741:146:0::1;-1:-1:-1::0;;;;;20897:25:0;::::1;;::::0;;;:17:::1;::::0;::::1;:25;::::0;;;;;;;20923:10:::1;20897:37:::0;;;;;;;:68:::1;::::0;:52:::1;;20952:13:::0;;20897:68:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;21009:6:0::1;21029:5;21048:6;21068:10;21114:13;;20980:157;;;;;;;;;;;:::i;-1:-1:-1:-:0;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:171:2;81:20;;141:18;130:30;;120:41;;110:69;;175:1;172;165:12;110:69;14:171;;;:::o;190:252::-;257:6;265;318:2;306:9;297:7;293:23;289:32;286:52;;;334:1;331;324:12;286:52;370:9;357:23;347:33;;399:37;432:2;421:9;417:18;399:37;:::i;:::-;389:47;;190:252;;;;;:::o;447:163::-;514:20;;574:10;563:22;;553:33;;543:61;;600:1;597;590:12;615:397;698:6;706;714;722;775:3;763:9;754:7;750:23;746:33;743:53;;;792:1;789;782:12;743:53;828:9;815:23;805:33;;857:37;890:2;879:9;875:18;857:37;:::i;:::-;847:47;;913:37;946:2;935:9;931:18;913:37;:::i;:::-;903:47;;969:37;1002:2;991:9;987:18;969:37;:::i;:::-;959:47;;615:397;;;;;;;:::o;1273:756::-;1376:6;1384;1392;1400;1453:2;1441:9;1432:7;1428:23;1424:32;1421:52;;;1469:1;1466;1459:12;1421:52;1505:9;1492:23;1482:33;;1534:37;1567:2;1556:9;1552:18;1534:37;:::i;:::-;1524:47;;1622:2;1611:9;1607:18;1594:32;1645:18;1686:2;1678:6;1675:14;1672:34;;;1702:1;1699;1692:12;1672:34;1740:6;1729:9;1725:22;1715:32;;1785:7;1778:4;1774:2;1770:13;1766:27;1756:55;;1807:1;1804;1797:12;1756:55;1847:2;1834:16;1873:2;1865:6;1862:14;1859:34;;;1889:1;1886;1879:12;1859:34;1943:7;1938:2;1932;1924:6;1920:15;1916:2;1912:24;1908:33;1905:46;1902:66;;;1964:1;1961;1954:12;1902:66;1273:756;;;;-1:-1:-1;;1995:2:2;1987:11;;-1:-1:-1;;;1273:756:2:o;2034:1174::-;2202:4;2231:2;2260;2249:9;2242:21;2301:3;2290:9;2286:19;2360:18;2351:6;2345:13;2341:38;2336:2;2325:9;2321:18;2314:66;2427:2;2419:6;2415:15;2409:22;2450:10;2514:2;2500:12;2496:21;2491:2;2480:9;2476:18;2469:49;2582:2;2576;2568:6;2564:15;2558:22;2554:31;2549:2;2538:9;2534:18;2527:59;;;2651:4;2645:2;2637:6;2633:15;2627:22;2623:33;2617:3;2606:9;2602:19;2595:62;2706:3;2698:6;2694:16;2688:23;2749:4;2742;2731:9;2727:20;2720:34;2774:6;2809:14;2803:21;2848:6;2840;2833:22;2886:3;2875:9;2871:19;2864:26;;2933:2;2917:14;2913:23;2899:37;;2954:1;2945:10;;2964:218;2978:6;2975:1;2972:13;2964:218;;;3043:13;;-1:-1:-1;;;;;3039:62:2;3027:75;;3157:15;;;;3000:1;2993:9;;;;;3122:12;;;;2964:218;;;-1:-1:-1;3199:3:2;2034:1174;-1:-1:-1;;;;;;2034:1174:2:o;3213:196::-;3281:20;;-1:-1:-1;;;;;3330:54:2;;3320:65;;3310:93;;3399:1;3396;3389:12;3414:401;3499:6;3507;3515;3523;3576:3;3564:9;3555:7;3551:23;3547:33;3544:53;;;3593:1;3590;3583:12;3544:53;3629:9;3616:23;3606:33;;3658:37;3691:2;3680:9;3676:18;3658:37;:::i;:::-;3648:47;;3714:38;3748:2;3737:9;3733:18;3714:38;:::i;:::-;3704:48;;3771:38;3805:2;3794:9;3790:18;3771:38;:::i;3820:258::-;3892:1;3902:113;3916:6;3913:1;3910:13;3902:113;;;3992:11;;;3986:18;3973:11;;;3966:39;3938:2;3931:10;3902:113;;;4033:6;4030:1;4027:13;4024:48;;;4068:1;4059:6;4054:3;4050:16;4043:27;4024:48;;3820:258;;;:::o;4083:257::-;4124:3;4162:5;4156:12;4189:6;4184:3;4177:19;4205:63;4261:6;4254:4;4249:3;4245:14;4238:4;4231:5;4227:16;4205:63;:::i;:::-;4322:2;4301:15;-1:-1:-1;;4297:29:2;4288:39;;;;4329:4;4284:50;;4083:257;-1:-1:-1;;4083:257:2:o;4345:915::-;4520:2;4509:9;4502:21;4483:4;4558:6;4552:13;4601:4;4596:2;4585:9;4581:18;4574:32;4629:51;4675:3;4664:9;4660:19;4646:12;4629:51;:::i;:::-;4615:65;;4729:2;4721:6;4717:15;4711:22;4756:2;4752:7;4823:2;4811:9;4803:6;4799:22;4795:31;4790:2;4779:9;4775:18;4768:59;4850:40;4883:6;4867:14;4850:40;:::i;:::-;4836:54;;4939:2;4931:6;4927:15;4921:22;4899:44;;5007:2;4995:9;4987:6;4983:22;4979:31;4974:2;4963:9;4959:18;4952:59;5034:40;5067:6;5051:14;5034:40;:::i;:::-;5020:54;;5123:2;5115:6;5111:15;5105:22;5083:44;;5193:2;5181:9;5173:6;5169:22;5165:31;5158:4;5147:9;5143:20;5136:61;;5214:40;5247:6;5231:14;5214:40;:::i;:::-;5206:48;4345:915;-1:-1:-1;;;;;4345:915:2:o;5265:180::-;5324:6;5377:2;5365:9;5356:7;5352:23;5348:32;5345:52;;;5393:1;5390;5383:12;5345:52;-1:-1:-1;5416:23:2;;5265:180;-1:-1:-1;5265:180:2:o;5450:802::-;5619:2;5608:9;5601:21;-1:-1:-1;;;;;5668:6:2;5662:13;5658:62;5653:2;5642:9;5638:18;5631:90;5582:4;5768:2;5760:6;5756:15;5750:22;5808:4;5803:2;5792:9;5788:18;5781:32;5836:51;5882:3;5871:9;5867:19;5853:12;5836:51;:::i;:::-;5822:65;;5936:2;5928:6;5924:15;5918:22;6008:2;6004:7;5992:9;5984:6;5980:22;5976:36;5971:2;5960:9;5956:18;5949:64;6036:40;6069:6;6053:14;6036:40;:::i;:::-;6022:54;;;6131:2;6123:6;6119:15;6113:22;6107:3;6096:9;6092:19;6085:51;6203:18;6196:3;6188:6;6184:16;6178:23;6174:48;6167:4;6156:9;6152:20;6145:78;6240:6;6232:14;;;5450:802;;;;:::o;6561:348::-;6613:8;6623:6;6677:3;6670:4;6662:6;6658:17;6654:27;6644:55;;6695:1;6692;6685:12;6644:55;-1:-1:-1;6718:20:2;;6761:18;6750:30;;6747:50;;;6793:1;6790;6783:12;6747:50;6830:4;6822:6;6818:17;6806:29;;6882:3;6875:4;6866:6;6858;6854:19;6850:30;6847:39;6844:59;;;6899:1;6896;6889:12;6844:59;6561:348;;;;;:::o;6914:479::-;6994:6;7002;7010;7063:2;7051:9;7042:7;7038:23;7034:32;7031:52;;;7079:1;7076;7069:12;7031:52;7119:9;7106:23;7152:18;7144:6;7141:30;7138:50;;;7184:1;7181;7174:12;7138:50;7223:59;7274:7;7265:6;7254:9;7250:22;7223:59;:::i;:::-;7301:8;;7197:85;;-1:-1:-1;7383:2:2;7368:18;;;;7355:32;;6914:479;-1:-1:-1;;;;6914:479:2:o;7811:625::-;7907:6;7915;7923;7931;7939;7992:3;7980:9;7971:7;7967:23;7963:33;7960:53;;;8009:1;8006;7999:12;7960:53;8045:9;8032:23;8022:33;;8074:37;8107:2;8096:9;8092:18;8074:37;:::i;:::-;8064:47;;8130:38;8164:2;8153:9;8149:18;8130:38;:::i;:::-;8120:48;;8219:2;8208:9;8204:18;8191:32;8246:18;8238:6;8235:30;8232:50;;;8278:1;8275;8268:12;8232:50;8317:59;8368:7;8359:6;8348:9;8344:22;8317:59;:::i;:::-;7811:625;;;;-1:-1:-1;7811:625:2;;-1:-1:-1;8395:8:2;;8291:85;7811:625;-1:-1:-1;;;7811:625:2:o;8441:860::-;8548:6;8556;8564;8572;8580;8588;8641:3;8629:9;8620:7;8616:23;8612:33;8609:53;;;8658:1;8655;8648:12;8609:53;8694:9;8681:23;8671:33;;8723:37;8756:2;8745:9;8741:18;8723:37;:::i;:::-;8713:47;;8811:2;8800:9;8796:18;8783:32;8834:18;8875:2;8867:6;8864:14;8861:34;;;8891:1;8888;8881:12;8861:34;8930:59;8981:7;8972:6;8961:9;8957:22;8930:59;:::i;:::-;9008:8;;-1:-1:-1;8904:85:2;-1:-1:-1;9096:2:2;9081:18;;9068:32;;-1:-1:-1;9112:16:2;;;9109:36;;;9141:1;9138;9131:12;9109:36;;9180:61;9233:7;9222:8;9211:9;9207:24;9180:61;:::i;:::-;8441:860;;;;-1:-1:-1;8441:860:2;;-1:-1:-1;8441:860:2;;9260:8;;8441:860;-1:-1:-1;;;8441:860:2:o;9498:186::-;9557:6;9610:2;9598:9;9589:7;9585:23;9581:32;9578:52;;;9626:1;9623;9616:12;9578:52;9649:29;9668:9;9649:29;:::i;:::-;9639:39;9498:186;-1:-1:-1;;;9498:186:2:o;9689:184::-;9747:6;9800:2;9788:9;9779:7;9775:23;9771:32;9768:52;;;9816:1;9813;9806:12;9768:52;9839:28;9857:9;9839:28;:::i;9878:326::-;9954:6;9962;9970;10023:2;10011:9;10002:7;9998:23;9994:32;9991:52;;;10039:1;10036;10029:12;9991:52;10075:9;10062:23;10052:33;;10104:37;10137:2;10126:9;10122:18;10104:37;:::i;:::-;10094:47;;10160:38;10194:2;10183:9;10179:18;10160:38;:::i;:::-;10150:48;;9878:326;;;;;:::o;10209:529::-;10388:2;10377:9;10370:21;10351:4;10426:6;10420:13;10469:4;10464:2;10453:9;10449:18;10442:32;10497:50;10543:2;10532:9;10528:18;10514:12;10497:50;:::i;:::-;10483:64;;10596:2;10588:6;10584:15;10578:22;10670:2;10666:7;10654:9;10646:6;10642:22;10638:36;10631:4;10620:9;10616:20;10609:66;10692:40;10725:6;10709:14;10692:40;:::i;10743:326::-;10819:6;10827;10835;10888:2;10876:9;10867:7;10863:23;10859:32;10856:52;;;10904:1;10901;10894:12;10856:52;10940:9;10927:23;10917:33;;10969:38;11003:2;10992:9;10988:18;10969:38;:::i;:::-;10959:48;;11026:37;11059:2;11048:9;11044:18;11026:37;:::i;11074:217::-;11221:2;11210:9;11203:21;11184:4;11241:44;11281:2;11270:9;11266:18;11258:6;11241:44;:::i;11296:550::-;11383:6;11391;11399;11407;11460:2;11448:9;11439:7;11435:23;11431:32;11428:52;;;11476:1;11473;11466:12;11428:52;11512:9;11499:23;11489:33;;11541:37;11574:2;11563:9;11559:18;11541:37;:::i;:::-;11531:47;;11629:2;11618:9;11614:18;11601:32;11656:18;11648:6;11645:30;11642:50;;;11688:1;11685;11678:12;11642:50;11727:59;11778:7;11769:6;11758:9;11754:22;11727:59;:::i;:::-;11296:550;;;;-1:-1:-1;11805:8:2;-1:-1:-1;;;;11296:550:2:o;11851:353::-;12053:2;12035:21;;;12092:2;12072:18;;;12065:30;12131:31;12126:2;12111:18;;12104:59;12195:2;12180:18;;11851:353::o;12209:349::-;12411:2;12393:21;;;12450:2;12430:18;;;12423:30;12489:27;12484:2;12469:18;;12462:55;12549:2;12534:18;;12209:349::o;12563:184::-;-1:-1:-1;;;;;12612:1:2;12605:88;12712:4;12709:1;12702:15;12736:4;12733:1;12726:15;12752:184;-1:-1:-1;;;;;12801:1:2;12794:88;12901:4;12898:1;12891:15;12925:4;12922:1;12915:15;13217:339;13419:2;13401:21;;;13458:2;13438:18;;;13431:30;13497:17;13492:2;13477:18;;13470:45;13547:2;13532:18;;13217:339::o;14036:184::-;-1:-1:-1;;;;;14085:1:2;14078:88;14185:4;14182:1;14175:15;14209:4;14206:1;14199:15;14225:125;14265:4;14293:1;14290;14287:8;14284:34;;;14298:18;;:::i;:::-;-1:-1:-1;14335:9:2;;14225:125::o;14706:437::-;14791:1;14781:12;;14838:1;14828:12;;;14849:61;;14903:4;14895:6;14891:17;14881:27;;14849:61;14956:2;14948:6;14945:14;14925:18;14922:38;14919:218;;;-1:-1:-1;;;;;14990:1:2;14983:88;15094:4;15091:1;15084:15;15122:4;15119:1;15112:15;14919:218;;14706:437;;;:::o;15497:135::-;15536:3;-1:-1:-1;;15557:17:2;;15554:43;;;15577:18;;:::i;:::-;-1:-1:-1;15624:1:2;15613:13;;15497:135::o;15637:825::-;15843:4;15891:2;15880:9;15876:18;15921:6;15910:9;15903:25;15947:2;15997:18;15989:6;15985:31;15980:2;15969:9;15965:18;15958:59;16053:2;16048;16037:9;16033:18;16026:30;16076:6;16106;16098;16091:22;16144:3;16133:9;16129:19;16122:26;;16171:6;16157:20;;16195:1;16205:231;16219:6;16216:1;16213:13;16205:231;;;-1:-1:-1;;;;;16284:26:2;16303:6;16284:26;:::i;:::-;16280:75;16268:88;;16411:15;;;;16376:12;;;;16241:1;16234:9;16205:231;;;-1:-1:-1;16453:3:2;15637:825;-1:-1:-1;;;;;;;;15637:825:2:o;16823:350::-;17025:2;17007:21;;;17064:2;17044:18;;;17037:30;17103:28;17098:2;17083:18;;17076:56;17164:2;17149:18;;16823:350::o;17178:267::-;17267:6;17262:3;17255:19;17319:6;17312:5;17305:4;17300:3;17296:14;17283:43;-1:-1:-1;17371:1:2;17346:16;;;17364:4;17342:27;;;17335:38;;;;17427:2;17406:15;;;-1:-1:-1;;17402:29:2;17393:39;;;17389:50;;17178:267::o;17450:511::-;17693:6;17682:9;17675:25;-1:-1:-1;;;;;17740:6:2;17736:55;17731:2;17720:9;17716:18;17709:83;17828:3;17823:2;17812:9;17808:18;17801:31;17656:4;17849:63;17907:3;17896:9;17892:19;17884:6;17876;17849:63;:::i;:::-;17841:71;;17948:6;17943:2;17932:9;17928:18;17921:34;17450:511;;;;;;;;:::o;17966:184::-;-1:-1:-1;;;;;18015:1:2;18008:88;18115:4;18112:1;18105:15;18139:4;18136:1;18129:15;18155:686;18209:5;18262:3;18255:4;18247:6;18243:17;18239:27;18229:55;;18280:1;18277;18270:12;18229:55;18309:6;18303:13;18335:18;18372:2;18368;18365:10;18362:36;;;18378:18;;:::i;:::-;18453:2;18447:9;18421:2;18507:13;;-1:-1:-1;;18503:22:2;;;18527:2;18499:31;18495:40;18483:53;;;18551:18;;;18571:22;;;18548:46;18545:72;;;18597:18;;:::i;:::-;18637:10;18633:2;18626:22;18672:2;18664:6;18657:18;18718:3;18711:4;18706:2;18698:6;18694:15;18690:26;18687:35;18684:55;;;18735:1;18732;18725:12;18684:55;18748:63;18808:2;18801:4;18793:6;18789:17;18782:4;18774:6;18770:17;18748:63;:::i;:::-;18829:6;18155:686;-1:-1:-1;;;;;;18155:686:2:o;18846:942::-;18938:6;18991:2;18979:9;18970:7;18966:23;18962:32;18959:52;;;19007:1;19004;18997:12;18959:52;19040:9;19034:16;19069:18;19110:2;19102:6;19099:14;19096:34;;;19126:1;19123;19116:12;19096:34;19149:22;;;;19205:4;19187:16;;;19183:27;19180:47;;;19223:1;19220;19213:12;19180:47;19256:4;19250:11;19300:4;19292:6;19288:17;19355:6;19343:10;19340:22;19335:2;19323:10;19320:18;19317:46;19314:72;;;19366:18;;:::i;:::-;19402:4;19395:24;19444:9;;19465:16;;;19462:36;;;19494:1;19491;19484:12;19462:36;19522:56;19570:7;19559:8;19555:2;19551:17;19522:56;:::i;:::-;19514:6;19507:72;;19618:2;19614;19610:11;19604:18;19647:2;19637:8;19634:16;19631:36;;;19663:1;19660;19653:12;19631:36;19700:56;19748:7;19737:8;19733:2;19729:17;19700:56;:::i;:::-;19695:2;19683:15;;19676:81;-1:-1:-1;19687:6:2;18846:942;-1:-1:-1;;;;;18846:942:2:o;19793:553::-;20056:6;20045:9;20038:25;20099:3;20094:2;20083:9;20079:18;20072:31;20019:4;20126:63;20184:3;20173:9;20169:19;20161:6;20153;20126:63;:::i;:::-;20237:9;20229:6;20225:22;20220:2;20209:9;20205:18;20198:50;20265:32;20290:6;20282;20265:32;:::i;:::-;20257:40;;;20333:6;20328:2;20317:9;20313:18;20306:34;19793:553;;;;;;;;:::o;20351:410::-;20553:2;20535:21;;;20592:2;20572:18;;;20565:30;20631:34;20626:2;20611:18;;20604:62;20702:16;20697:2;20682:18;;20675:44;20751:3;20736:19;;20351:410::o;21474:397::-;21676:2;21658:21;;;21715:2;21695:18;;;21688:30;21754:34;21749:2;21734:18;;21727:62;21825:3;21820:2;21805:18;;21798:31;21861:3;21846:19;;21474:397::o;21876:879::-;22244:6;22233:9;22226:25;22299:18;22291:6;22287:31;22282:2;22271:9;22267:18;22260:59;22207:4;-1:-1:-1;;;;;22428:2:2;22420:6;22416:15;22411:2;22400:9;22396:18;22389:43;22480:2;22472:6;22468:15;22463:2;22452:9;22448:18;22441:43;;22521:3;22515;22504:9;22500:19;22493:32;22562:1;22556:3;22545:9;22541:19;22534:30;22601:6;22595:3;22584:9;22580:19;22573:35;22627:3;22667:2;22661:3;22650:9;22646:19;22639:31;22687:62;22745:2;22734:9;22730:18;22722:6;22714;22687:62;:::i;:::-;22679:70;21876:879;-1:-1:-1;;;;;;;;;21876:879:2:o;23520:343::-;23722:2;23704:21;;;23761:2;23741:18;;;23734:30;23800:21;23795:2;23780:18;;23773:49;23854:2;23839:18;;23520:343::o;24989:883::-;25357:6;25346:9;25339:25;25412:18;25404:6;25400:31;25395:2;25384:9;25380:18;25373:59;25320:4;-1:-1:-1;;;;;25541:2:2;25533:6;25529:15;25524:2;25513:9;25509:18;25502:43;25593:2;25585:6;25581:15;25576:2;25565:9;25561:18;25554:43;;25634:3;25628;25617:9;25613:19;25606:32;25675:1;25669:3;25658:9;25654:19;25647:30;25714:10;25708:3;25697:9;25693:19;25686:39;25744:3;25784:2;25778:3;25767:9;25763:19;25756:31;25804:62;25862:2;25851:9;25847:18;25839:6;25831;25804:62;:::i;26642:881::-;27010:6;26999:9;26992:25;27065:18;27057:6;27053:31;27048:2;27037:9;27033:18;27026:59;26973:4;-1:-1:-1;;;;;27194:2:2;27186:6;27182:15;27177:2;27166:9;27162:18;27155:43;27246:2;27238:6;27234:15;27229:2;27218:9;27214:18;27207:43;;27287:3;27281;27270:9;27266:19;27259:32;27328:1;27322:3;27311:9;27307:19;27300:30;27367:8;27361:3;27350:9;27346:19;27339:37;27395:3;27435:2;27429:3;27418:9;27414:19;27407:31;27455:62;27513:2;27502:9;27498:18;27490:6;27482;27455:62;:::i;27528:886::-;27896:6;27885:9;27878:25;27951:18;27943:6;27939:31;27934:2;27923:9;27919:18;27912:59;27859:4;-1:-1:-1;;;;;28080:2:2;28072:6;28068:15;28063:2;28052:9;28048:18;28041:43;28132:2;28124:6;28120:15;28115:2;28104:9;28100:18;28093:43;;28173:3;28167;28156:9;28152:19;28145:32;28214:2;28208:3;28197:9;28193:19;28186:31;28254:12;28248:3;28237:9;28233:19;28226:41;28286:3;28326:2;28320:3;28309:9;28305:19;28298:31;28346:62;28404:2;28393:9;28389:18;28381:6;28373;28346:62;:::i;28823:881::-;29191:6;29180:9;29173:25;29246:18;29238:6;29234:31;29229:2;29218:9;29214:18;29207:59;29154:4;-1:-1:-1;;;;;29375:2:2;29367:6;29363:15;29358:2;29347:9;29343:18;29336:43;29427:2;29419:6;29415:15;29410:2;29399:9;29395:18;29388:43;;29468:3;29462;29451:9;29447:19;29440:32;29509:1;29503:3;29492:9;29488:19;29481:30;29548:8;29542:3;29531:9;29527:19;29520:37;29576:3;29616:2;29610:3;29599:9;29595:19;29588:31;29636:62;29694:2;29683:9;29679:18;29671:6;29663;29636:62;:::i", - "source": "// SPDX-License-Identifier: GPL-3.0\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./Identity.sol\";\n\n/**\n * @title Delta Contract\n * @dev Delta Contract For Mpc\n */\ncontract DeltaContract {\n IdentityContract public idContract;\n\n address private owner;\n enum RoundStatus {\n Started,\n Running,\n Calculating,\n Aggregating,\n Finished\n }\n mapping(bytes32 => Task) createdTasks;\n mapping(bytes32 => TaskRound[]) taskRounds;\n mapping(bytes32 => RoundModelCommitments[]) roundModelCommitments;\n uint64 private maxWeightCommitmentLength = 10485760;\n uint64 private maxSSComitmentLength = 256;\n struct RoundModelCommitments {\n mapping(address => bytes) weightCommitment;\n mapping(address => mapping(address => SSData)) ssdata;\n }\n struct Task {\n address creator;\n string creatorUrl;\n string dataSet;\n bytes32 commitment;\n uint64 currentRound;\n }\n\n struct Candidate {\n bytes pk1;\n bytes pk2;\n }\n\n struct TaskRound {\n uint64 currentRound;\n uint32 maxSample;\n uint32 minSample;\n RoundStatus status;\n mapping(address => Candidate) candidates;\n address[] joinedAddrs;\n }\n\n struct ExtCallTaskRoundStruct {\n uint64 currentRound;\n uint32 maxSample;\n uint32 minSample;\n uint8 status;\n address[] joinedAddrs;\n }\n\n struct SSData {\n bytes seedPiece;\n bytes seedCommitment;\n bytes secretKeyPiece;\n bytes secretKeyMaskCommitment;\n }\n\n // event for EVM logging\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\n // triggered when task created\n event TaskCreated(\n address indexed creator,\n bytes32 taskId,\n string dataSet,\n string creatorUrl,\n bytes32 commitment\n );\n // triggered when task developer call startRound\n event RoundStart(bytes32 taskId, uint64 round);\n\n // triggered when task developer call startRound\n event RoundEnd(bytes32 taskId, uint64 round);\n\n // triggered when task developer call selectCandidates\n event PartnerSelected(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when task developer call startAggregateUpload\n event AggregateStarted(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when task developer call startAggregate\n event CalculateStarted(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when client call uploadWeightCommitment , uploadSeedCommitment ,uploadSkMaskCommitment\n event ContentUploaded(\n bytes32 taskId,\n uint64 round,\n address owner,\n address sharer,\n string contentType,\n bytes content\n );\n\n // modifier to check if caller is owner\n modifier isOwner() {\n // If the first argument of 'require' evaluates to 'false', execution terminates and all\n // changes to the state and to Ether balances are reverted.\n // This used to consume all gas in old EVM versions, but not anymore.\n // It is often a good idea to use 'require' to check if functions are called correctly.\n // As a second argument, you can also provide an explanation about what went wrong.\n require(msg.sender == owner, \"Caller is not owner\");\n _;\n }\n\n modifier taskExists(bytes32 task_id) {\n require(createdTasks[task_id].creator != address(0), \"Task not exists\");\n _;\n }\n\n modifier roundExists(bytes32 task_id, uint64 round) {\n TaskRound[] storage rounds = taskRounds[task_id];\n require(\n rounds.length > 1 && rounds.length > round,\n \"this round does not exist\"\n );\n _;\n }\n\n modifier roundcmmtExists(bytes32 task_id, uint64 round) {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[task_id];\n require(cmmts.length > round, \"The Task Round Must exists\");\n _;\n }\n\n modifier taskOwner(bytes32 task_id) {\n require(\n createdTasks[task_id].creator == msg.sender,\n \"Must called by the task owner\"\n );\n _;\n }\n\n /**\n * @dev Set contract deployer as owner\n */\n constructor(IdentityContract _addr) {\n idContract = _addr;\n owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor\n emit OwnerSet(address(0), owner);\n }\n\n /**\n * @dev get task info data\n * @param taskId taskId\n */\n function getTaskData(bytes32 taskId)\n public\n view\n taskExists(taskId)\n returns (Task memory task)\n {\n task = createdTasks[taskId];\n }\n\n /**\n * @dev called by task developer, notifying all clients that a new learning task has been published\n * @param dataSet data set name (file/folder name of training data)\n * @param commitment training code hash (client validation purpose)\n * @return taskId taskId\n */\n function createTask(\n string calldata dataSet,\n bytes32 commitment\n ) public payable returns (bytes32 taskId) {\n bytes32 task_id = keccak256(\n abi.encode(block.timestamp, msg.sender, dataSet, commitment)\n );\n IdentityContract.Node memory node = idContract.getNodeInfo(msg.sender);\n createdTasks[task_id] = Task({\n creatorUrl: node.url,\n creator: msg.sender,\n dataSet: dataSet,\n commitment: commitment,\n currentRound: 0\n });\n taskId = task_id;\n TaskRound[] storage rounds = taskRounds[taskId];\n rounds.push();\n emit TaskCreated(msg.sender, task_id, dataSet, node.url, commitment);\n }\n\n /**\n * @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n * @param taskId taskId\n * @param round the round to start\n */\n function startRound(\n bytes32 taskId,\n uint64 round,\n uint32 maxSample,\n uint32 minSample\n ) public taskExists(taskId) taskOwner(taskId) {\n TaskRound[] storage rounds = taskRounds[taskId];\n require(\n rounds.length == round,\n \"the round has been already started or the pre round does not exist\"\n );\n Task storage task = createdTasks[taskId];\n task.currentRound = round;\n while (rounds.length == 0 || rounds.length - 1 < round) {\n rounds.push();\n }\n rounds[round].currentRound = round;\n rounds[round].maxSample = maxSample;\n rounds[round].minSample = minSample;\n rounds[round].status = RoundStatus.Started;\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n while (cmmts.length == 0 || cmmts.length - 1 < round) {\n cmmts.push();\n }\n emit RoundStart(taskId, round);\n }\n\n /**\n * @dev called by client, join for that round of computation\n * @param taskId taskId\n * @param round the round to join\n * @param pk1 used for secure communication channel establishment\n * @param pk2 used for mask generation\n */\n function joinRound(\n bytes32 taskId,\n uint64 round,\n bytes calldata pk1,\n bytes calldata pk2\n ) public taskExists(taskId) roundExists(taskId, round) returns (bool) {\n TaskRound[] storage rounds = taskRounds[taskId];\n TaskRound storage thisRound = rounds[rounds.length - 1];\n require(\n rounds.length - 1 == round &&\n thisRound.status == RoundStatus.Started,\n \"join phase has passed\"\n );\n require(\n thisRound.candidates[msg.sender].pk1.length == 0,\n \"Cannot join the same round multiple times\"\n );\n thisRound.candidates[msg.sender] = Candidate({pk1: pk1, pk2: pk2});\n thisRound.joinedAddrs.push(msg.sender);\n return true;\n }\n\n /**\n * @dev called by anyone, get Client Pks\n * @return candidate (pk1,pk2)\n */\n function getClientPublickeys(\n bytes32 taskId,\n uint64 round,\n address candidateAddr\n )\n public\n view\n roundExists(taskId, round)\n returns (Candidate memory candidate)\n {\n candidate = taskRounds[taskId][round].candidates[candidateAddr];\n }\n\n /**\n * @dev getting task round infos\n * @param taskId taskId\n * @param round the round to fetch\n * @return taskround the task round infos\n */\n function getTaskRound(bytes32 taskId, uint64 round)\n public\n view\n roundExists(taskId, round)\n returns (ExtCallTaskRoundStruct memory taskround)\n {\n TaskRound storage temp = taskRounds[taskId][round];\n taskround = ExtCallTaskRoundStruct({\n currentRound: temp.currentRound,\n maxSample: temp.maxSample,\n minSample: temp.minSample,\n status: (uint8)(temp.status),\n joinedAddrs: temp.joinedAddrs\n });\n }\n\n /**\n * @dev called by task developer, randomly choose candidates to be computation nodes\n * @dev clients now should start secret sharing phase\n * @param addrs selected client addresses\n */\n function selectCandidates(\n bytes32 taskId,\n uint64 round,\n address[] calldata addrs\n ) public taskOwner(taskId) roundExists(taskId, round) {\n require(addrs.length > 0, \"Must provide addresses\");\n TaskRound storage curRound = taskRounds[taskId][round];\n for (uint256 i = 0; i < addrs.length; i++) {\n require(\n curRound.candidates[addrs[i]].pk1.length > 0,\n \"Candidate must exist\"\n );\n }\n curRound.status = RoundStatus.Running;\n emit PartnerSelected(taskId, round, addrs);\n }\n\n /**\n * @dev called by task developer, get commitments from blockchain\n * @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n * @param taskId taskId\n * @param clientaddress the client that publish the commitments\n * @param round the round of that commitment\n * @return commitment commitment data\n */\n function getResultCommitment(\n bytes32 taskId,\n address clientaddress,\n uint64 round\n )\n public\n view\n roundExists(taskId, round)\n roundcmmtExists(taskId, round)\n returns (bytes memory commitment)\n {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n require(cmmts.length >= round, \"The Task Round Must exists\");\n RoundModelCommitments storage cmmt = cmmts[round];\n commitment = cmmt.weightCommitment[clientaddress];\n }\n\n /**\n * @dev called by any participants\n */\n function getSecretSharingData(\n bytes32 taskId,\n uint64 round,\n address sender,\n address receiver\n )\n public\n view\n roundExists(taskId, round)\n roundcmmtExists(taskId, round)\n returns (SSData memory ssdata)\n {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n require(cmmts.length >= round, \"The Task Round Must exists\");\n RoundModelCommitments storage cmmt = cmmts[round];\n ssdata = cmmt.ssdata[sender][receiver];\n }\n\n /**\n * @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n * @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n * @param taskId taskId\n * @param round the task round\n * @param onlineClients clients that has transfered gradient to task developer\n */\n function startAggregate(\n bytes32 taskId,\n uint64 round,\n address[] calldata onlineClients\n ) public taskOwner(taskId) roundExists(taskId, round) {\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Calculating,\n \"Calculating has not started\"\n );\n curRound.status = RoundStatus.Aggregating;\n for (uint256 i = 0; i < onlineClients.length; i++) {\n require(\n curRound.candidates[onlineClients[i]].pk1.length > 0,\n \"Candidate must exist\"\n );\n }\n emit AggregateStarted(taskId, round, onlineClients);\n }\n\n /**\n * @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n * @param taskId taskId\n * @param round the task round\n */\n function startCalculate(\n bytes32 taskId,\n uint64 round,\n address[] calldata onlineClients\n ) public taskOwner(taskId) roundExists(taskId, round) {\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"This round is not running now\"\n );\n curRound.status = RoundStatus.Calculating;\n emit CalculateStarted(taskId, round, onlineClients);\n }\n\n /**\n * @dev called by task developer, close round\n * @param taskId taskId\n * @param round the task round\n */\n function endRound(bytes32 taskId, uint64 round)\n public\n taskOwner(taskId)\n roundExists(taskId, round)\n {\n TaskRound storage curRound = taskRounds[taskId][round];\n curRound.status = RoundStatus.Finished;\n emit RoundEnd(taskId, round);\n }\n\n /**\n * @dev called by client, upload weight commitment\n * @param taskId taskId\n * @param round the task round\n * @param resultCommitment masked model incremental commitment\n */\n function uploadResultCommitment(\n bytes32 taskId,\n uint64 round,\n bytes calldata resultCommitment\n ) public roundExists(taskId, round) {\n require(\n resultCommitment.length > 0 &&\n resultCommitment.length <= maxWeightCommitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Calculating,\n \"not in uploading phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment.weightCommitment[msg.sender].length == 0,\n \"cannot upload weightCommitment multiple times\"\n );\n commitment.weightCommitment[msg.sender] = resultCommitment;\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n address(0),\n \"WEIGHT\",\n resultCommitment\n );\n }\n\n /**\n * @dev called by client, upload secret sharing seed commitment\n * @param taskId taskId\n * @param round the task round\n * @param sharee the sharee address\n * @param seedCommitment secret sharing piece of seed mask\n */\n function uploadSeedCommitment(\n bytes32 taskId,\n uint64 round,\n address sharee,\n bytes calldata seedCommitment\n ) public roundExists(taskId, round) {\n require(\n seedCommitment.length > 0 &&\n seedCommitment.length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"not in secret sharing phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment.ssdata[msg.sender][sharee].seedCommitment.length == 0,\n \"cannot upload seed cmmt multiple times\"\n );\n commitment.ssdata[msg.sender][sharee].seedCommitment = seedCommitment;\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n sharee,\n \"SEEDCMMT\",\n seedCommitment\n );\n }\n\n /**\n * @dev called by client, upload secret sharing seed commitment\n * @param taskId taskId\n * @param round the task round\n * @param sharee the sharee address\n * @param seed the seed piece\n */\n function uploadSeed(\n bytes32 taskId,\n uint64 round,\n address sharee,\n bytes calldata seed\n ) public roundExists(taskId, round) {\n require(\n seed.length > 0 && seed.length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Aggregating,\n \"not in upload ss phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment.ssdata[msg.sender][sharee].seedCommitment.length > 0,\n \"must upload commitment first\"\n );\n require(\n commitment.ssdata[msg.sender][sharee].seedPiece.length == 0,\n \"cannot upload seed multiple times\"\n );\n commitment.ssdata[msg.sender][sharee].seedPiece = seed;\n emit ContentUploaded(taskId, round, msg.sender, sharee, \"SEED\", seed);\n }\n\n /**\n * @dev called by client, upload secret sharing sk commitment\n * @param taskId taskId\n * @param round the task round\n * @param sharee the sharee address\n * @param secretKeyCommitment secret sharing piece of seed mask\n */\n function uploadSecretKeyCommitment(\n bytes32 taskId,\n uint64 round,\n address sharee,\n bytes calldata secretKeyCommitment\n ) public roundExists(taskId, round) {\n require(\n secretKeyCommitment.length > 0 &&\n secretKeyCommitment.length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"not in secret sharing phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n if (commitments.length == round) {\n commitments.push();\n }\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment\n .ssdata[msg.sender][sharee]\n .secretKeyMaskCommitment\n .length == 0,\n \"cannot upload seed multiple times\"\n );\n commitment\n .ssdata[msg.sender][sharee]\n .secretKeyMaskCommitment = secretKeyCommitment;\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n sharee,\n \"SKMASKCMMT\",\n secretKeyCommitment\n );\n // commitment.data[msg.sender].seedCmmtmnt = seedCmmtmnt;\n }\n\n /**\n * @dev called by client, upload secret sharing sk commitment\n * @param taskId taskId\n * @param round the task round\n * @param secretkeyMask the crypted skmask\n * @param sender the sender address\n */\n function uploadSecretkeyMask(\n bytes32 taskId,\n uint64 round,\n address sender,\n bytes calldata secretkeyMask\n ) public roundExists(taskId, round) {\n require(\n secretkeyMask.length > 0 &&\n secretkeyMask.length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Aggregating,\n \"not in upload ss phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n if (commitments.length == round) {\n commitments.push();\n }\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment\n .ssdata[sender][msg.sender]\n .secretKeyMaskCommitment\n .length > 0,\n \"must upload commitment first\"\n );\n require(\n commitment.ssdata[sender][msg.sender].secretKeyPiece.length == 0,\n \"cannot upload skmask multiple times\"\n );\n commitment.ssdata[sender][msg.sender].secretKeyPiece = secretkeyMask;\n emit ContentUploaded(\n taskId,\n round,\n sender,\n msg.sender,\n \"SKMASK\",\n secretkeyMask\n );\n // commitment.data[msg.sender].seedCmmtmnt = seedCmmtmnt;\n }\n\n function setMaxWeightCommitmentLength(uint64 maxLength) public isOwner {\n maxWeightCommitmentLength = maxLength;\n }\n\n function setMaxSSCommitmentLength(uint64 maxLength) public isOwner {\n maxSSComitmentLength = maxLength;\n }\n\n function getMaxCommitmentsLength()\n public\n view\n returns (uint64 sslength, uint64 weightLength)\n {\n sslength = maxSSComitmentLength;\n weightLength = maxWeightCommitmentLength;\n }\n\n /**\n * @dev Change owner\n * @param newOwner address of new owner\n */\n function changeOwner(address newOwner) public isOwner {\n emit OwnerSet(owner, newOwner);\n owner = newOwner;\n }\n\n /**\n * @dev Return owner address\n * @return address of owner\n */\n function getOwner() external view returns (address) {\n return owner;\n }\n}\n", - "sourcePath": "/home/hmiao/workspace/node/contract/contracts/DeltaContract.sol", + "sourceMap": "160:24367:0:-:0;;;539:51;;;-1:-1:-1;;;;;;596:41:0;;;;;4280:220;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4326:10;:18;;-1:-1:-1;;;;;;4326:18:0;;;-1:-1:-1;;;;;4326:18:0;;;;;-1:-1:-1;4354:18:0;;4362:10;4354:18;;;;;;4466:27;;4362:10;;4326;4466:27;;4326:10;;4466:27;4280:220;160:24367;;14:315:2;109:6;162:2;150:9;141:7;137:23;133:32;130:52;;;178:1;175;168:12;130:52;204:16;;-1:-1:-1;;;;;249:31:2;;239:42;;229:70;;295:1;292;285:12;229:70;318:5;14:315;-1:-1:-1;;;14:315:2:o;:::-;160:24367:0;;;;;;", + "deployedSourceMap": "160:24367:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13976:285;;;;;;;;;;-1:-1:-1;13976:285:0;;;;;:::i;:::-;;:::i;:::-;;6159:970;;;;;;;;;;-1:-1:-1;6159:970:0;;;;;:::i;:::-;;:::i;17823:1658::-;;;;;;;;;;-1:-1:-1;17823:1658:0;;;;;:::i;:::-;;:::i;187:34::-;;;;;;;;;;-1:-1:-1;187:34:0;;;;-1:-1:-1;;;;;187:34:0;;;;;;-1:-1:-1;;;;;2511:55:2;;;2493:74;;2481:2;2466:18;187:34:0;;;;;;;;9664:595;;;;;;;;;;-1:-1:-1;9664:595:0;;;;;:::i;:::-;;:::i;8941:508::-;;;;;;;;;;-1:-1:-1;8941:508:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;12433:695::-;;;;;;;;;;-1:-1:-1;12433:695:0;;;;;:::i;:::-;;:::i;4581:175::-;;;;;;;;;;-1:-1:-1;4581:175:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;23919:220::-;;;;;;;;;;-1:-1:-1;24062:20:0;;23919:220;;;-1:-1:-1;;;;;24062:20:0;;;;;6274:34:2;;24107:25:0;;;6339:2:2;6324:18;;6317:43;6210:18;23919:220:0;6067:299:2;11291:715:0;;;;;;;;;;-1:-1:-1;11291:715:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;24444:81::-;;;;;;;;;;-1:-1:-1;24513:5:0;;-1:-1:-1;;;;;24513:5:0;24444:81;;7395:778;;;;;;;;;;-1:-1:-1;7395:778:0;;;;;:::i;:::-;;:::i;:::-;;;10401:14:2;;10394:22;10376:41;;10364:2;10349:18;7395:778:0;10236:187:2;5055:896:0;;;;;;:::i;:::-;;:::i;:::-;;;11366:25:2;;;11354:2;11339:18;5055:896:0;11220:177:2;24230:127:0;;;;;;;;;;-1:-1:-1;24230:127:0;;;;;:::i;:::-;;:::i;13364:477::-;;;;;;;;;;-1:-1:-1;13364:477:0;;;;;:::i;:::-;;:::i;15887:1685::-;;;;;;;;;;-1:-1:-1;15887:1685:0;;;;;:::i;:::-;;:::i;23666:125::-;;;;;;;;;;-1:-1:-1;23666:125:0;;;;;:::i;:::-;;:::i;21795:1865::-;;;;;;;;;;-1:-1:-1;21795:1865:0;;;;;:::i;:::-;;:::i;23797:116::-;;;;;;;;;;-1:-1:-1;23797:116:0;;;;;:::i;:::-;;:::i;8276:493::-;;;;;;;;;;-1:-1:-1;8276:493:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;10696:534::-;;;;;;;;;;-1:-1:-1;10696:534:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19777:1742::-;;;;;;;;;;-1:-1:-1;19777:1742:0;;;;;:::i;:::-;;:::i;14468:1131::-;;;;;;;;;;-1:-1:-1;14468:1131:0;;;;;:::i;:::-;;:::i;13976:285::-;4099:21;;;;:12;:21;;;;;:29;14057:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;;;;;;;;;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;14085:6;;14093:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;14114:26:::2;14143:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;14143:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;;::::2;::::0;;;::::2;;14178:38:::0;;-1:-1:-1;;14178:38:0::2;::::0;::::2;::::0;;14231:23:::2;::::0;;15307:25:2;;;-1:-1:-1;;;;;15368:31:2;;15348:18;;;15341:59;;;;14231:23:0;;14143:25;;-1:-1:-1;14231:23:0::2;::::0;;;;;;::::2;14104:157;3597:200:::1;4207:1;;13976:285:::0;;;:::o;6159:970::-;3499:1;3458:21;;;:12;:21;;;;;:29;6301:6;;-1:-1:-1;;;;;3458:29:0;3450:71;;;;-1:-1:-1;;;;;3450:71:0;;;;;;;:::i;:::-;4099:21:::1;::::0;;;:12:::1;:21;::::0;;;;:29;6319:6;;-1:-1:-1;;;;;4099:29:0::1;4132:10;4099:43;4078:119;;;;-1:-1:-1::0;;;;;4078:119:0::1;;;;;;;:::i;:::-;6337:26:::2;6366:18:::0;;;:10:::2;:18;::::0;;;;6415:13;;-1:-1:-1;;;;;6415:22:0;::::2;;6394:135;;;::::0;-1:-1:-1;;;;;6394:135:0;;15957:2:2;6394:135:0::2;::::0;::::2;15939:21:2::0;15996:2;15976:18;;;15969:30;16035:34;16015:18;;;16008:62;16106:34;16086:18;;;16079:62;16178:4;16157:19;;;16150:33;16200:19;;6394:135:0::2;15755:470:2::0;6394:135:0::2;6539:17;6559:20:::0;;;:12:::2;:20;::::0;;;;6589:17:::2;::::0;::::2;:25:::0;;-1:-1:-1;;6589:25:0::2;-1:-1:-1::0;;;;;6589:25:0;::::2;;::::0;;6624:94:::2;6631:13:::0;;:18;;:47:::2;;-1:-1:-1::0;6653:13:0;;-1:-1:-1;;;;;6653:25:0;::::2;::::0;:17:::2;::::0;6669:1:::2;::::0;6653:17:::2;:::i;:::-;:25;6631:47;6624:94;;;6694:13:::0;;::::2;;::::0;;-1:-1:-1;6694:13:0;;;6624:94:::2;;;6756:5;6727:6;6734:5;-1:-1:-1::0;;;;;6727:13:0::2;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;:34:::0;;-1:-1:-1;;6727:34:0::2;-1:-1:-1::0;;;;;6727:34:0;;::::2;;::::0;;6771:13;;6797:9;;6771:13;;;;::::2;::::0;;::::2;;;;;:::i;:::-;;;;;;;;;;;:23;;;:35;;;;;;;;;;;;;;;;;;6842:9;6816:6;6823:5;-1:-1:-1::0;;;;;6816:13:0::2;;;;;;;;;:::i;:::-;;;;;;;;;;;:23;;;:35;;;;;;;;;;;;;;;;;;6884:19;6861:6;6868:5;-1:-1:-1::0;;;;;6861:13:0::2;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;:42:::0;;-1:-1:-1;;6861:42:0::2;-1:-1:-1::0;;;6861:42:0;::::2;::::0;::::2;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;6913:37:0::2;6953:29:::0;;;:21:::2;:29;::::0;;;;6992:91:::2;6999:12:::0;;:17;;:45:::2;;-1:-1:-1::0;7020:12:0;;-1:-1:-1;;;;;7020:24:0;::::2;::::0;:16:::2;::::0;7035:1:::2;::::0;7020:16:::2;:::i;:::-;:24;6999:45;6992:91;;;7060:12:::0;;::::2;;::::0;;-1:-1:-1;7060:12:0;;;6992:91:::2;;;7097:25;::::0;;15307::2;;;-1:-1:-1;;;;;15368:31:2;;15363:2;15348:18;;15341:59;7097:25:0::2;::::0;15280:18:2;7097:25:0::2;;;;;;;;6327:802;;;3531:1:::1;6159:970:::0;;;;;:::o;17823:1658::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;17982:6;;17990:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;18028:30;;::::1;18007:120;;;::::0;-1:-1:-1;;;;;18007:120:0;;16751:2:2;18007:120:0::1;::::0;::::1;16733:21:2::0;16790:2;16770:18;;;16763:30;16829:34;16809:18;;;16802:62;16900:13;16880:18;;;16873:41;16931:19;;18007:120:0::1;16549:407:2::0;18007:120:0::1;18142:9;18137:235;18157:16:::0;;::::1;18137:235;;;18237:1;18219:5;;18225:1;18219:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;;:19;:62;;;;-1:-1:-1::0;18261:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;18261:20:0::1;18242:5:::0;;18248:1;18242:8;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;;:39;;18219:62;18194:167;;;;-1:-1:-1::0;;;;;18194:167:0::1;;;;;;;:::i;:::-;18175:3:::0;::::1;::::0;::::1;:::i;:::-;;;;18137:235;;;-1:-1:-1::0;18381:26:0::1;18410:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;18410:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;18466:15:0;;-1:-1:-1;;;18466:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;18445:111;;;::::0;-1:-1:-1;;;;;18445:111:0;;18244:2:2;18445:111:0::1;::::0;::::1;18226:21:2::0;18283:2;18263:18;;;18256:30;18322:24;18302:18;;;18295:52;18364:18;;18445:111:0::1;18042:346:2::0;18445:111:0::1;18566:43;18612:51:::0;;;:21:::1;:51;::::0;;;;18716:18;;18612:51;;18566:43;18612:51;;-1:-1:-1;;;;;18716:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;18673:61;;18749:9;18744:731;18764:16:::0;;::::1;18744:731;;;18955:1;18826:10;:38;;:50;18865:7;;18873:1;18865:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18826:50:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;18826:50:0;;;18877:10:::1;18826:62:::0;;;;;;;:98:::1;;:126:::0;;::::1;::::0;::::1;:::i;:::-;;;:130;18801:217;;;::::0;-1:-1:-1;;;;;18801:217:0;;19037:2:2;18801:217:0::1;::::0;::::1;19019:21:2::0;19076:2;19056:18;;;19049:30;19115;19095:18;;;19088:58;19163:18;;18801:217:0::1;18835:352:2::0;18801:217:0::1;19057:10;:17;;:29;19075:7;;19083:1;19075:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19057:29:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;19057:29:0;;;19087:10:::1;19057:41:::0;;;;;;;:58;;::::1;::::0;::::1;:::i;:::-;:63:::0;;-1:-1:-1;19032:155:0::1;;;;-1:-1:-1::0;;;;;19032:155:0::1;;;;;;;:::i;:::-;19255:5;;19261:1;19255:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;19201:10;:17;;:29;19219:7;;19227:1;19219:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19201:29:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;19201:29:0;;;19231:10:::1;19201:41:::0;;;;;;;:62:::1;::::0;:41;;:62:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;19315:6:0::1;19339:5;19362:7;;19370:1;19362:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;19390;19442:5;;19448:1;19442:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;19282:182;;;;;;;;;;;:::i;:::-;;;;;;;;18782:3:::0;::::1;::::0;::::1;:::i;:::-;;;;18744:731;;;;17997:1484;;;3597:200:::0;17823:1658;;;;;;;;:::o;9664:595::-;4099:21;;;;:12;:21;;;;;:29;9793:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;9813:6;;9821:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;9846:16:::0;9838:51:::2;;;::::0;-1:-1:-1;;;;;9838:51:0;;20950:2:2;9838:51:0::2;::::0;::::2;20932:21:2::0;20989:2;20969:18;;;20962:30;21028:24;21008:18;;;21001:52;21070:18;;9838:51:0::2;20748:346:2::0;9838:51:0::2;9899:26;9928:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;9928:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;;;;;;;;;;9899:54;;9968:9;9963:191;9983:16:::0;;::::2;9963:191;;;10088:1;10045:8;:19;;:29;10065:5;;10071:1;10065:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10045:29:0::2;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;10045:29:0;:40;;::::2;::::0;::::2;:::i;:::-;;;:44;10020:123;;;::::0;-1:-1:-1;;;;;10020:123:0;;21301:2:2;10020:123:0::2;::::0;::::2;21283:21:2::0;21340:2;21320:18;;;21313:30;21379:22;21359:18;;;21352:50;21419:18;;10020:123:0::2;21099:344:2::0;10020:123:0::2;10001:3:::0;::::2;::::0;::::2;:::i;:::-;;;;9963:191;;;-1:-1:-1::0;10163:37:0;;-1:-1:-1;;10163:37:0::2;-1:-1:-1::0;;;10163:37:0::2;::::0;;10215::::2;::::0;::::2;::::0;::::2;::::0;10231:6;;10239:5;;10246;;;;10215:37:::2;:::i;8941:508::-:0;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3636:19:0;;;:10;:19;;;;;;3686:13;;3636:19;;9049:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;9128:22:::1;9153:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;9153:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;9200:242:::1;::::0;;::::1;::::0;::::1;::::0;;9153:25:::1;::::0;;::::1;::::0;;::::1;9251:17:::0;;-1:-1:-1;;;;;9251:17:0;::::1;9200:242:::0;;9293:14:::1;::::0;;::::1;::::0;::::1;9200:242:::0;;::::1;::::0;;;;9332:14;;::::1;::::0;;::::1;9200:242:::0;;;;;;;9153:25;-1:-1:-1;9200:242:0;;;;;9376:11:::1;-1:-1:-1::0;;;9376:11:0;;::::1;;9368:20;::::0;::::1;;;;;;:::i;:::-;9200:242;;;;;;9415:4;:16;;9200:242;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;9200:242:0::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;::::0;9188:254:::1;;9118:331;3597:200:::0;8941:508;;;;;;:::o;12433:695::-;4099:21;;;;:12;:21;;;;;:29;12568:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;12588:6;;12596:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;12613:26:::2;12642:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;12642:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;-1:-1:-1;12717:23:0::2;12698:15:::0;;-1:-1:-1;;;12698:15:0;::::2;;;:42;::::0;::::2;;;;;;:::i;:::-;;12677:116;;;::::0;-1:-1:-1;;;;;12677:116:0;;22480:2:2;12677:116:0::2;::::0;::::2;22462:21:2::0;22519:2;22499:18;;;22492:30;22558:29;22538:18;;;22531:57;22605:18;;12677:116:0::2;22278:351:2::0;12677:116:0::2;12803:41:::0;;-1:-1:-1;;12803:41:0::2;::::0;::::2;::::0;;-1:-1:-1;12854:207:0::2;12874:24:::0;;::::2;12854:207;;;12995:1;12944:8;:19;;:37;12964:13;;12978:1;12964:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12944:37:0::2;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;12944:37:0;:48;;::::2;::::0;::::2;:::i;:::-;;;:52;12919:131;;;::::0;-1:-1:-1;;;;;12919:131:0;;21301:2:2;12919:131:0::2;::::0;::::2;21283:21:2::0;21340:2;21320:18;;;21313:30;21379:22;21359:18;;;21352:50;21419:18;;12919:131:0::2;21099:344:2::0;12919:131:0::2;12900:3:::0;::::2;::::0;::::2;:::i;:::-;;;;12854:207;;;;13075:46;13092:6;13100:5;13107:13;;13075:46;;;;;;;;;:::i;4581:175::-:0;4690:16;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4690:16:0;3499:1;3458:21;;;:12;:21;;;;;:29;4665:6;;-1:-1:-1;;;;;3458:29:0;3450:71;;;;-1:-1:-1;;;;;3450:71:0;;;;;;;:::i;:::-;4729:20:::1;::::0;;;:12:::1;:20;::::0;;;;;;;;4722:27;;::::1;::::0;::::1;::::0;;;;;-1:-1:-1;;;;;4722:27:0::1;::::0;;;;::::1;::::0;;4729:20;;4722:27;::::1;::::0;::::1;::::0;::::1;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;4722:27:0;;;-1:-1:-1;;4722:27:0::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;4722:27:0::1;;::::0;;::::1;::::0;;4581:175;-1:-1:-1;;;4581:175:0:o;11291:715::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;11555:15;;11484:6;;11492:5;;3636:19;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;3869:37:::1;3909:30:::0;;;:21:::1;:30;::::0;;;;3957:12;;11523:6;;11531:5;;-1:-1:-1;;;;;3957:20:0;::::1;-1:-1:-1::0;3949:59:0::1;;;;-1:-1:-1::0;;;;;3949:59:0::1;;;;;;;:::i;:::-;11586:37:::2;11626:29:::0;;;:21:::2;:29;::::0;;;;11673:12;;-1:-1:-1;;;;;11673:21:0;::::2;-1:-1:-1::0;11673:21:0::2;11665:60;;;;-1:-1:-1::0;;;;;11665:60:0::2;;;;;;;:::i;:::-;11735:34;11772:5;11778;-1:-1:-1::0;;;;;11772:12:0::2;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;::::2;::::0;;::::2;;::::0;-1:-1:-1;11833:7:0;-1:-1:-1;;;;;11820:28:0;::::2;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11820:28:0::2;;;;;;;;;;;;;;;;;11794:54;;11863:9;11858:118;11878:18:::0;;::::2;11858:118;;;11931:4;:11;;:23;11943:7;;11951:1;11943:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11931:23:0::2;-1:-1:-1::0;;;;;11931:23:0::2;;;;;;;;;;;;:33;11955:8;-1:-1:-1::0;;;;;11931:33:0::2;-1:-1:-1::0;;;;;11931:33:0::2;;;;;;;;;;;;11917:48;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;:7;11925:1;11917:10;;;;;;;;:::i;:::-;;;;;;:48;;;;11898:3;;;;;:::i;:::-;;;;11858:118;;;-1:-1:-1::0;11992:7:0;11291:715;-1:-1:-1;;;;;;;;;;;;;;11291:715:0:o;7395:778::-;7584:4;3458:21;;;:12;:21;;;;;:29;7540:6;;-1:-1:-1;;;;;3458:29:0;3450:71;;;;-1:-1:-1;;;;;3450:71:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;7560:6;;7568:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;7600:26:::2;7629:18:::0;;;:10:::2;:18;::::0;;;;7694:13;;7629:18;;7600:26;7629:18;;7694:17:::2;::::0;7710:1:::2;::::0;7694:17:::2;:::i;:::-;7687:25;;;;;;;;:::i;:::-;;;;;;;;;;;7657:55;;7764:5;-1:-1:-1::0;;;;;7743:26:0::2;7759:1;7743:6;:13;;;;:17;;;;:::i;:::-;:26;:85;;;;-1:-1:-1::0;7809:19:0::2;7789:16:::0;;-1:-1:-1;;;7789:16:0;::::2;;;:39;::::0;::::2;;;;;;:::i;:::-;;7743:85;7722:153;;;::::0;-1:-1:-1;;;;;7722:153:0;;23380:2:2;7722:153:0::2;::::0;::::2;23362:21:2::0;23419:2;23399:18;;;23392:30;23458:23;23438:18;;;23431:51;23499:18;;7722:153:0::2;23178:345:2::0;7722:153:0::2;7927:10;7906:32;::::0;;;:20:::2;::::0;::::2;:32;::::0;;;;:43;;::::2;::::0;::::2;:::i;:::-;:48:::0;;-1:-1:-1;7885:136:0::2;;;::::0;-1:-1:-1;;;;;7885:136:0;;23730:2:2;7885:136:0::2;::::0;::::2;23712:21:2::0;23769:2;23749:18;;;23742:30;23808:34;23788:18;;;23781:62;23879:11;23859:18;;;23852:39;23908:19;;7885:136:0::2;23528:405:2::0;7885:136:0::2;8066:31;::::0;;;::::2;;::::0;::::2;::::0;;::::2;;::::0;;;;;;;;::::2;::::0;;;;;;;;8082:3;;;;;;8066:31;;8082:3;;;;8066:31;::::2;;::::0;::::2;::::0;;;;-1:-1:-1;;;8066:31:0;;;-1:-1:-1;8066:31:0::2;::::0;;::::2;;::::0;::::2;::::0;;::::2;::::0;::::2;::::0;;;;;;;;;;;;::::2;::::0;;8092:3;;;;;;8066:31;::::2;8092:3:::0;;;;8066:31;::::2;;::::0;::::2;::::0;;;-1:-1:-1;8066:31:0;;;;-1:-1:-1;;8052:10:0::2;8031:32:::0;;:20:::2;::::0;::::2;:32;::::0;;;;;;;:66;;;;:32;;-1:-1:-1;8031:66:0::2;::::0;:32;;:66;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;8031:66:0::2;::::0;;::::2;::::0;;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;;;8107:21:0::2;;:38:::0;;::::2;::::0;;::::2;::::0;;-1:-1:-1;8107:38:0;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;;8107:38:0::2;8134:10;8107:38;::::0;;;-1:-1:-1;;3597:200:0::1;3531:1;;7395:778:::0;;;;;;;;;:::o;5055:896::-;5200:14;5226:15;5278:12;5292:10;5304:7;;5313:10;5325:8;;5267:67;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;5267:67:0;;;;;;;5244:100;;5267:67;5244:100;;;;5354:33;5390:10;;:34;;;5413:10;5390:34;;;2493:74:2;5244:100:0;;-1:-1:-1;5354:33:0;-1:-1:-1;;;;;5390:10:0;;;;:22;;2466:18:2;;5390:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5390:34:0;;;;;;;;;;;;:::i;:::-;5354:70;;5458:210;;;;;;;;5520:10;-1:-1:-1;;;;;5458:210:0;;;;;5489:4;:8;;;5458:210;;;;5553:7;;5458:210;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5458:210:0;;;-1:-1:-1;5458:210:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5620:8;;;;;;5458:210;;5620:8;;;;5458:210;;;;;;;;-1:-1:-1;5458:210:0;;;-1:-1:-1;;;5458:210:0;;;;;;;5434:21;;;:12;:21;;;;;:234;;;;-1:-1:-1;;5434:234:0;-1:-1:-1;;;;;5434:234:0;;;;;;;;;;;;:21;;:234;;-1:-1:-1;5434:234:0;;;;;;;;:::i;:::-;-1:-1:-1;5434:234:0;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5434:234:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5434:234:0;;;;;;;;;;;;-1:-1:-1;;5434:234:0;-1:-1:-1;;;;;5434:234:0;;;;;;;;;-1:-1:-1;5733:18:0;;;:10;:18;;;;;;5761:13;;-1:-1:-1;5761:13:0;;;;;;;5880:8;;5789:155;;5733:18;;-1:-1:-1;5733:18:0;;5814:10;;5789:155;;;;5733:18;;5859:7;;;;5902:10;;5926:8;;;;5789:155;:::i;:::-;;;;;;;;5216:735;;;5055:896;;;;;;;:::o;24230:127::-;3350:5;;-1:-1:-1;;;;;3350:5:0;3336:10;:19;3328:51;;;;-1:-1:-1;;;;;3328:51:0;;;;;;;:::i;:::-;24308:5:::1;::::0;24299:25:::1;::::0;-1:-1:-1;;;;;24299:25:0;;::::1;::::0;24308:5:::1;::::0;24299:25:::1;::::0;24308:5:::1;::::0;24299:25:::1;24334:5;:16:::0;;-1:-1:-1;;24334:16:0::1;-1:-1:-1::0;;;;;24334:16:0;;;::::1;::::0;;;::::1;::::0;;24230:127::o;13364:477::-;4099:21;;;;:12;:21;;;;;:29;13499:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;13519:6;;13527:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;13544:26:::2;13573:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;13573:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;-1:-1:-1;13648:19:0::2;13629:15:::0;;-1:-1:-1;;;13629:15:0;::::2;;;:38;::::0;::::2;;;;;;:::i;:::-;;13608:114;;;::::0;-1:-1:-1;;;;;13608:114:0;;27579:2:2;13608:114:0::2;::::0;::::2;27561:21:2::0;27618:2;27598:18;;;27591:30;27657:31;27637:18;;;27630:59;27706:18;;13608:114:0::2;27377:353:2::0;13608:114:0::2;13732:41:::0;;-1:-1:-1;;13732:41:0::2;::::0;::::2;::::0;;13788:46:::2;::::0;::::2;::::0;::::2;::::0;13805:6;;13813:5;;13820:13;;;;13788:46:::2;:::i;15887:1685::-:0;3607:26;3636:19;;;:10;:19;;;;;3686:13;;16068:6;;16076:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;16114:42;;::::1;16093:144;;;::::0;-1:-1:-1;;;;;16093:144:0;;27937:2:2;16093:144:0::1;::::0;::::1;27919:21:2::0;27976:2;27956:18;;;27949:30;28015:34;27995:18;;;27988:62;28086:25;28066:18;;;28059:53;28129:19;;16093:144:0::1;27735:419:2::0;16093:144:0::1;16252:9;16247:285;16267:26:::0;;::::1;16247:285;;;16367:1;16339:15;;16355:1;16339:18;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:25;;:29;:102;;;;-1:-1:-1::0;16421:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;16421:20:0::1;16392:15:::0;;16408:1;16392:18;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:25;;:49;;16339:102;16314:207;;;;-1:-1:-1::0;;;;;16314:207:0::1;;;;;;;:::i;:::-;16295:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16247:285;;;-1:-1:-1::0;16541:26:0::1;16570:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;16570:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;16645:19:0::1;16626:15:::0;;-1:-1:-1;;;16626:15:0;::::1;;;:38;::::0;::::1;;;;;;:::i;:::-;;16605:112;;;::::0;-1:-1:-1;;;;;16605:112:0;;28361:2:2;16605:112:0::1;::::0;::::1;28343:21:2::0;28400:2;28380:18;;;28373:30;28439:29;28419:18;;;28412:57;28486:18;;16605:112:0::1;28159:351:2::0;16605:112:0::1;16727:43;16773:51:::0;;;:21:::1;:51;::::0;;;;16877:18;;16773:51;;16727:43;16773:51;;-1:-1:-1;;;;;16877:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;16834:61;;16910:9;16905:661;16925:26:::0;;::::1;16905:661;;;17036:10;16997:50;::::0;;;:38:::1;::::0;::::1;:50;::::0;;;;;17048:9;;17058:1;17048:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16997:64:0::1;-1:-1:-1::0;;;;;16997:64:0::1;;;;;;;;;;;;:100;;:128;;;;;:::i;:::-;:133:::0;;-1:-1:-1;16972:230:0::1;;;;-1:-1:-1::0;;;;;16972:230:0::1;;;;;;;:::i;:::-;17290:15;;17323:1;17290:48;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;17247:10;17216:42;::::0;;;:30:::1;::::0;::::1;:42;::::0;;;;;17259:9;;17269:1;17259:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;17216:56:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;17216:56:0;:122:::1;::::0;:71:::1;::::0;;::::1;::::0;:122:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;17390:6:0::1;17414:5;17437:10;17465:9;;17475:1;17465:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;17523:15;;17539:1;17523:18;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;17357:198;;;;;;;;;;;:::i;:::-;;;;;;;;16953:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16905:661;;23666:125:::0;3350:5;;-1:-1:-1;;;;;3350:5:0;3336:10;:19;3328:51;;;;-1:-1:-1;;;;;3328:51:0;;;;;;;:::i;:::-;23747:25:::1;:37:::0;;-1:-1:-1;;23747:37:0::1;-1:-1:-1::0;;;;;23747:37:0;;;::::1;::::0;;;::::1;::::0;;23666:125::o;21795:1865::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;21972:6;;21980:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;22018:39;;::::1;21997:138;;;::::0;-1:-1:-1;;;;;21997:138:0;;30011:2:2;21997:138:0::1;::::0;::::1;29993:21:2::0;30050:2;30030:18;;;30023:30;30089:34;30069:18;;;30062:62;30160:22;30140:18;;;30133:50;30200:19;;21997:138:0::1;29809:416:2::0;21997:138:0::1;22150:9;22145:282;22165:25:::0;;::::1;22145:282;;;22263:1;22236:14;;22251:1;22236:17;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:24;;:28;:100;;;;-1:-1:-1::0;22316:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;22316:20:0::1;22288:14:::0;;22303:1;22288:17;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:24;;:48;;22236:100;22211:205;;;;-1:-1:-1::0;;;;;22211:205:0::1;;;;;;;:::i;:::-;22192:3:::0;::::1;::::0;::::1;:::i;:::-;;;;22145:282;;;-1:-1:-1::0;22436:26:0::1;22465:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;22465:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;22521:15:0;;-1:-1:-1;;;22521:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;22500:111;;;::::0;-1:-1:-1;;;;;22500:111:0;;18244:2:2;22500:111:0::1;::::0;::::1;18226:21:2::0;18283:2;18263:18;;;18256:30;18322:24;18302:18;;;18295:52;18364:18;;22500:111:0::1;18042:346:2::0;22500:111:0::1;22621:43;22667:51:::0;;;:21:::1;:51;::::0;;;;22771:18;;22667:51;;22621:43;22667:51;;-1:-1:-1;;;;;22771:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;22728:61;;22804:9;22799:855;22819:25:::0;;::::1;22799:855;;;23028:1;22890:10;:38;;:50;22929:7;;22937:1;22929:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;22890:50:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;22890:50:0;;;22941:10:::1;22890:62:::0;;;;;;;:107:::1;;:135:::0;;::::1;::::0;::::1;:::i;:::-;;;:139;22865:226;;;::::0;-1:-1:-1;;;;;22865:226:0;;19037:2:2;22865:226:0::1;::::0;::::1;19019:21:2::0;19076:2;19056:18;;;19049:30;19115;19095:18;;;19088:58;19163:18;;22865:226:0::1;18835:352:2::0;22865:226:0::1;23130:10;:38;;:50;23169:7;;23177:1;23169:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23130:50:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;23130:50:0;;;23181:10:::1;23130:62:::0;;;;;;;:98:::1;;:126:::0;;::::1;::::0;::::1;:::i;:::-;:131:::0;;-1:-1:-1;23105:223:0::1;;;;-1:-1:-1::0;;;;;23105:223:0::1;;;;;;;:::i;:::-;23414:14;;23429:1;23414:17;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;23342:10;:30;;:42;23373:7;;23381:1;23373:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23342:42:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;23342:42:0;;;23385:10:::1;23342:54:::0;;;;;;;:89:::1;::::0;:69:::1;::::0;;::::1;::::0;:89:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;23483:6:0::1;23507:5;23530:7;;23538:1;23530:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;23558;23612:14;;23627:1;23612:17;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;23450:193;;;;;;;;;;;:::i;:::-;;;;;;;;22846:3:::0;::::1;::::0;::::1;:::i;:::-;;;;22799:855;;23797:116:::0;3350:5;;-1:-1:-1;;;;;3350:5:0;3336:10;:19;3328:51;;;;-1:-1:-1;;;;;3328:51:0;;;;;;;:::i;:::-;23874:20:::1;:32:::0;;-1:-1:-1;;;;;23874:32:0;;::::1;::::0;::::1;-1:-1:-1::0;;23874:32:0;;::::1;::::0;;;::::1;::::0;;23797:116::o;8276:493::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;8448:18;;8424:6;;8432:5;;3636:19;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;8478:29:::1;8526:14:::0;-1:-1:-1;;;;;8510:38:0;::::1;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;8510:38:0::1;;;;;;;;;;;;;;;;8478:70;;8563:9;8558:178;8578:25:::0;;::::1;8558:178;;;8640:18;::::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;8640:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;:36;;:85;8694:14;;8709:1;8694:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8640:85:0::1;-1:-1:-1::0;;;;;8640:85:0::1;;;;;;;;;;;;8624:101;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;:10;8635:1;8624:13;;;;;;;;:::i;:::-;;;;;;:101;;;;8605:3;;;;;:::i;:::-;;;;8558:178;;;-1:-1:-1::0;8752:10:0;8276:493;-1:-1:-1;;;;;;;;8276:493:0:o;10696:534::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;10927:23;;10856:6;;10864:5;;3636:19;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;3869:37:::1;3909:30:::0;;;:21:::1;:30;::::0;;;;3957:12;;10895:6;;10903:5;;-1:-1:-1;;;;;3957:20:0;::::1;-1:-1:-1::0;3949:59:0::1;;;;-1:-1:-1::0;;;;;3949:59:0::1;;;;;;;:::i;:::-;10966:37:::2;11006:29:::0;;;:21:::2;:29;::::0;;;;11053:12;;-1:-1:-1;;;;;11053:21:0;::::2;-1:-1:-1::0;11053:21:0::2;11045:60;;;;-1:-1:-1::0;;;;;11045:60:0::2;;;;;;;:::i;:::-;11115:34;11152:5;11158;-1:-1:-1::0;;;;;11152:12:0::2;;;;;;;;;:::i;:::-;;;;;;;;;;;11115:49;;11187:4;:21;;:36;11209:13;-1:-1:-1::0;;;;;11187:36:0::2;-1:-1:-1::0;;;;;11187:36:0::2;;;;;;;;;;;;11174:49;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10956:274;;3859:167:::1;3789:1;;3597:200:::0;10696:534;;;;;;;:::o;19777:1742::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;19968:6;;19976:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;20014:47;;::::1;19993:154;;;::::0;-1:-1:-1;;;;;19993:154:0;;31317:2:2;19993:154:0::1;::::0;::::1;31299:21:2::0;31356:2;31336:18;;;31329:30;31395:34;31375:18;;;31368:62;31466:30;31446:18;;;31439:58;31514:19;;19993:154:0::1;31115:424:2::0;19993:154:0::1;20162:9;20157:300;20177:31:::0;;::::1;20157:300;;;20287:1;20254:20;;20275:1;20254:23;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:30;;:34;:112;;;;-1:-1:-1::0;20346:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;20346:20:0::1;20312::::0;;20333:1;20312:23;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:30;;:54;;20254:112;20229:217;;;;-1:-1:-1::0;;;;;20229:217:0::1;;;;;;;:::i;:::-;20210:3:::0;::::1;::::0;::::1;:::i;:::-;;;;20157:300;;;-1:-1:-1::0;20466:26:0::1;20495:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;20495:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;20570:19:0::1;20551:15:::0;;-1:-1:-1;;;20551:15:0;::::1;;;:38;::::0;::::1;;;;;;:::i;:::-;;20530:112;;;::::0;-1:-1:-1;;;;;20530:112:0;;28361:2:2;20530:112:0::1;::::0;::::1;28343:21:2::0;28400:2;28380:18;;;28373:30;28439:29;28419:18;;;28412:57;28486:18;;20530:112:0::1;28159:351:2::0;20530:112:0::1;20652:43;20698:51:::0;;;:21:::1;:51;::::0;;;;20802:18;;20698:51;;20652:43;20698:51;;-1:-1:-1;;;;;20802:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;20759:61;;20835:9;20830:683;20850:31:::0;;::::1;20830:683;;;20966:10;20927:50;::::0;;;:38:::1;::::0;::::1;:50;::::0;;;;;20978:9;;20988:1;20978:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20927:64:0::1;-1:-1:-1::0;;;;;20927:64:0::1;;;;;;;;;;;;:109;;:137;;;;;:::i;:::-;:142:::0;;-1:-1:-1;20902:239:0::1;;;;-1:-1:-1::0;;;;;20902:239:0::1;;;;;;;:::i;:::-;21255:20;;21276:1;21255:23;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;21186:10;21155:42;::::0;;;:30:::1;::::0;::::1;:42;::::0;;;;;21198:9;;21208:1;21198:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;21155:56:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;21155:56:0;:123:::1;::::0;:97:::1;::::0;;::::1;::::0;:123:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;21330:6:0::1;21354:5;21377:10;21405:9;;21415:1;21405:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;21465:20;;21486:1;21465:23;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;21297:205;;;;;;;;;;;:::i;:::-;;;;;;;;20883:3:::0;::::1;::::0;::::1;:::i;:::-;;;;20830:683;;14468:1131:::0;3607:26;3636:19;;;:10;:19;;;;;3686:13;;14612:6;;14620:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;14658:27;;;;;:99:::1;;-1:-1:-1::0;14732:25:0::1;::::0;-1:-1:-1;;;;;14732:25:0::1;14705:52:::0;::::1;;14658:99;14637:192;;;;-1:-1:-1::0;;;;;14637:192:0::1;;;;;;;:::i;:::-;14839:26;14868:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;14868:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;14943:23:0::1;14924:15:::0;;-1:-1:-1;;;14924:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;14903:111;;;::::0;-1:-1:-1;;;;;14903:111:0;;32636:2:2;14903:111:0::1;::::0;::::1;32618:21:2::0;32675:2;32655:18;;;32648:30;32714:24;32694:18;;;32687:52;32756:18;;14903:111:0::1;32434:346:2::0;14903:111:0::1;15024:43;15070:51:::0;;;:21:::1;:51;::::0;;;;15174:18;;15070:51;;15024:43;15070:51;;-1:-1:-1;;;;;15174:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;15251:10:::1;15223:39:::0;;15174:18:::1;::::0;;::::1;::::0;;::::1;15223:39:::0;;;;;;;;:46;;15174:18;;-1:-1:-1;15223:39:0;:46:::1;::::0;::::1;:::i;:::-;:51:::0;;-1:-1:-1;15202:143:0::1;;;::::0;-1:-1:-1;;;;;15202:143:0;;32987:2:2;15202:143:0::1;::::0;::::1;32969:21:2::0;33026:2;33006:18;;;32999:30;33065:34;33045:18;;;33038:62;33136:15;33116:18;;;33109:43;33169:19;;15202:143:0::1;32785:409:2::0;15202:143:0::1;15383:10;15355:27;:39:::0;;;::::1;::::0;;;;;;:58:::1;::::0;15397:16;;15355:58:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;15457:6:0::1;15477:5;15496:10;15528:1;15566:16;;15428:164;;;;;;;;;;;:::i;:::-;;;;;;;;14627:972;;;3597:200:::0;14468:1131;;;;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:171:2;81:20;;-1:-1:-1;;;;;130:30:2;;120:41;;110:69;;175:1;172;165:12;110:69;14:171;;;:::o;190:252::-;257:6;265;318:2;306:9;297:7;293:23;289:32;286:52;;;334:1;331;324:12;286:52;370:9;357:23;347:33;;399:37;432:2;421:9;417:18;399:37;:::i;:::-;389:47;;190:252;;;;;:::o;447:163::-;514:20;;574:10;563:22;;553:33;;543:61;;600:1;597;590:12;615:397;698:6;706;714;722;775:3;763:9;754:7;750:23;746:33;743:53;;;792:1;789;782:12;743:53;828:9;815:23;805:33;;857:37;890:2;879:9;875:18;857:37;:::i;:::-;847:47;;913:37;946:2;935:9;931:18;913:37;:::i;:::-;903:47;;969:37;1002:2;991:9;987:18;969:37;:::i;:::-;959:47;;615:397;;;;;;;:::o;1017:370::-;1080:8;1090:6;1144:3;1137:4;1129:6;1125:17;1121:27;1111:55;;1162:1;1159;1152:12;1111:55;-1:-1:-1;1185:20:2;;-1:-1:-1;;;;;1217:30:2;;1214:50;;;1260:1;1257;1250:12;1214:50;1297:4;1289:6;1285:17;1273:29;;1360:3;1353:4;1345;1337:6;1333:17;1325:6;1321:30;1317:41;1314:50;1311:70;;;1377:1;1374;1367:12;1311:70;1017:370;;;;;:::o;1392:925::-;1542:6;1550;1558;1566;1574;1582;1635:3;1623:9;1614:7;1610:23;1606:33;1603:53;;;1652:1;1649;1642:12;1603:53;1688:9;1675:23;1665:33;;1717:37;1750:2;1739:9;1735:18;1717:37;:::i;:::-;1707:47;;1805:2;1794:9;1790:18;1777:32;-1:-1:-1;;;;;1869:2:2;1861:6;1858:14;1855:34;;;1885:1;1882;1875:12;1855:34;1924:70;1986:7;1977:6;1966:9;1962:22;1924:70;:::i;:::-;2013:8;;-1:-1:-1;1898:96:2;-1:-1:-1;2101:2:2;2086:18;;2073:32;;-1:-1:-1;2117:16:2;;;2114:36;;;2146:1;2143;2136:12;2114:36;;2185:72;2249:7;2238:8;2227:9;2223:24;2185:72;:::i;:::-;1392:925;;;;-1:-1:-1;1392:925:2;;-1:-1:-1;1392:925:2;;2276:8;;1392:925;-1:-1:-1;;;1392:925:2:o;2578:577::-;2681:6;2689;2697;2705;2758:2;2746:9;2737:7;2733:23;2729:32;2726:52;;;2774:1;2771;2764:12;2726:52;2810:9;2797:23;2787:33;;2839:37;2872:2;2861:9;2857:18;2839:37;:::i;:::-;2829:47;;2927:2;2916:9;2912:18;2899:32;-1:-1:-1;;;;;2946:6:2;2943:30;2940:50;;;2986:1;2983;2976:12;2940:50;3025:70;3087:7;3078:6;3067:9;3063:22;3025:70;:::i;:::-;2578:577;;;;-1:-1:-1;3114:8:2;-1:-1:-1;;;;2578:577:2:o;3160:1174::-;3328:4;3357:2;3386;3375:9;3368:21;3427:3;3416:9;3412:19;-1:-1:-1;;;;;3477:6:2;3471:13;3467:38;3462:2;3451:9;3447:18;3440:66;3553:2;3545:6;3541:15;3535:22;3576:10;3640:2;3626:12;3622:21;3617:2;3606:9;3602:18;3595:49;3708:2;3702;3694:6;3690:15;3684:22;3680:31;3675:2;3664:9;3660:18;3653:59;;;3777:4;3771:2;3763:6;3759:15;3753:22;3749:33;3743:3;3732:9;3728:19;3721:62;3832:3;3824:6;3820:16;3814:23;3875:4;3868;3857:9;3853:20;3846:34;3900:6;3935:14;3929:21;3974:6;3966;3959:22;4012:3;4001:9;3997:19;3990:26;;4059:2;4043:14;4039:23;4025:37;;4080:1;4071:10;;4090:218;4104:6;4101:1;4098:13;4090:218;;;4169:13;;-1:-1:-1;;;;;4165:62:2;4153:75;;4283:15;;;;4126:1;4119:9;;;;;4248:12;;;;4090:218;;;-1:-1:-1;4325:3:2;3160:1174;-1:-1:-1;;;;;;3160:1174:2:o;4339:180::-;4398:6;4451:2;4439:9;4430:7;4426:23;4422:32;4419:52;;;4467:1;4464;4457:12;4419:52;-1:-1:-1;4490:23:2;;4339:180;-1:-1:-1;4339:180:2:o;4524:258::-;4596:1;4606:113;4620:6;4617:1;4614:13;4606:113;;;4696:11;;;4690:18;4677:11;;;4670:39;4642:2;4635:10;4606:113;;;4737:6;4734:1;4731:13;4728:48;;;4772:1;4763:6;4758:3;4754:16;4747:27;4728:48;;4524:258;;;:::o;4787:::-;4829:3;4867:5;4861:12;4894:6;4889:3;4882:19;4910:63;4966:6;4959:4;4954:3;4950:14;4943:4;4936:5;4932:16;4910:63;:::i;:::-;5027:2;5006:15;-1:-1:-1;;5002:29:2;4993:39;;;;5034:4;4989:50;;4787:258;-1:-1:-1;;4787:258:2:o;5050:1012::-;5219:2;5208:9;5201:21;-1:-1:-1;;;;;5268:6:2;5262:13;5258:62;5253:2;5242:9;5238:18;5231:90;5182:4;5368:2;5360:6;5356:15;5350:22;5408:4;5403:2;5392:9;5388:18;5381:32;5436:52;5483:3;5472:9;5468:19;5454:12;5436:52;:::i;:::-;5422:66;;5537:2;5529:6;5525:15;5519:22;5564:2;5560:7;5631:2;5619:9;5611:6;5607:22;5603:31;5598:2;5587:9;5583:18;5576:59;5658:41;5692:6;5676:14;5658:41;:::i;:::-;5644:55;;5754:2;5746:6;5742:15;5736:22;5730:3;5719:9;5715:19;5708:51;5808:3;5800:6;5796:16;5790:23;5768:45;;5878:2;5866:9;5858:6;5854:22;5850:31;5844:3;5833:9;5829:19;5822:60;;5905:41;5939:6;5923:14;5905:41;:::i;:::-;5891:55;;;-1:-1:-1;;;;;6006:3:2;5998:6;5994:16;5988:23;5984:48;5977:4;5966:9;5962:20;5955:78;6050:6;6042:14;;;5050:1012;;;;:::o;6371:196::-;6439:20;;-1:-1:-1;;;;;6488:54:2;;6478:65;;6468:93;;6557:1;6554;6547:12;6572:652;6684:6;6692;6700;6708;6716;6769:3;6757:9;6748:7;6744:23;6740:33;6737:53;;;6786:1;6783;6776:12;6737:53;6822:9;6809:23;6799:33;;6851:37;6884:2;6873:9;6869:18;6851:37;:::i;:::-;6841:47;;6939:2;6928:9;6924:18;6911:32;-1:-1:-1;;;;;6958:6:2;6955:30;6952:50;;;6998:1;6995;6988:12;6952:50;7037:70;7099:7;7090:6;7079:9;7075:22;7037:70;:::i;:::-;7126:8;;-1:-1:-1;7011:96:2;-1:-1:-1;7180:38:2;;-1:-1:-1;7214:2:2;7199:18;;7180:38;:::i;:::-;7170:48;;6572:652;;;;;;;;:::o;7229:1556::-;7446:2;7498:21;;;7568:13;;7471:18;;;7590:22;;;7417:4;;7446:2;7631;;7649:18;;;;7709:15;;;7694:31;;7690:40;;7753:15;;;7417:4;7796:960;7810:6;7807:1;7804:13;7796:960;;;7903:2;7899:7;7887:9;7879:6;7875:22;7871:36;7866:3;7859:49;7937:6;7931:13;7967:4;8010:2;8004:9;8041:2;8033:6;8026:18;8071:48;8115:2;8107:6;8103:15;8089:12;8071:48;:::i;:::-;8057:62;;;8168:2;8164;8160:11;8154:18;8221:6;8213;8209:19;8204:2;8196:6;8192:15;8185:44;8256:41;8290:6;8274:14;8256:41;:::i;:::-;8242:55;;;8346:2;8342;8338:11;8332:18;8399:6;8391;8387:19;8382:2;8374:6;8370:15;8363:44;8434:41;8468:6;8452:14;8434:41;:::i;:::-;8420:55;;;8498:4;8551:2;8547;8543:11;8537:18;8515:40;;8604:6;8596;8592:19;8587:2;8579:6;8575:15;8568:44;;8635:41;8669:6;8653:14;8635:41;:::i;:::-;8734:12;;;;8625:51;-1:-1:-1;;;8699:15:2;;;;7832:1;7825:9;7796:960;;;-1:-1:-1;8773:6:2;;7229:1556;-1:-1:-1;;;;;;;;7229:1556:2:o;9021:347::-;9072:8;9082:6;9136:3;9129:4;9121:6;9117:17;9113:27;9103:55;;9154:1;9151;9144:12;9103:55;-1:-1:-1;9177:20:2;;-1:-1:-1;;;;;9209:30:2;;9206:50;;;9252:1;9249;9242:12;9206:50;9289:4;9281:6;9277:17;9265:29;;9341:3;9334:4;9325:6;9317;9313:19;9309:30;9306:39;9303:59;;;9358:1;9355;9348:12;9373:858;9480:6;9488;9496;9504;9512;9520;9573:3;9561:9;9552:7;9548:23;9544:33;9541:53;;;9590:1;9587;9580:12;9541:53;9626:9;9613:23;9603:33;;9655:37;9688:2;9677:9;9673:18;9655:37;:::i;:::-;9645:47;;9743:2;9732:9;9728:18;9715:32;-1:-1:-1;;;;;9807:2:2;9799:6;9796:14;9793:34;;;9823:1;9820;9813:12;9793:34;9862:58;9912:7;9903:6;9892:9;9888:22;9862:58;:::i;:::-;9939:8;;-1:-1:-1;9836:84:2;-1:-1:-1;10027:2:2;10012:18;;9999:32;;-1:-1:-1;10043:16:2;;;10040:36;;;10072:1;10069;10062:12;10040:36;;10111:60;10163:7;10152:8;10141:9;10137:24;10111:60;:::i;10428:787::-;10529:6;10537;10545;10553;10561;10614:2;10602:9;10593:7;10589:23;10585:32;10582:52;;;10630:1;10627;10620:12;10582:52;10670:9;10657:23;-1:-1:-1;;;;;10740:2:2;10732:6;10729:14;10726:34;;;10756:1;10753;10746:12;10726:34;10795:58;10845:7;10836:6;10825:9;10821:22;10795:58;:::i;:::-;10872:8;;-1:-1:-1;10769:84:2;-1:-1:-1;10954:2:2;10939:18;;10926:32;;-1:-1:-1;11011:2:2;10996:18;;10983:32;;-1:-1:-1;11027:16:2;;;11024:36;;;11056:1;11053;11046:12;11024:36;;11095:60;11147:7;11136:8;11125:9;11121:24;11095:60;:::i;:::-;10428:787;;;;-1:-1:-1;10428:787:2;;-1:-1:-1;11174:8:2;;11069:86;10428:787;-1:-1:-1;;;10428:787:2:o;11402:186::-;11461:6;11514:2;11502:9;11493:7;11489:23;11485:32;11482:52;;;11530:1;11527;11520:12;11482:52;11553:29;11572:9;11553:29;:::i;:::-;11543:39;11402:186;-1:-1:-1;;;11402:186:2:o;11593:184::-;11651:6;11704:2;11692:9;11683:7;11679:23;11675:32;11672:52;;;11720:1;11717;11710:12;11672:52;11743:28;11761:9;11743:28;:::i;11782:1150::-;12003:2;12055:21;;;12125:13;;12028:18;;;12147:22;;;11974:4;;12003:2;12188;;12206:18;;;;12266:15;;;12251:31;;12247:40;;12310:15;;;11974:4;12353:550;12367:6;12364:1;12361:13;12353:550;;;12432:22;;;-1:-1:-1;;12428:36:2;12416:49;;12488:13;;12534:9;;12556:18;;;12601:48;12633:15;;;12534:9;12601:48;:::i;:::-;12690:11;;;12684:18;12739:19;;;12722:15;;;12715:44;12684:18;12587:62;-1:-1:-1;12782:41:2;12587:62;12684:18;12782:41;:::i;:::-;12881:12;;;;12772:51;-1:-1:-1;;;12846:15:2;;;;12389:1;12382:9;12353:550;;12937:326;13013:6;13021;13029;13082:2;13070:9;13061:7;13057:23;13053:32;13050:52;;;13098:1;13095;13088:12;13050:52;13134:9;13121:23;13111:33;;13163:38;13197:2;13186:9;13182:18;13163:38;:::i;:::-;13153:48;;13220:37;13253:2;13242:9;13238:18;13220:37;:::i;:::-;13210:47;;12937:326;;;;;:::o;13268:218::-;13415:2;13404:9;13397:21;13378:4;13435:45;13476:2;13465:9;13461:18;13453:6;13435:45;:::i;13491:549::-;13578:6;13586;13594;13602;13655:2;13643:9;13634:7;13630:23;13626:32;13623:52;;;13671:1;13668;13661:12;13623:52;13707:9;13694:23;13684:33;;13736:37;13769:2;13758:9;13754:18;13736:37;:::i;:::-;13726:47;;13824:2;13813:9;13809:18;13796:32;-1:-1:-1;;;;;13843:6:2;13840:30;13837:50;;;13883:1;13880;13873:12;13837:50;13922:58;13972:7;13963:6;13952:9;13948:22;13922:58;:::i;14045:353::-;14247:2;14229:21;;;14286:2;14266:18;;;14259:30;14325:31;14320:2;14305:18;;14298:59;14389:2;14374:18;;14045:353::o;14403:349::-;14605:2;14587:21;;;14644:2;14624:18;;;14617:30;14683:27;14678:2;14663:18;;14656:55;14743:2;14728:18;;14403:349::o;14757:184::-;-1:-1:-1;;;;;14806:1:2;14799:88;14906:4;14903:1;14896:15;14930:4;14927:1;14920:15;14946:184;-1:-1:-1;;;;;14995:1:2;14988:88;15095:4;15092:1;15085:15;15119:4;15116:1;15109:15;15411:339;15613:2;15595:21;;;15652:2;15632:18;;;15625:30;15691:17;15686:2;15671:18;;15664:45;15741:2;15726:18;;15411:339::o;16230:184::-;-1:-1:-1;;;;;16279:1:2;16272:88;16379:4;16376:1;16369:15;16403:4;16400:1;16393:15;16419:125;16459:4;16487:1;16484;16481:8;16478:34;;;16492:18;;:::i;:::-;-1:-1:-1;16529:9:2;;16419:125::o;16961:521::-;17038:4;17044:6;17104:11;17091:25;17198:2;17194:7;17183:8;17167:14;17163:29;17159:43;17139:18;17135:68;17125:96;;17217:1;17214;17207:12;17125:96;17244:33;;17296:20;;;-1:-1:-1;;;;;;17328:30:2;;17325:50;;;17371:1;17368;17361:12;17325:50;17404:4;17392:17;;-1:-1:-1;17435:14:2;17431:27;;;17421:38;;17418:58;;;17472:1;17469;17462:12;17487:410;17689:2;17671:21;;;17728:2;17708:18;;;17701:30;17767:34;17762:2;17747:18;;17740:62;17838:16;17833:2;17818:18;;17811:44;17887:3;17872:19;;17487:410::o;17902:135::-;17941:3;-1:-1:-1;;17962:17:2;;17959:43;;;17982:18;;:::i;:::-;-1:-1:-1;18029:1:2;18018:13;;17902:135::o;18393:437::-;18478:1;18468:12;;18525:1;18515:12;;;18536:61;;18590:4;18582:6;18578:17;18568:27;;18536:61;18643:2;18635:6;18632:14;18612:18;18609:38;18606:218;;;-1:-1:-1;;;;;18677:1:2;18670:88;18781:4;18778:1;18771:15;18809:4;18806:1;18799:15;18606:218;;18393:437;;;:::o;19192:397::-;19394:2;19376:21;;;19433:2;19413:18;;;19406:30;19472:34;19467:2;19452:18;;19445:62;19543:3;19538:2;19523:18;;19516:31;19579:3;19564:19;;19192:397::o;19594:266::-;19682:6;19677:3;19670:19;19734:6;19727:5;19720:4;19715:3;19711:14;19698:43;-1:-1:-1;19786:1:2;19761:16;;;19779:4;19757:27;;;19750:38;;;;19842:2;19821:15;;;-1:-1:-1;;19817:29:2;19808:39;;;19804:50;;19594:266::o;19865:878::-;20233:6;20222:9;20215:25;-1:-1:-1;;;;;20280:6:2;20276:31;20271:2;20260:9;20256:18;20249:59;20196:4;-1:-1:-1;;;;;20417:2:2;20409:6;20405:15;20400:2;20389:9;20385:18;20378:43;20469:2;20461:6;20457:15;20452:2;20441:9;20437:18;20430:43;;20510:3;20504;20493:9;20489:19;20482:32;20551:1;20545:3;20534:9;20530:19;20523:30;20590:6;20584:3;20573:9;20569:19;20562:35;20616:3;20656:2;20650:3;20639:9;20635:19;20628:31;20676:61;20733:2;20722:9;20718:18;20710:6;20702;20676:61;:::i;:::-;20668:69;19865:878;-1:-1:-1;;;;;;;;;19865:878:2:o;21448:825::-;21654:4;21702:2;21691:9;21687:18;21732:6;21721:9;21714:25;21758:2;-1:-1:-1;;;;;21800:6:2;21796:31;21791:2;21780:9;21776:18;21769:59;21864:2;21859;21848:9;21844:18;21837:30;21887:6;21917;21909;21902:22;21955:3;21944:9;21940:19;21933:26;;21982:6;21968:20;;22006:1;22016:231;22030:6;22027:1;22024:13;22016:231;;;-1:-1:-1;;;;;22095:26:2;22114:6;22095:26;:::i;:::-;22091:75;22079:88;;22222:15;;;;22187:12;;;;22052:1;22045:9;22016:231;;22634:350;22836:2;22818:21;;;22875:2;22855:18;;;22848:30;22914:28;22909:2;22894:18;;22887:56;22975:2;22960:18;;22634:350::o;22989:184::-;-1:-1:-1;;;;;23038:1:2;23031:88;23138:4;23135:1;23128:15;23162:4;23159:1;23152:15;23938:700;24239:6;24228:9;24221:25;-1:-1:-1;;;;;24286:6:2;24282:55;24277:2;24266:9;24262:18;24255:83;24374:3;24369:2;24358:9;24354:18;24347:31;24202:4;24401:62;24458:3;24447:9;24443:19;24435:6;24427;24401:62;:::i;:::-;24499:6;24494:2;24483:9;24479:18;24472:34;24555:9;24547:6;24543:22;24537:3;24526:9;24522:19;24515:51;24583:49;24625:6;24617;24609;24583:49;:::i;:::-;24575:57;23938:700;-1:-1:-1;;;;;;;;;;23938:700:2:o;24643:686::-;24697:5;24750:3;24743:4;24735:6;24731:17;24727:27;24717:55;;24768:1;24765;24758:12;24717:55;24797:6;24791:13;-1:-1:-1;;;;;24860:2:2;24856;24853:10;24850:36;;;24866:18;;:::i;:::-;24941:2;24935:9;24909:2;24995:13;;-1:-1:-1;;24991:22:2;;;25015:2;24987:31;24983:40;24971:53;;;25039:18;;;25059:22;;;25036:46;25033:72;;;25085:18;;:::i;:::-;25125:10;25121:2;25114:22;25160:2;25152:6;25145:18;25206:3;25199:4;25194:2;25186:6;25182:15;25178:26;25175:35;25172:55;;;25223:1;25220;25213:12;25172:55;25236:63;25296:2;25289:4;25281:6;25277:17;25270:4;25262:6;25258:17;25236:63;:::i;:::-;25317:6;24643:686;-1:-1:-1;;;;;;24643:686:2:o;25334:942::-;25426:6;25479:2;25467:9;25458:7;25454:23;25450:32;25447:52;;;25495:1;25492;25485:12;25447:52;25528:9;25522:16;-1:-1:-1;;;;;25598:2:2;25590:6;25587:14;25584:34;;;25614:1;25611;25604:12;25584:34;25637:22;;;;25693:4;25675:16;;;25671:27;25668:47;;;25711:1;25708;25701:12;25668:47;25744:4;25738:11;25788:4;25780:6;25776:17;25843:6;25831:10;25828:22;25823:2;25811:10;25808:18;25805:46;25802:72;;;25854:18;;:::i;:::-;25890:4;25883:24;25932:9;;25953:16;;;25950:36;;;25982:1;25979;25972:12;25950:36;26010:56;26058:7;26047:8;26043:2;26039:17;26010:56;:::i;:::-;26002:6;25995:72;;26106:2;26102;26098:11;26092:18;26135:2;26125:8;26122:16;26119:36;;;26151:1;26148;26141:12;26119:36;26188:56;26236:7;26225:8;26221:2;26217:17;26188:56;:::i;:::-;26183:2;26171:15;;26164:81;-1:-1:-1;26175:6:2;25334:942;-1:-1:-1;;;;;25334:942:2:o;26281:743::-;26602:6;26591:9;26584:25;26645:3;26640:2;26629:9;26625:18;26618:31;26565:4;26672:62;26729:3;26718:9;26714:19;26706:6;26698;26672:62;:::i;:::-;26782:9;26774:6;26770:22;26765:2;26754:9;26750:18;26743:50;26816:33;26842:6;26834;26816:33;:::i;:::-;26802:47;;26885:6;26880:2;26869:9;26865:18;26858:34;26941:9;26933:6;26929:22;26923:3;26912:9;26908:19;26901:51;26969:49;27011:6;27003;26995;26969:49;:::i;27029:343::-;27231:2;27213:21;;;27270:2;27250:18;;;27243:30;27309:21;27304:2;27289:18;;27282:49;27363:2;27348:18;;27029:343::o;28515:402::-;28717:2;28699:21;;;28756:2;28736:18;;;28729:30;28795:34;28790:2;28775:18;;28768:62;28866:8;28861:2;28846:18;;28839:36;28907:3;28892:19;;28515:402::o;28922:882::-;29290:6;29279:9;29272:25;-1:-1:-1;;;;;29337:6:2;29333:31;29328:2;29317:9;29313:18;29306:59;29253:4;-1:-1:-1;;;;;29474:2:2;29466:6;29462:15;29457:2;29446:9;29442:18;29435:43;29526:2;29518:6;29514:15;29509:2;29498:9;29494:18;29487:43;;29567:3;29561;29550:9;29546:19;29539:32;29608:1;29602:3;29591:9;29587:19;29580:30;29647:10;29641:3;29630:9;29626:19;29619:39;29677:3;29717:2;29711:3;29700:9;29696:19;29689:31;29737:61;29794:2;29783:9;29779:18;29771:6;29763;29737:61;:::i;30230:880::-;30598:6;30587:9;30580:25;-1:-1:-1;;;;;30645:6:2;30641:31;30636:2;30625:9;30621:18;30614:59;30561:4;-1:-1:-1;;;;;30782:2:2;30774:6;30770:15;30765:2;30754:9;30750:18;30743:43;30834:2;30826:6;30822:15;30817:2;30806:9;30802:18;30795:43;;30875:3;30869;30858:9;30854:19;30847:32;30916:1;30910:3;30899:9;30895:19;30888:30;30955:8;30949:3;30938:9;30934:19;30927:37;30983:3;31023:2;31017:3;31006:9;31002:19;30995:31;31043:61;31100:2;31089:9;31085:18;31077:6;31069;31043:61;:::i;31544:885::-;31912:6;31901:9;31894:25;-1:-1:-1;;;;;31959:6:2;31955:31;31950:2;31939:9;31935:18;31928:59;31875:4;-1:-1:-1;;;;;32096:2:2;32088:6;32084:15;32079:2;32068:9;32064:18;32057:43;32148:2;32140:6;32136:15;32131:2;32120:9;32116:18;32109:43;;32189:3;32183;32172:9;32168:19;32161:32;32230:2;32224:3;32213:9;32209:19;32202:31;32270:12;32264:3;32253:9;32249:19;32242:41;32302:3;32342:2;32336:3;32325:9;32321:19;32314:31;32362:61;32419:2;32408:9;32404:18;32396:6;32388;32362:61;:::i;33199:880::-;33567:6;33556:9;33549:25;-1:-1:-1;;;;;33614:6:2;33610:31;33605:2;33594:9;33590:18;33583:59;33530:4;-1:-1:-1;;;;;33751:2:2;33743:6;33739:15;33734:2;33723:9;33719:18;33712:43;33803:2;33795:6;33791:15;33786:2;33775:9;33771:18;33764:43;;33844:3;33838;33827:9;33823:19;33816:32;33885:1;33879:3;33868:9;33864:19;33857:30;33924:8;33918:3;33907:9;33903:19;33896:37;33952:3;33992:2;33986:3;33975:9;33971:19;33964:31;34012:61;34069:2;34058:9;34054:18;34046:6;34038;34012:61;:::i", + "source": "// SPDX-License-Identifier: GPL-3.0\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./Identity.sol\";\n\n/**\n * @title Delta Contract\n * @dev Delta Contract For Mpc\n */\ncontract HFLContract {\n IdentityContract public idContract;\n\n address private owner;\n enum RoundStatus {\n Started,\n Running,\n Calculating,\n Aggregating,\n Finished\n }\n mapping(bytes32 => Task) createdTasks;\n mapping(bytes32 => TaskRound[]) taskRounds;\n mapping(bytes32 => RoundModelCommitments[]) roundModelCommitments;\n uint64 private maxWeightCommitmentLength = 10485760;\n uint64 private maxSSComitmentLength = 256;\n struct RoundModelCommitments {\n mapping(address => bytes) weightCommitment;\n mapping(address => mapping(address => SSData)) ssdata;\n }\n struct Task {\n address creator;\n string creatorUrl;\n string dataSet;\n bytes32 commitment;\n string taskType;\n uint64 currentRound;\n }\n\n struct Candidate {\n bytes pk1;\n bytes pk2;\n }\n\n struct TaskRound {\n uint64 currentRound;\n uint32 maxSample;\n uint32 minSample;\n RoundStatus status;\n mapping(address => Candidate) candidates;\n address[] joinedAddrs;\n }\n\n struct ExtCallTaskRoundStruct {\n uint64 currentRound;\n uint32 maxSample;\n uint32 minSample;\n uint8 status;\n address[] joinedAddrs;\n }\n\n struct SSData {\n bytes seedPiece;\n bytes seedCommitment;\n bytes secretKeyPiece;\n bytes secretKeyMaskCommitment;\n }\n\n // event for EVM logging\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\n // triggered when task created\n event TaskCreated(\n address indexed creator,\n bytes32 taskId,\n string dataSet,\n string creatorUrl,\n bytes32 commitment,\n string taskType\n );\n // triggered when task developer call startRound\n event RoundStart(bytes32 taskId, uint64 round);\n\n // triggered when task developer call startRound\n event RoundEnd(bytes32 taskId, uint64 round);\n\n // triggered when task developer call selectCandidates\n event PartnerSelected(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when task developer call startAggregateUpload\n event AggregateStarted(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when task developer call startAggregate\n event CalculateStarted(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when client call uploadWeightCommitment , uploadSeedCommitment ,uploadSkMaskCommitment\n event ContentUploaded(\n bytes32 taskId,\n uint64 round,\n address sender,\n address reciver,\n string contentType,\n bytes content\n );\n\n // modifier to check if caller is owner\n modifier isOwner() {\n // If the first argument of 'require' evaluates to 'false', execution terminates and all\n // changes to the state and to Ether balances are reverted.\n // This used to consume all gas in old EVM versions, but not anymore.\n // It is often a good idea to use 'require' to check if functions are called correctly.\n // As a second argument, you can also provide an explanation about what went wrong.\n require(msg.sender == owner, \"Caller is not owner\");\n _;\n }\n\n modifier taskExists(bytes32 task_id) {\n require(createdTasks[task_id].creator != address(0), \"Task not exists\");\n _;\n }\n\n modifier roundExists(bytes32 task_id, uint64 round) {\n TaskRound[] storage rounds = taskRounds[task_id];\n require(\n rounds.length > 1 && rounds.length > round,\n \"this round does not exist\"\n );\n _;\n }\n\n modifier roundcmmtExists(bytes32 task_id, uint64 round) {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[task_id];\n require(cmmts.length > round, \"The Task Round Must exists\");\n _;\n }\n\n modifier taskOwner(bytes32 task_id) {\n require(\n createdTasks[task_id].creator == msg.sender,\n \"Must called by the task owner\"\n );\n _;\n }\n\n /**\n * @dev Set contract deployer as owner\n */\n constructor(IdentityContract _addr) {\n idContract = _addr;\n owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor\n emit OwnerSet(address(0), owner);\n }\n\n /**\n * @dev get task info data\n * @param taskId taskId\n */\n function getTaskData(bytes32 taskId)\n public\n view\n taskExists(taskId)\n returns (Task memory task)\n {\n task = createdTasks[taskId];\n }\n\n /**\n * @dev called by task developer, notifying all clients that a new learning task has been published\n * @param dataSet data set name (file/folder name of training data)\n * @param commitment training code hash (client validation purpose)\n * @return taskId taskId\n */\n function createTask(\n string calldata dataSet,\n bytes32 commitment,\n string calldata taskType\n ) public payable returns (bytes32 taskId) {\n bytes32 task_id = keccak256(\n abi.encode(block.number, msg.sender, dataSet, commitment, taskType)\n );\n IdentityContract.Node memory node = idContract.getNodeInfo(msg.sender);\n createdTasks[task_id] = Task({\n creatorUrl: node.url,\n creator: msg.sender,\n dataSet: dataSet,\n commitment: commitment,\n taskType: taskType,\n currentRound: 0\n });\n taskId = task_id;\n TaskRound[] storage rounds = taskRounds[taskId];\n rounds.push();\n emit TaskCreated(\n msg.sender,\n task_id,\n dataSet,\n node.url,\n commitment,\n taskType\n );\n }\n\n /**\n * @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n * @param taskId taskId\n * @param round the round to start\n */\n function startRound(\n bytes32 taskId,\n uint64 round,\n uint32 maxSample,\n uint32 minSample\n ) public taskExists(taskId) taskOwner(taskId) {\n TaskRound[] storage rounds = taskRounds[taskId];\n require(\n rounds.length == round,\n \"the round has been already started or the pre round does not exist\"\n );\n Task storage task = createdTasks[taskId];\n task.currentRound = round;\n while (rounds.length == 0 || rounds.length - 1 < round) {\n rounds.push();\n }\n rounds[round].currentRound = round;\n rounds[round].maxSample = maxSample;\n rounds[round].minSample = minSample;\n rounds[round].status = RoundStatus.Started;\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n while (cmmts.length == 0 || cmmts.length - 1 < round) {\n cmmts.push();\n }\n emit RoundStart(taskId, round);\n }\n\n /**\n * @dev called by client, join for that round of computation\n * @param taskId taskId\n * @param round the round to join\n * @param pk1 used for secure communication channel establishment\n * @param pk2 used for mask generation\n */\n function joinRound(\n bytes32 taskId,\n uint64 round,\n bytes calldata pk1,\n bytes calldata pk2\n ) public taskExists(taskId) roundExists(taskId, round) returns (bool) {\n TaskRound[] storage rounds = taskRounds[taskId];\n TaskRound storage thisRound = rounds[rounds.length - 1];\n require(\n rounds.length - 1 == round &&\n thisRound.status == RoundStatus.Started,\n \"join phase has passed\"\n );\n require(\n thisRound.candidates[msg.sender].pk1.length == 0,\n \"Cannot join the same round multiple times\"\n );\n thisRound.candidates[msg.sender] = Candidate({pk1: pk1, pk2: pk2});\n thisRound.joinedAddrs.push(msg.sender);\n return true;\n }\n\n /**\n * @dev called by anyone, get Client Pks\n * @return candidate (pk1,pk2)\n */\n function getClientPublickeys(\n bytes32 taskId,\n uint64 round,\n address[] calldata candidateAddrs\n ) public view roundExists(taskId, round) returns (Candidate[] memory) {\n Candidate[] memory candidates = new Candidate[](candidateAddrs.length);\n for (uint256 i = 0; i < candidateAddrs.length; i++) {\n candidates[i] = taskRounds[taskId][round].candidates[\n candidateAddrs[i]\n ];\n }\n return candidates;\n }\n\n /**\n * @dev getting task round infos\n * @param taskId taskId\n * @param round the round to fetch\n * @return taskround the task round infos\n */\n function getTaskRound(bytes32 taskId, uint64 round)\n public\n view\n roundExists(taskId, round)\n returns (ExtCallTaskRoundStruct memory taskround)\n {\n TaskRound storage temp = taskRounds[taskId][round];\n taskround = ExtCallTaskRoundStruct({\n currentRound: temp.currentRound,\n maxSample: temp.maxSample,\n minSample: temp.minSample,\n status: (uint8)(temp.status),\n joinedAddrs: temp.joinedAddrs\n });\n }\n\n /**\n * @dev called by task developer, randomly choose candidates to be computation nodes\n * @dev clients now should start secret sharing phase\n * @param addrs selected client addresses\n */\n function selectCandidates(\n bytes32 taskId,\n uint64 round,\n address[] calldata addrs\n ) public taskOwner(taskId) roundExists(taskId, round) {\n require(addrs.length > 0, \"Must provide addresses\");\n TaskRound storage curRound = taskRounds[taskId][round];\n for (uint256 i = 0; i < addrs.length; i++) {\n require(\n curRound.candidates[addrs[i]].pk1.length > 0,\n \"Candidate must exist\"\n );\n }\n curRound.status = RoundStatus.Running;\n emit PartnerSelected(taskId, round, addrs);\n }\n\n /**\n * @dev called by task developer, get commitments from blockchain\n * @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n * @param taskId taskId\n * @param clientaddress the client that publish the commitments\n * @param round the round of that commitment\n * @return commitment commitment data\n */\n function getResultCommitment(\n bytes32 taskId,\n address clientaddress,\n uint64 round\n )\n public\n view\n roundExists(taskId, round)\n roundcmmtExists(taskId, round)\n returns (bytes memory commitment)\n {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n require(cmmts.length >= round, \"The Task Round Must exists\");\n RoundModelCommitments storage cmmt = cmmts[round];\n commitment = cmmt.weightCommitment[clientaddress];\n }\n\n /**\n * @dev called by any participants\n */\n function getSecretSharingDatas(\n bytes32 taskId,\n uint64 round,\n address[] calldata senders,\n address receiver\n )\n public\n view\n roundExists(taskId, round)\n roundcmmtExists(taskId, round)\n returns (SSData[] memory)\n {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n require(cmmts.length >= round, \"The Task Round Must exists\");\n RoundModelCommitments storage cmmt = cmmts[round];\n SSData[] memory ssdatas = new SSData[](senders.length);\n for (uint256 i = 0; i < senders.length; i++) {\n ssdatas[i] = (cmmt.ssdata[senders[i]][receiver]);\n }\n return ssdatas;\n }\n\n /**\n * @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n * @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n * @param taskId taskId\n * @param round the task round\n * @param onlineClients clients that has transfered gradient to task developer\n */\n function startAggregate(\n bytes32 taskId,\n uint64 round,\n address[] calldata onlineClients\n ) public taskOwner(taskId) roundExists(taskId, round) {\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Calculating,\n \"Calculating has not started\"\n );\n curRound.status = RoundStatus.Aggregating;\n for (uint256 i = 0; i < onlineClients.length; i++) {\n require(\n curRound.candidates[onlineClients[i]].pk1.length > 0,\n \"Candidate must exist\"\n );\n }\n emit AggregateStarted(taskId, round, onlineClients);\n }\n\n /**\n * @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n * @param taskId taskId\n * @param round the task round\n */\n function startCalculate(\n bytes32 taskId,\n uint64 round,\n address[] calldata onlineClients\n ) public taskOwner(taskId) roundExists(taskId, round) {\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"This round is not running now\"\n );\n curRound.status = RoundStatus.Calculating;\n emit CalculateStarted(taskId, round, onlineClients);\n }\n\n /**\n * @dev called by task developer, close round\n * @param taskId taskId\n * @param round the task round\n */\n function endRound(bytes32 taskId, uint64 round)\n public\n taskOwner(taskId)\n roundExists(taskId, round)\n {\n TaskRound storage curRound = taskRounds[taskId][round];\n curRound.status = RoundStatus.Finished;\n emit RoundEnd(taskId, round);\n }\n\n /**\n * @dev called by client, upload weight commitment\n * @param taskId taskId\n * @param round the task round\n * @param resultCommitment masked model incremental commitment\n */\n function uploadResultCommitment(\n bytes32 taskId,\n uint64 round,\n bytes calldata resultCommitment\n ) public roundExists(taskId, round) {\n require(\n resultCommitment.length > 0 &&\n resultCommitment.length <= maxWeightCommitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Calculating,\n \"not in uploading phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment.weightCommitment[msg.sender].length == 0,\n \"cannot upload weightCommitment multiple times\"\n );\n commitment.weightCommitment[msg.sender] = resultCommitment;\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n address(0),\n \"WEIGHT\",\n resultCommitment\n );\n }\n\n /**\n * @dev called by client, upload secret sharing seed commitment\n * @param taskId taskId\n * @param round the task round\n * @param receivers the receiver addresses\n * @param seedCommitments seedCommitments[i] is the commitment send to receivers[i]\n */\n function uploadSeedCommitment(\n bytes32 taskId,\n uint64 round,\n address[] calldata receivers,\n bytes[] calldata seedCommitments\n ) public roundExists(taskId, round) {\n require(\n receivers.length == seedCommitments.length,\n \"receivers length is not equal to seedCommitments length\"\n );\n for (uint256 i = 0; i < seedCommitments.length; i++) {\n require(\n seedCommitments[i].length > 0 &&\n seedCommitments[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"not in secret sharing phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < seedCommitments.length; i++) {\n require(\n commitment\n .ssdata[msg.sender][receivers[i]]\n .seedCommitment\n .length == 0,\n \"cannot upload seed cmmt multiple times\"\n );\n commitment\n .ssdata[msg.sender][receivers[i]].seedCommitment = seedCommitments[\n i\n ];\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n receivers[i],\n \"SEEDCMMT\",\n seedCommitments[i]\n );\n }\n }\n\n /**\n * @dev called by client, upload secret sharing seed commitment\n * @param taskId taskId\n * @param round the task round\n * @param senders senders address\n * @param seeds seeds[i] is the seed send by senders[i]\n */\n function uploadSeed(\n bytes32 taskId,\n uint64 round,\n address[] calldata senders,\n bytes[] calldata seeds\n ) public roundExists(taskId, round) {\n require(\n senders.length == seeds.length,\n \"senders length is not equal to seeds length\"\n );\n for (uint256 i = 0; i < seeds.length; i++) {\n require(\n seeds[i].length > 0 && seeds[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Aggregating,\n \"not in upload ss phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < seeds.length; i++) {\n require(\n commitment\n .ssdata[senders[i]][msg.sender]\n .seedCommitment\n .length > 0,\n \"must upload commitment first\"\n );\n require(\n commitment.ssdata[senders[i]][msg.sender].seedPiece.length == 0,\n \"cannot upload seed multiple times\"\n );\n commitment.ssdata[senders[i]][msg.sender].seedPiece = seeds[i];\n emit ContentUploaded(\n taskId,\n round,\n senders[i],\n msg.sender,\n \"SEED\",\n seeds[i]\n );\n }\n }\n\n /**\n * @dev called by client, upload secret sharing sk commitment\n * @param taskId taskId\n * @param round the task round\n * @param receivers the receiver addresses\n * @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i]\n */\n function uploadSecretKeyCommitment(\n bytes32 taskId,\n uint64 round,\n address[] calldata receivers,\n bytes[] calldata secretKeyCommitments\n ) public roundExists(taskId, round) {\n require(\n receivers.length == secretKeyCommitments.length,\n \"receivers length is not equal to secretKeyCommitments length\"\n );\n for (uint256 i = 0; i < secretKeyCommitments.length; i++) {\n require(\n secretKeyCommitments[i].length > 0 &&\n secretKeyCommitments[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"not in secret sharing phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < secretKeyCommitments.length; i++) {\n require(\n commitment\n .ssdata[msg.sender][receivers[i]]\n .secretKeyMaskCommitment\n .length == 0,\n \"cannot upload seed cmmt multiple times\"\n );\n commitment\n .ssdata[msg.sender][receivers[i]]\n .secretKeyMaskCommitment = secretKeyCommitments[i];\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n receivers[i],\n \"SKMASKCMMT\",\n secretKeyCommitments[i]\n );\n }\n }\n\n /**\n * @dev called by client, upload secret sharing sk commitment\n * @param taskId taskId\n * @param round the task round\n * @param senders senders address\n * @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i]\n */\n function uploadSecretkeyMask(\n bytes32 taskId,\n uint64 round,\n address[] calldata senders,\n bytes[] calldata secretkeyMasks\n ) public roundExists(taskId, round) {\n require(\n senders.length == secretkeyMasks.length,\n \"senders length is not equal to secretkeyMasks length\"\n );\n for (uint256 i = 0; i < secretkeyMasks.length; i++) {\n require(\n secretkeyMasks[i].length > 0 &&\n secretkeyMasks[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Aggregating,\n \"not in upload ss phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < secretkeyMasks.length; i++) {\n require(\n commitment\n .ssdata[senders[i]][msg.sender]\n .secretKeyMaskCommitment\n .length > 0,\n \"must upload commitment first\"\n );\n require(\n commitment\n .ssdata[senders[i]][msg.sender]\n .secretKeyPiece\n .length == 0,\n \"cannot upload seed multiple times\"\n );\n commitment\n .ssdata[senders[i]][msg.sender].secretKeyPiece = secretkeyMasks[i];\n emit ContentUploaded(\n taskId,\n round,\n senders[i],\n msg.sender,\n \"SKMASK\",\n secretkeyMasks[i]\n );\n }\n }\n\n function setMaxWeightCommitmentLength(uint64 maxLength) public isOwner {\n maxWeightCommitmentLength = maxLength;\n }\n\n function setMaxSSCommitmentLength(uint64 maxLength) public isOwner {\n maxSSComitmentLength = maxLength;\n }\n\n function getMaxCommitmentsLength()\n public\n view\n returns (uint64 sslength, uint64 weightLength)\n {\n sslength = maxSSComitmentLength;\n weightLength = maxWeightCommitmentLength;\n }\n\n /**\n * @dev Change owner\n * @param newOwner address of new owner\n */\n function changeOwner(address newOwner) public isOwner {\n emit OwnerSet(owner, newOwner);\n owner = newOwner;\n }\n\n /**\n * @dev Return owner address\n * @return address of owner\n */\n function getOwner() external view returns (address) {\n return owner;\n }\n}\n", + "sourcePath": "/home/hmiao/workspace/node/contract/contracts/HFLContract.sol", "ast": { - "absolutePath": "project:/contracts/DeltaContract.sol", + "absolutePath": "project:/contracts/HFLContract.sol", "exportedSymbols": { - "DeltaContract": [ - 1663 + "HFLContract": [ + 1927 ], "IdentityContract": [ - 1929 + 2193 ] }, - "id": 1664, + "id": 1928, "license": "GPL-3.0", "nodeType": "SourceUnit", "nodes": [ @@ -20812,8 +23642,8 @@ "id": 2, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1664, - "sourceUnit": 1930, + "scope": 1928, + "sourceUnit": 2194, "src": "70:24:0", "symbolAliases": [], "unitAlias": "" @@ -20821,7 +23651,7 @@ { "abstract": false, "baseContracts": [], - "canonicalName": "DeltaContract", + "canonicalName": "HFLContract", "contractDependencies": [], "contractKind": "contract", "documentation": { @@ -20831,12 +23661,12 @@ "text": " @title Delta Contract\n @dev Delta Contract For Mpc" }, "fullyImplemented": true, - "id": 1663, + "id": 1927, "linearizedBaseContracts": [ - 1663 + 1927 ], - "name": "DeltaContract", - "nameLocation": "169:13:0", + "name": "HFLContract", + "nameLocation": "169:11:0", "nodeType": "ContractDefinition", "nodes": [ { @@ -20845,14 +23675,14 @@ "id": 6, "mutability": "mutable", "name": "idContract", - "nameLocation": "213:10:0", + "nameLocation": "211:10:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "189:34:0", + "scope": 1927, + "src": "187:34:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" }, "typeName": { @@ -20862,13 +23692,13 @@ "id": 4, "name": "IdentityContract", "nodeType": "IdentifierPath", - "referencedDeclaration": 1929, - "src": "189:16:0" + "referencedDeclaration": 2193, + "src": "187:16:0" }, - "referencedDeclaration": 1929, - "src": "189:16:0", + "referencedDeclaration": 2193, + "src": "187:16:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, @@ -20879,10 +23709,10 @@ "id": 8, "mutability": "mutable", "name": "owner", - "nameLocation": "246:5:0", + "nameLocation": "244:5:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "230:21:0", + "scope": 1927, + "src": "228:21:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -20893,7 +23723,7 @@ "id": 7, "name": "address", "nodeType": "ElementaryTypeName", - "src": "230:7:0", + "src": "228:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -20903,64 +23733,64 @@ "visibility": "private" }, { - "canonicalName": "DeltaContract.RoundStatus", + "canonicalName": "HFLContract.RoundStatus", "id": 14, "members": [ { "id": 9, "name": "Started", - "nameLocation": "284:7:0", + "nameLocation": "282:7:0", "nodeType": "EnumValue", - "src": "284:7:0" + "src": "282:7:0" }, { "id": 10, "name": "Running", - "nameLocation": "301:7:0", + "nameLocation": "299:7:0", "nodeType": "EnumValue", - "src": "301:7:0" + "src": "299:7:0" }, { "id": 11, "name": "Calculating", - "nameLocation": "318:11:0", + "nameLocation": "316:11:0", "nodeType": "EnumValue", - "src": "318:11:0" + "src": "316:11:0" }, { "id": 12, "name": "Aggregating", - "nameLocation": "339:11:0", + "nameLocation": "337:11:0", "nodeType": "EnumValue", - "src": "339:11:0" + "src": "337:11:0" }, { "id": 13, "name": "Finished", - "nameLocation": "360:8:0", + "nameLocation": "358:8:0", "nodeType": "EnumValue", - "src": "360:8:0" + "src": "358:8:0" } ], "name": "RoundStatus", - "nameLocation": "262:11:0", + "nameLocation": "260:11:0", "nodeType": "EnumDefinition", - "src": "257:117:0" + "src": "255:117:0" }, { "constant": false, "id": 19, "mutability": "mutable", "name": "createdTasks", - "nameLocation": "404:12:0", + "nameLocation": "402:12:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "379:37:0", + "scope": 1927, + "src": "377:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task)" }, "typeName": { "id": 18, @@ -20968,17 +23798,17 @@ "id": 15, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "387:7:0", + "src": "385:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "379:24:0", + "src": "377:24:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task)" }, "valueType": { "id": 17, @@ -20987,14 +23817,14 @@ "id": 16, "name": "Task", "nodeType": "IdentifierPath", - "referencedDeclaration": 60, - "src": "398:4:0" + "referencedDeclaration": 62, + "src": "396:4:0" }, - "referencedDeclaration": 60, - "src": "398:4:0", + "referencedDeclaration": 62, + "src": "396:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" } } }, @@ -21005,15 +23835,15 @@ "id": 25, "mutability": "mutable", "name": "taskRounds", - "nameLocation": "454:10:0", + "nameLocation": "452:10:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "422:42:0", + "scope": 1927, + "src": "420:42:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound[])" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" }, "typeName": { "id": 24, @@ -21021,17 +23851,17 @@ "id": 20, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "430:7:0", + "src": "428:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "422:31:0", + "src": "420:31:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound[])" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" }, "valueType": { "baseType": { @@ -21041,22 +23871,22 @@ "id": 21, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "441:9:0" + "referencedDeclaration": 85, + "src": "439:9:0" }, - "referencedDeclaration": 83, - "src": "441:9:0", + "referencedDeclaration": 85, + "src": "439:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "id": 23, "nodeType": "ArrayTypeName", - "src": "441:11:0", + "src": "439:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } } }, @@ -21067,15 +23897,15 @@ "id": 31, "mutability": "mutable", "name": "roundModelCommitments", - "nameLocation": "514:21:0", + "nameLocation": "512:21:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "470:65:0", + "scope": 1927, + "src": "468:65:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments[])" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" }, "typeName": { "id": 30, @@ -21083,17 +23913,17 @@ "id": 26, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "478:7:0", + "src": "476:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "470:43:0", + "src": "468:43:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments[])" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" }, "valueType": { "baseType": { @@ -21104,21 +23934,21 @@ "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "489:21:0" + "src": "487:21:0" }, "referencedDeclaration": 49, - "src": "489:21:0", + "src": "487:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "id": 29, "nodeType": "ArrayTypeName", - "src": "489:23:0", + "src": "487:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } } }, @@ -21129,10 +23959,10 @@ "id": 34, "mutability": "mutable", "name": "maxWeightCommitmentLength", - "nameLocation": "556:25:0", + "nameLocation": "554:25:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "541:51:0", + "scope": 1927, + "src": "539:51:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -21143,7 +23973,7 @@ "id": 32, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "541:6:0", + "src": "539:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -21158,7 +23988,7 @@ "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "584:8:0", + "src": "582:8:0", "typeDescriptions": { "typeIdentifier": "t_rational_10485760_by_1", "typeString": "int_const 10485760" @@ -21172,10 +24002,10 @@ "id": 37, "mutability": "mutable", "name": "maxSSComitmentLength", - "nameLocation": "613:20:0", + "nameLocation": "611:20:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "598:41:0", + "scope": 1927, + "src": "596:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -21186,7 +24016,7 @@ "id": 35, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "598:6:0", + "src": "596:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -21201,7 +24031,7 @@ "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "636:3:0", + "src": "634:3:0", "typeDescriptions": { "typeIdentifier": "t_rational_256_by_1", "typeString": "int_const 256" @@ -21211,7 +24041,7 @@ "visibility": "private" }, { - "canonicalName": "DeltaContract.RoundModelCommitments", + "canonicalName": "HFLContract.RoundModelCommitments", "id": 49, "members": [ { @@ -21219,10 +24049,10 @@ "id": 41, "mutability": "mutable", "name": "weightCommitment", - "nameLocation": "710:16:0", + "nameLocation": "708:16:0", "nodeType": "VariableDeclaration", "scope": 49, - "src": "684:42:0", + "src": "682:42:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21235,14 +24065,14 @@ "id": 38, "name": "address", "nodeType": "ElementaryTypeName", - "src": "692:7:0", + "src": "690:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "684:25:0", + "src": "682:25:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes)" @@ -21251,7 +24081,7 @@ "id": 39, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "703:5:0", + "src": "701:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21265,15 +24095,15 @@ "id": 48, "mutability": "mutable", "name": "ssdata", - "nameLocation": "783:6:0", + "nameLocation": "781:6:0", "nodeType": "VariableDeclaration", "scope": 49, - "src": "736:53:0", + "src": "734:53:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" }, "typeName": { "id": 47, @@ -21281,17 +24111,17 @@ "id": 42, "name": "address", "nodeType": "ElementaryTypeName", - "src": "744:7:0", + "src": "742:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "736:46:0", + "src": "734:46:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" }, "valueType": { "id": 46, @@ -21299,17 +24129,17 @@ "id": 43, "name": "address", "nodeType": "ElementaryTypeName", - "src": "763:7:0", + "src": "761:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "755:26:0", + "src": "753:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData)" }, "valueType": { "id": 45, @@ -21318,14 +24148,14 @@ "id": 44, "name": "SSData", "nodeType": "IdentifierPath", - "referencedDeclaration": 104, - "src": "774:6:0" + "referencedDeclaration": 106, + "src": "772:6:0" }, - "referencedDeclaration": 104, - "src": "774:6:0", + "referencedDeclaration": 106, + "src": "772:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage_ptr", - "typeString": "struct DeltaContract.SSData" + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" } } } @@ -21334,25 +24164,25 @@ } ], "name": "RoundModelCommitments", - "nameLocation": "652:21:0", + "nameLocation": "650:21:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "645:151:0", + "scope": 1927, + "src": "643:151:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.Task", - "id": 60, + "canonicalName": "HFLContract.Task", + "id": 62, "members": [ { "constant": false, "id": 51, "mutability": "mutable", "name": "creator", - "nameLocation": "831:7:0", + "nameLocation": "829:7:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "823:15:0", + "scope": 62, + "src": "821:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21363,7 +24193,7 @@ "id": 50, "name": "address", "nodeType": "ElementaryTypeName", - "src": "823:7:0", + "src": "821:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -21377,10 +24207,10 @@ "id": 53, "mutability": "mutable", "name": "creatorUrl", - "nameLocation": "855:10:0", + "nameLocation": "853:10:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "848:17:0", + "scope": 62, + "src": "846:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21391,7 +24221,7 @@ "id": 52, "name": "string", "nodeType": "ElementaryTypeName", - "src": "848:6:0", + "src": "846:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21404,10 +24234,10 @@ "id": 55, "mutability": "mutable", "name": "dataSet", - "nameLocation": "882:7:0", + "nameLocation": "880:7:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "875:14:0", + "scope": 62, + "src": "873:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21418,7 +24248,7 @@ "id": 54, "name": "string", "nodeType": "ElementaryTypeName", - "src": "875:6:0", + "src": "873:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21431,10 +24261,10 @@ "id": 57, "mutability": "mutable", "name": "commitment", - "nameLocation": "907:10:0", + "nameLocation": "905:10:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "899:18:0", + "scope": 62, + "src": "897:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21445,7 +24275,7 @@ "id": 56, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "899:7:0", + "src": "897:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21457,11 +24287,38 @@ "constant": false, "id": 59, "mutability": "mutable", + "name": "taskType", + "nameLocation": "932:8:0", + "nodeType": "VariableDeclaration", + "scope": 62, + "src": "925:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 58, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "925:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 61, + "mutability": "mutable", "name": "currentRound", - "nameLocation": "934:12:0", + "nameLocation": "957:12:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "927:19:0", + "scope": 62, + "src": "950:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21469,10 +24326,10 @@ "typeString": "uint64" }, "typeName": { - "id": 58, + "id": 60, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "927:6:0", + "src": "950:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -21482,25 +24339,25 @@ } ], "name": "Task", - "nameLocation": "808:4:0", + "nameLocation": "806:4:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "801:152:0", + "scope": 1927, + "src": "799:177:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.Candidate", - "id": 65, + "canonicalName": "HFLContract.Candidate", + "id": 67, "members": [ { "constant": false, - "id": 62, + "id": 64, "mutability": "mutable", "name": "pk1", - "nameLocation": "992:3:0", + "nameLocation": "1015:3:0", "nodeType": "VariableDeclaration", - "scope": 65, - "src": "986:9:0", + "scope": 67, + "src": "1009:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21508,10 +24365,10 @@ "typeString": "bytes" }, "typeName": { - "id": 61, + "id": 63, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "986:5:0", + "src": "1009:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21521,13 +24378,13 @@ }, { "constant": false, - "id": 64, + "id": 66, "mutability": "mutable", "name": "pk2", - "nameLocation": "1011:3:0", + "nameLocation": "1034:3:0", "nodeType": "VariableDeclaration", - "scope": 65, - "src": "1005:9:0", + "scope": 67, + "src": "1028:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21535,10 +24392,10 @@ "typeString": "bytes" }, "typeName": { - "id": 63, + "id": 65, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1005:5:0", + "src": "1028:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21548,25 +24405,25 @@ } ], "name": "Candidate", - "nameLocation": "966:9:0", + "nameLocation": "989:9:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "959:62:0", + "scope": 1927, + "src": "982:62:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.TaskRound", - "id": 83, + "canonicalName": "HFLContract.TaskRound", + "id": 85, "members": [ { "constant": false, - "id": 67, + "id": 69, "mutability": "mutable", "name": "currentRound", - "nameLocation": "1061:12:0", + "nameLocation": "1084:12:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1054:19:0", + "scope": 85, + "src": "1077:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21574,10 +24431,10 @@ "typeString": "uint64" }, "typeName": { - "id": 66, + "id": 68, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "1054:6:0", + "src": "1077:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -21587,13 +24444,13 @@ }, { "constant": false, - "id": 69, + "id": 71, "mutability": "mutable", "name": "maxSample", - "nameLocation": "1090:9:0", + "nameLocation": "1113:9:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1083:16:0", + "scope": 85, + "src": "1106:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21601,10 +24458,10 @@ "typeString": "uint32" }, "typeName": { - "id": 68, + "id": 70, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1083:6:0", + "src": "1106:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -21614,13 +24471,13 @@ }, { "constant": false, - "id": 71, + "id": 73, "mutability": "mutable", "name": "minSample", - "nameLocation": "1116:9:0", + "nameLocation": "1139:9:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1109:16:0", + "scope": 85, + "src": "1132:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21628,10 +24485,10 @@ "typeString": "uint32" }, "typeName": { - "id": 70, + "id": 72, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1109:6:0", + "src": "1132:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -21641,86 +24498,86 @@ }, { "constant": false, - "id": 74, + "id": 76, "mutability": "mutable", "name": "status", - "nameLocation": "1147:6:0", + "nameLocation": "1170:6:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1135:18:0", + "scope": 85, + "src": "1158:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, "typeName": { - "id": 73, + "id": 75, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 72, + "id": 74, "name": "RoundStatus", "nodeType": "IdentifierPath", "referencedDeclaration": 14, - "src": "1135:11:0" + "src": "1158:11:0" }, "referencedDeclaration": 14, - "src": "1135:11:0", + "src": "1158:11:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "visibility": "internal" }, { "constant": false, - "id": 79, + "id": 81, "mutability": "mutable", "name": "candidates", - "nameLocation": "1193:10:0", + "nameLocation": "1216:10:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1163:40:0", + "scope": 85, + "src": "1186:40:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate)" }, "typeName": { - "id": 78, + "id": 80, "keyType": { - "id": 75, + "id": 77, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1171:7:0", + "src": "1194:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1163:29:0", + "src": "1186:29:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate)" }, "valueType": { - "id": 77, + "id": 79, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 76, + "id": 78, "name": "Candidate", "nodeType": "IdentifierPath", - "referencedDeclaration": 65, - "src": "1182:9:0" + "referencedDeclaration": 67, + "src": "1205:9:0" }, - "referencedDeclaration": 65, - "src": "1182:9:0", + "referencedDeclaration": 67, + "src": "1205:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage_ptr", - "typeString": "struct DeltaContract.Candidate" + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" } } }, @@ -21728,13 +24585,13 @@ }, { "constant": false, - "id": 82, + "id": 84, "mutability": "mutable", "name": "joinedAddrs", - "nameLocation": "1223:11:0", + "nameLocation": "1246:11:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1213:21:0", + "scope": 85, + "src": "1236:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21743,19 +24600,19 @@ }, "typeName": { "baseType": { - "id": 80, + "id": 82, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1213:7:0", + "src": "1236:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 81, + "id": 83, "nodeType": "ArrayTypeName", - "src": "1213:9:0", + "src": "1236:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -21765,25 +24622,25 @@ } ], "name": "TaskRound", - "nameLocation": "1034:9:0", + "nameLocation": "1057:9:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "1027:214:0", + "scope": 1927, + "src": "1050:214:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.ExtCallTaskRoundStruct", - "id": 95, + "canonicalName": "HFLContract.ExtCallTaskRoundStruct", + "id": 97, "members": [ { "constant": false, - "id": 85, + "id": 87, "mutability": "mutable", "name": "currentRound", - "nameLocation": "1294:12:0", + "nameLocation": "1317:12:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1287:19:0", + "scope": 97, + "src": "1310:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21791,10 +24648,10 @@ "typeString": "uint64" }, "typeName": { - "id": 84, + "id": 86, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "1287:6:0", + "src": "1310:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -21804,13 +24661,13 @@ }, { "constant": false, - "id": 87, + "id": 89, "mutability": "mutable", "name": "maxSample", - "nameLocation": "1323:9:0", + "nameLocation": "1346:9:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1316:16:0", + "scope": 97, + "src": "1339:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21818,10 +24675,10 @@ "typeString": "uint32" }, "typeName": { - "id": 86, + "id": 88, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1316:6:0", + "src": "1339:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -21831,13 +24688,13 @@ }, { "constant": false, - "id": 89, + "id": 91, "mutability": "mutable", "name": "minSample", - "nameLocation": "1349:9:0", + "nameLocation": "1372:9:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1342:16:0", + "scope": 97, + "src": "1365:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21845,10 +24702,10 @@ "typeString": "uint32" }, "typeName": { - "id": 88, + "id": 90, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1342:6:0", + "src": "1365:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -21858,13 +24715,13 @@ }, { "constant": false, - "id": 91, + "id": 93, "mutability": "mutable", "name": "status", - "nameLocation": "1374:6:0", + "nameLocation": "1397:6:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1368:12:0", + "scope": 97, + "src": "1391:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21872,10 +24729,10 @@ "typeString": "uint8" }, "typeName": { - "id": 90, + "id": 92, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1368:5:0", + "src": "1391:5:0", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -21885,13 +24742,13 @@ }, { "constant": false, - "id": 94, + "id": 96, "mutability": "mutable", "name": "joinedAddrs", - "nameLocation": "1400:11:0", + "nameLocation": "1423:11:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1390:21:0", + "scope": 97, + "src": "1413:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21900,19 +24757,19 @@ }, "typeName": { "baseType": { - "id": 92, + "id": 94, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1390:7:0", + "src": "1413:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 93, + "id": 95, "nodeType": "ArrayTypeName", - "src": "1390:9:0", + "src": "1413:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -21922,25 +24779,25 @@ } ], "name": "ExtCallTaskRoundStruct", - "nameLocation": "1254:22:0", + "nameLocation": "1277:22:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "1247:171:0", + "scope": 1927, + "src": "1270:171:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.SSData", - "id": 104, + "canonicalName": "HFLContract.SSData", + "id": 106, "members": [ { "constant": false, - "id": 97, + "id": 99, "mutability": "mutable", "name": "seedPiece", - "nameLocation": "1454:9:0", + "nameLocation": "1477:9:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1448:15:0", + "scope": 106, + "src": "1471:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21948,10 +24805,10 @@ "typeString": "bytes" }, "typeName": { - "id": 96, + "id": 98, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1448:5:0", + "src": "1471:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21961,13 +24818,13 @@ }, { "constant": false, - "id": 99, + "id": 101, "mutability": "mutable", "name": "seedCommitment", - "nameLocation": "1479:14:0", + "nameLocation": "1502:14:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1473:20:0", + "scope": 106, + "src": "1496:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21975,10 +24832,10 @@ "typeString": "bytes" }, "typeName": { - "id": 98, + "id": 100, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1473:5:0", + "src": "1496:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21988,13 +24845,13 @@ }, { "constant": false, - "id": 101, + "id": 103, "mutability": "mutable", "name": "secretKeyPiece", - "nameLocation": "1509:14:0", + "nameLocation": "1532:14:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1503:20:0", + "scope": 106, + "src": "1526:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22002,10 +24859,10 @@ "typeString": "bytes" }, "typeName": { - "id": 100, + "id": 102, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1503:5:0", + "src": "1526:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -22015,13 +24872,13 @@ }, { "constant": false, - "id": 103, + "id": 105, "mutability": "mutable", "name": "secretKeyMaskCommitment", - "nameLocation": "1539:23:0", + "nameLocation": "1562:23:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1533:29:0", + "scope": 106, + "src": "1556:29:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22029,10 +24886,10 @@ "typeString": "bytes" }, "typeName": { - "id": 102, + "id": 104, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1533:5:0", + "src": "1556:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -22042,32 +24899,32 @@ } ], "name": "SSData", - "nameLocation": "1431:6:0", + "nameLocation": "1454:6:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "1424:145:0", + "scope": 1927, + "src": "1447:145:0", "visibility": "public" }, { "anonymous": false, - "id": 110, + "id": 112, "name": "OwnerSet", - "nameLocation": "1610:8:0", + "nameLocation": "1633:8:0", "nodeType": "EventDefinition", "parameters": { - "id": 109, + "id": 111, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 106, + "id": 108, "indexed": true, "mutability": "mutable", "name": "oldOwner", - "nameLocation": "1635:8:0", + "nameLocation": "1658:8:0", "nodeType": "VariableDeclaration", - "scope": 110, - "src": "1619:24:0", + "scope": 112, + "src": "1642:24:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22075,10 +24932,10 @@ "typeString": "address" }, "typeName": { - "id": 105, + "id": 107, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1619:7:0", + "src": "1642:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22089,14 +24946,14 @@ }, { "constant": false, - "id": 108, + "id": 110, "indexed": true, "mutability": "mutable", "name": "newOwner", - "nameLocation": "1661:8:0", + "nameLocation": "1684:8:0", "nodeType": "VariableDeclaration", - "scope": 110, - "src": "1645:24:0", + "scope": 112, + "src": "1668:24:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22104,10 +24961,10 @@ "typeString": "address" }, "typeName": { - "id": 107, + "id": 109, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1645:7:0", + "src": "1668:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22117,30 +24974,30 @@ "visibility": "internal" } ], - "src": "1618:52:0" + "src": "1641:52:0" }, - "src": "1604:67:0" + "src": "1627:67:0" }, { "anonymous": false, - "id": 122, + "id": 126, "name": "TaskCreated", - "nameLocation": "1717:11:0", + "nameLocation": "1740:11:0", "nodeType": "EventDefinition", "parameters": { - "id": 121, + "id": 125, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 112, + "id": 114, "indexed": true, "mutability": "mutable", "name": "creator", - "nameLocation": "1754:7:0", + "nameLocation": "1777:7:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1738:23:0", + "scope": 126, + "src": "1761:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22148,10 +25005,10 @@ "typeString": "address" }, "typeName": { - "id": 111, + "id": 113, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1738:7:0", + "src": "1761:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22162,14 +25019,14 @@ }, { "constant": false, - "id": 114, + "id": 116, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "1779:6:0", + "nameLocation": "1802:6:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1771:14:0", + "scope": 126, + "src": "1794:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22177,10 +25034,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 113, + "id": 115, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1771:7:0", + "src": "1794:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22190,14 +25047,14 @@ }, { "constant": false, - "id": 116, + "id": 118, "indexed": false, "mutability": "mutable", "name": "dataSet", - "nameLocation": "1802:7:0", + "nameLocation": "1825:7:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1795:14:0", + "scope": 126, + "src": "1818:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22205,10 +25062,10 @@ "typeString": "string" }, "typeName": { - "id": 115, + "id": 117, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1795:6:0", + "src": "1818:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22218,14 +25075,14 @@ }, { "constant": false, - "id": 118, + "id": 120, "indexed": false, "mutability": "mutable", "name": "creatorUrl", - "nameLocation": "1826:10:0", + "nameLocation": "1849:10:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1819:17:0", + "scope": 126, + "src": "1842:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22233,10 +25090,10 @@ "typeString": "string" }, "typeName": { - "id": 117, + "id": 119, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1819:6:0", + "src": "1842:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22246,14 +25103,14 @@ }, { "constant": false, - "id": 120, + "id": 122, "indexed": false, "mutability": "mutable", "name": "commitment", - "nameLocation": "1854:10:0", + "nameLocation": "1877:10:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1846:18:0", + "scope": 126, + "src": "1869:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22261,42 +25118,70 @@ "typeString": "bytes32" }, "typeName": { - "id": 119, + "id": 121, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1846:7:0", + "src": "1869:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" + }, + { + "constant": false, + "id": 124, + "indexed": false, + "mutability": "mutable", + "name": "taskType", + "nameLocation": "1904:8:0", + "nodeType": "VariableDeclaration", + "scope": 126, + "src": "1897:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 123, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1897:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" } ], - "src": "1728:142:0" + "src": "1751:167:0" }, - "src": "1711:160:0" + "src": "1734:185:0" }, { "anonymous": false, - "id": 128, + "id": 132, "name": "RoundStart", - "nameLocation": "1935:10:0", + "nameLocation": "1983:10:0", "nodeType": "EventDefinition", "parameters": { - "id": 127, + "id": 131, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 124, + "id": 128, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "1954:6:0", + "nameLocation": "2002:6:0", "nodeType": "VariableDeclaration", - "scope": 128, - "src": "1946:14:0", + "scope": 132, + "src": "1994:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22304,10 +25189,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 123, + "id": 127, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1946:7:0", + "src": "1994:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22317,14 +25202,14 @@ }, { "constant": false, - "id": 126, + "id": 130, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "1969:5:0", + "nameLocation": "2017:5:0", "nodeType": "VariableDeclaration", - "scope": 128, - "src": "1962:12:0", + "scope": 132, + "src": "2010:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22332,10 +25217,10 @@ "typeString": "uint64" }, "typeName": { - "id": 125, + "id": 129, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "1962:6:0", + "src": "2010:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -22344,30 +25229,30 @@ "visibility": "internal" } ], - "src": "1945:30:0" + "src": "1993:30:0" }, - "src": "1929:47:0" + "src": "1977:47:0" }, { "anonymous": false, - "id": 134, + "id": 138, "name": "RoundEnd", - "nameLocation": "2041:8:0", + "nameLocation": "2089:8:0", "nodeType": "EventDefinition", "parameters": { - "id": 133, + "id": 137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 130, + "id": 134, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2058:6:0", + "nameLocation": "2106:6:0", "nodeType": "VariableDeclaration", - "scope": 134, - "src": "2050:14:0", + "scope": 138, + "src": "2098:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22375,10 +25260,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 129, + "id": 133, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2050:7:0", + "src": "2098:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22388,14 +25273,14 @@ }, { "constant": false, - "id": 132, + "id": 136, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2073:5:0", + "nameLocation": "2121:5:0", "nodeType": "VariableDeclaration", - "scope": 134, - "src": "2066:12:0", + "scope": 138, + "src": "2114:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22403,10 +25288,10 @@ "typeString": "uint64" }, "typeName": { - "id": 131, + "id": 135, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2066:6:0", + "src": "2114:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -22415,30 +25300,30 @@ "visibility": "internal" } ], - "src": "2049:30:0" + "src": "2097:30:0" }, - "src": "2035:45:0" + "src": "2083:45:0" }, { "anonymous": false, - "id": 143, + "id": 147, "name": "PartnerSelected", - "nameLocation": "2151:15:0", + "nameLocation": "2199:15:0", "nodeType": "EventDefinition", "parameters": { - "id": 142, + "id": 146, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 136, + "id": 140, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2175:6:0", + "nameLocation": "2223:6:0", "nodeType": "VariableDeclaration", - "scope": 143, - "src": "2167:14:0", + "scope": 147, + "src": "2215:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22446,10 +25331,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 135, + "id": 139, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2167:7:0", + "src": "2215:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22459,14 +25344,14 @@ }, { "constant": false, - "id": 138, + "id": 142, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2190:5:0", + "nameLocation": "2238:5:0", "nodeType": "VariableDeclaration", - "scope": 143, - "src": "2183:12:0", + "scope": 147, + "src": "2231:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22474,10 +25359,10 @@ "typeString": "uint64" }, "typeName": { - "id": 137, + "id": 141, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2183:6:0", + "src": "2231:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -22487,14 +25372,14 @@ }, { "constant": false, - "id": 141, + "id": 145, "indexed": false, "mutability": "mutable", "name": "addrs", - "nameLocation": "2207:5:0", + "nameLocation": "2255:5:0", "nodeType": "VariableDeclaration", - "scope": 143, - "src": "2197:15:0", + "scope": 147, + "src": "2245:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22503,19 +25388,19 @@ }, "typeName": { "baseType": { - "id": 139, + "id": 143, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2197:7:0", + "src": "2245:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 140, + "id": 144, "nodeType": "ArrayTypeName", - "src": "2197:9:0", + "src": "2245:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -22524,30 +25409,30 @@ "visibility": "internal" } ], - "src": "2166:47:0" + "src": "2214:47:0" }, - "src": "2145:69:0" + "src": "2193:69:0" }, { "anonymous": false, - "id": 152, + "id": 156, "name": "AggregateStarted", - "nameLocation": "2289:16:0", + "nameLocation": "2337:16:0", "nodeType": "EventDefinition", "parameters": { - "id": 151, + "id": 155, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 145, + "id": 149, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2314:6:0", + "nameLocation": "2362:6:0", "nodeType": "VariableDeclaration", - "scope": 152, - "src": "2306:14:0", + "scope": 156, + "src": "2354:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22555,10 +25440,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 144, + "id": 148, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2306:7:0", + "src": "2354:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22568,14 +25453,14 @@ }, { "constant": false, - "id": 147, + "id": 151, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2329:5:0", + "nameLocation": "2377:5:0", "nodeType": "VariableDeclaration", - "scope": 152, - "src": "2322:12:0", + "scope": 156, + "src": "2370:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22583,10 +25468,10 @@ "typeString": "uint64" }, "typeName": { - "id": 146, + "id": 150, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2322:6:0", + "src": "2370:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -22596,14 +25481,14 @@ }, { "constant": false, - "id": 150, + "id": 154, "indexed": false, "mutability": "mutable", "name": "addrs", - "nameLocation": "2346:5:0", + "nameLocation": "2394:5:0", "nodeType": "VariableDeclaration", - "scope": 152, - "src": "2336:15:0", + "scope": 156, + "src": "2384:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22612,19 +25497,19 @@ }, "typeName": { "baseType": { - "id": 148, + "id": 152, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2336:7:0", + "src": "2384:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 149, + "id": 153, "nodeType": "ArrayTypeName", - "src": "2336:9:0", + "src": "2384:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -22633,30 +25518,30 @@ "visibility": "internal" } ], - "src": "2305:47:0" + "src": "2353:47:0" }, - "src": "2283:70:0" + "src": "2331:70:0" }, { "anonymous": false, - "id": 161, + "id": 165, "name": "CalculateStarted", - "nameLocation": "2422:16:0", + "nameLocation": "2470:16:0", "nodeType": "EventDefinition", "parameters": { - "id": 160, + "id": 164, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 154, + "id": 158, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2447:6:0", + "nameLocation": "2495:6:0", "nodeType": "VariableDeclaration", - "scope": 161, - "src": "2439:14:0", + "scope": 165, + "src": "2487:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22664,10 +25549,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 153, + "id": 157, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2439:7:0", + "src": "2487:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22677,14 +25562,14 @@ }, { "constant": false, - "id": 156, + "id": 160, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2462:5:0", + "nameLocation": "2510:5:0", "nodeType": "VariableDeclaration", - "scope": 161, - "src": "2455:12:0", + "scope": 165, + "src": "2503:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22692,10 +25577,10 @@ "typeString": "uint64" }, "typeName": { - "id": 155, + "id": 159, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2455:6:0", + "src": "2503:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -22705,14 +25590,14 @@ }, { "constant": false, - "id": 159, + "id": 163, "indexed": false, "mutability": "mutable", "name": "addrs", - "nameLocation": "2479:5:0", + "nameLocation": "2527:5:0", "nodeType": "VariableDeclaration", - "scope": 161, - "src": "2469:15:0", + "scope": 165, + "src": "2517:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22721,19 +25606,19 @@ }, "typeName": { "baseType": { - "id": 157, + "id": 161, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2469:7:0", + "src": "2517:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 158, + "id": 162, "nodeType": "ArrayTypeName", - "src": "2469:9:0", + "src": "2517:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -22742,30 +25627,30 @@ "visibility": "internal" } ], - "src": "2438:47:0" + "src": "2486:47:0" }, - "src": "2416:70:0" + "src": "2464:70:0" }, { "anonymous": false, - "id": 175, + "id": 179, "name": "ContentUploaded", - "nameLocation": "2602:15:0", + "nameLocation": "2650:15:0", "nodeType": "EventDefinition", "parameters": { - "id": 174, + "id": 178, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 163, + "id": 167, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2635:6:0", + "nameLocation": "2683:6:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2627:14:0", + "scope": 179, + "src": "2675:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22773,10 +25658,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 162, + "id": 166, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2627:7:0", + "src": "2675:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22786,14 +25671,14 @@ }, { "constant": false, - "id": 165, + "id": 169, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2658:5:0", + "nameLocation": "2706:5:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2651:12:0", + "scope": 179, + "src": "2699:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22801,10 +25686,10 @@ "typeString": "uint64" }, "typeName": { - "id": 164, + "id": 168, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2651:6:0", + "src": "2699:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -22814,14 +25699,14 @@ }, { "constant": false, - "id": 167, + "id": 171, "indexed": false, "mutability": "mutable", - "name": "owner", - "nameLocation": "2681:5:0", + "name": "sender", + "nameLocation": "2729:6:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2673:13:0", + "scope": 179, + "src": "2721:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22829,10 +25714,10 @@ "typeString": "address" }, "typeName": { - "id": 166, + "id": 170, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2673:7:0", + "src": "2721:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22843,14 +25728,14 @@ }, { "constant": false, - "id": 169, + "id": 173, "indexed": false, "mutability": "mutable", - "name": "sharer", - "nameLocation": "2704:6:0", + "name": "reciver", + "nameLocation": "2753:7:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2696:14:0", + "scope": 179, + "src": "2745:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22858,10 +25743,10 @@ "typeString": "address" }, "typeName": { - "id": 168, + "id": 172, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2696:7:0", + "src": "2745:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22872,14 +25757,14 @@ }, { "constant": false, - "id": 171, + "id": 175, "indexed": false, "mutability": "mutable", "name": "contentType", - "nameLocation": "2727:11:0", + "nameLocation": "2777:11:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2720:18:0", + "scope": 179, + "src": "2770:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22887,10 +25772,10 @@ "typeString": "string" }, "typeName": { - "id": 170, + "id": 174, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2720:6:0", + "src": "2770:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22900,14 +25785,14 @@ }, { "constant": false, - "id": 173, + "id": 177, "indexed": false, "mutability": "mutable", "name": "content", - "nameLocation": "2754:7:0", + "nameLocation": "2804:7:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2748:13:0", + "scope": 179, + "src": "2798:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22915,10 +25800,10 @@ "typeString": "bytes" }, "typeName": { - "id": 172, + "id": 176, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2748:5:0", + "src": "2798:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -22927,15 +25812,15 @@ "visibility": "internal" } ], - "src": "2617:150:0" + "src": "2665:152:0" }, - "src": "2596:172:0" + "src": "2644:174:0" }, { "body": { - "id": 186, + "id": 190, "nodeType": "Block", - "src": "2837:510:0", + "src": "2887:510:0", "statements": [ { "expression": { @@ -22945,32 +25830,32 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 181, + "id": 185, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 178, + "id": 182, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "3286:3:0", + "src": "3336:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 179, + "id": 183, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "3286:10:0", + "src": "3336:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22979,18 +25864,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 180, + "id": 184, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "3300:5:0", + "src": "3350:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3286:19:0", + "src": "3336:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22998,14 +25883,14 @@ }, { "hexValue": "43616c6c6572206973206e6f74206f776e6572", - "id": 182, + "id": 186, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3307:21:0", + "src": "3357:21:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d", "typeString": "literal_string \"Caller is not owner\"" @@ -23024,7 +25909,7 @@ "typeString": "literal_string \"Caller is not owner\"" } ], - "id": 177, + "id": 181, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23032,13 +25917,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3278:7:0", + "src": "3328:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 183, + "id": 187, "isConstant": false, "isLValue": false, "isPure": false, @@ -23046,43 +25931,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3278:51:0", + "src": "3328:51:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 184, + "id": 188, "nodeType": "ExpressionStatement", - "src": "3278:51:0" + "src": "3328:51:0" }, { - "id": 185, + "id": 189, "nodeType": "PlaceholderStatement", - "src": "3339:1:0" + "src": "3389:1:0" } ] }, - "id": 187, + "id": 191, "name": "isOwner", - "nameLocation": "2827:7:0", + "nameLocation": "2877:7:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 176, + "id": 180, "nodeType": "ParameterList", "parameters": [], - "src": "2834:2:0" + "src": "2884:2:0" }, - "src": "2818:529:0", + "src": "2868:529:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 205, + "id": 209, "nodeType": "Block", - "src": "3390:99:0", + "src": "3440:99:0", "statements": [ { "expression": { @@ -23092,7 +25977,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 200, + "id": 204, "isConstant": false, "isLValue": false, "isPure": false, @@ -23100,25 +25985,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 192, + "id": 196, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "3408:12:0", + "src": "3458:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 194, + "id": 198, "indexExpression": { - "id": 193, + "id": 197, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 189, - "src": "3421:7:0", + "referencedDeclaration": 193, + "src": "3471:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23129,13 +26014,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3408:21:0", + "src": "3458:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "id": 195, + "id": 199, "isConstant": false, "isLValue": true, "isPure": false, @@ -23143,7 +26028,7 @@ "memberName": "creator", "nodeType": "MemberAccess", "referencedDeclaration": 51, - "src": "3408:29:0", + "src": "3458:29:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23155,14 +26040,14 @@ "arguments": [ { "hexValue": "30", - "id": 198, + "id": 202, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3449:1:0", + "src": "3499:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -23177,26 +26062,26 @@ "typeString": "int_const 0" } ], - "id": 197, + "id": 201, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3441:7:0", + "src": "3491:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 196, + "id": 200, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3441:7:0", + "src": "3491:7:0", "typeDescriptions": {} } }, - "id": 199, + "id": 203, "isConstant": false, "isLValue": false, "isPure": true, @@ -23204,14 +26089,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3441:10:0", + "src": "3491:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3408:43:0", + "src": "3458:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23219,14 +26104,14 @@ }, { "hexValue": "5461736b206e6f7420657869737473", - "id": 201, + "id": 205, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3453:17:0", + "src": "3503:17:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210", "typeString": "literal_string \"Task not exists\"" @@ -23245,7 +26130,7 @@ "typeString": "literal_string \"Task not exists\"" } ], - "id": 191, + "id": 195, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23253,13 +26138,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3400:7:0", + "src": "3450:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 202, + "id": 206, "isConstant": false, "isLValue": false, "isPure": false, @@ -23267,41 +26152,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3400:71:0", + "src": "3450:71:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 203, + "id": 207, "nodeType": "ExpressionStatement", - "src": "3400:71:0" + "src": "3450:71:0" }, { - "id": 204, + "id": 208, "nodeType": "PlaceholderStatement", - "src": "3481:1:0" + "src": "3531:1:0" } ] }, - "id": 206, + "id": 210, "name": "taskExists", - "nameLocation": "3362:10:0", + "nameLocation": "3412:10:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 190, + "id": 194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 189, + "id": 193, "mutability": "mutable", "name": "task_id", - "nameLocation": "3381:7:0", + "nameLocation": "3431:7:0", "nodeType": "VariableDeclaration", - "scope": 206, - "src": "3373:15:0", + "scope": 210, + "src": "3423:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23309,10 +26194,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 188, + "id": 192, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3373:7:0", + "src": "3423:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23321,89 +26206,89 @@ "visibility": "internal" } ], - "src": "3372:17:0" + "src": "3422:17:0" }, - "src": "3353:136:0", + "src": "3403:136:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 235, + "id": 239, "nodeType": "Block", - "src": "3547:200:0", + "src": "3597:200:0", "statements": [ { "assignments": [ - 216 + 220 ], "declarations": [ { "constant": false, - "id": 216, + "id": 220, "mutability": "mutable", "name": "rounds", - "nameLocation": "3577:6:0", + "nameLocation": "3627:6:0", "nodeType": "VariableDeclaration", - "scope": 235, - "src": "3557:26:0", + "scope": 239, + "src": "3607:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 214, + "id": 218, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 213, + "id": 217, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "3557:9:0" + "referencedDeclaration": 85, + "src": "3607:9:0" }, - "referencedDeclaration": 83, - "src": "3557:9:0", + "referencedDeclaration": 85, + "src": "3607:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 215, + "id": 219, "nodeType": "ArrayTypeName", - "src": "3557:11:0", + "src": "3607:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 220, + "id": 224, "initialValue": { "baseExpression": { - "id": 217, + "id": 221, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "3586:10:0", + "src": "3636:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 219, + "id": 223, "indexExpression": { - "id": 218, + "id": 222, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 208, - "src": "3597:7:0", + "referencedDeclaration": 212, + "src": "3647:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23414,14 +26299,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3586:19:0", + "src": "3636:19:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3557:48:0" + "src": "3607:48:0" }, { "expression": { @@ -23431,7 +26316,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 230, + "id": 234, "isConstant": false, "isLValue": false, "isPure": false, @@ -23441,32 +26326,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 225, + "id": 229, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 222, + "id": 226, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "3636:6:0", + "referencedDeclaration": 220, + "src": "3686:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 223, + "id": 227, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3636:13:0", + "src": "3686:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23476,21 +26361,21 @@ "operator": ">", "rightExpression": { "hexValue": "31", - "id": 224, + "id": 228, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3652:1:0", + "src": "3702:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "3636:17:0", + "src": "3686:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23503,32 +26388,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 229, + "id": 233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 226, + "id": 230, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "3657:6:0", + "referencedDeclaration": 220, + "src": "3707:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 227, + "id": 231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3657:13:0", + "src": "3707:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23537,24 +26422,24 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 228, + "id": 232, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 210, - "src": "3673:5:0", + "referencedDeclaration": 214, + "src": "3723:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "3657:21:0", + "src": "3707:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "3636:42:0", + "src": "3686:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23562,14 +26447,14 @@ }, { "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", - "id": 231, + "id": 235, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3692:27:0", + "src": "3742:27:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf", "typeString": "literal_string \"this round does not exist\"" @@ -23588,7 +26473,7 @@ "typeString": "literal_string \"this round does not exist\"" } ], - "id": 221, + "id": 225, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23596,13 +26481,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3615:7:0", + "src": "3665:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 232, + "id": 236, "isConstant": false, "isLValue": false, "isPure": false, @@ -23610,41 +26495,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3615:114:0", + "src": "3665:114:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 233, + "id": 237, "nodeType": "ExpressionStatement", - "src": "3615:114:0" + "src": "3665:114:0" }, { - "id": 234, + "id": 238, "nodeType": "PlaceholderStatement", - "src": "3739:1:0" + "src": "3789:1:0" } ] }, - "id": 236, + "id": 240, "name": "roundExists", - "nameLocation": "3504:11:0", + "nameLocation": "3554:11:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 211, + "id": 215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 208, + "id": 212, "mutability": "mutable", "name": "task_id", - "nameLocation": "3524:7:0", + "nameLocation": "3574:7:0", "nodeType": "VariableDeclaration", - "scope": 236, - "src": "3516:15:0", + "scope": 240, + "src": "3566:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23652,10 +26537,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 207, + "id": 211, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3516:7:0", + "src": "3566:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23665,13 +26550,13 @@ }, { "constant": false, - "id": 210, + "id": 214, "mutability": "mutable", "name": "round", - "nameLocation": "3540:5:0", + "nameLocation": "3590:5:0", "nodeType": "VariableDeclaration", - "scope": 236, - "src": "3533:12:0", + "scope": 240, + "src": "3583:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23679,10 +26564,10 @@ "typeString": "uint64" }, "typeName": { - "id": 209, + "id": 213, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "3533:6:0", + "src": "3583:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -23691,89 +26576,89 @@ "visibility": "internal" } ], - "src": "3515:31:0" + "src": "3565:31:0" }, - "src": "3495:252:0", + "src": "3545:252:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 260, + "id": 264, "nodeType": "Block", - "src": "3809:167:0", + "src": "3859:167:0", "statements": [ { "assignments": [ - 246 + 250 ], "declarations": [ { "constant": false, - "id": 246, + "id": 250, "mutability": "mutable", "name": "cmmts", - "nameLocation": "3851:5:0", + "nameLocation": "3901:5:0", "nodeType": "VariableDeclaration", - "scope": 260, - "src": "3819:37:0", + "scope": 264, + "src": "3869:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 244, + "id": 248, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 243, + "id": 247, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "3819:21:0" + "src": "3869:21:0" }, "referencedDeclaration": 49, - "src": "3819:21:0", + "src": "3869:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 245, + "id": 249, "nodeType": "ArrayTypeName", - "src": "3819:23:0", + "src": "3869:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 250, + "id": 254, "initialValue": { "baseExpression": { - "id": 247, + "id": 251, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "3859:21:0", + "src": "3909:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 249, + "id": 253, "indexExpression": { - "id": 248, + "id": 252, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "3881:7:0", + "referencedDeclaration": 242, + "src": "3931:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23784,14 +26669,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3859:30:0", + "src": "3909:30:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3819:70:0" + "src": "3869:70:0" }, { "expression": { @@ -23801,32 +26686,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 255, + "id": 259, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 252, + "id": 256, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 246, - "src": "3907:5:0", + "referencedDeclaration": 250, + "src": "3957:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 253, + "id": 257, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3907:12:0", + "src": "3957:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23835,18 +26720,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 254, + "id": 258, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 240, - "src": "3922:5:0", + "referencedDeclaration": 244, + "src": "3972:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "3907:20:0", + "src": "3957:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23854,14 +26739,14 @@ }, { "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 256, + "id": 260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3929:28:0", + "src": "3979:28:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", "typeString": "literal_string \"The Task Round Must exists\"" @@ -23880,7 +26765,7 @@ "typeString": "literal_string \"The Task Round Must exists\"" } ], - "id": 251, + "id": 255, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23888,13 +26773,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3899:7:0", + "src": "3949:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 257, + "id": 261, "isConstant": false, "isLValue": false, "isPure": false, @@ -23902,41 +26787,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3899:59:0", + "src": "3949:59:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 258, + "id": 262, "nodeType": "ExpressionStatement", - "src": "3899:59:0" + "src": "3949:59:0" }, { - "id": 259, + "id": 263, "nodeType": "PlaceholderStatement", - "src": "3968:1:0" + "src": "4018:1:0" } ] }, - "id": 261, + "id": 265, "name": "roundcmmtExists", - "nameLocation": "3762:15:0", + "nameLocation": "3812:15:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 241, + "id": 245, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 238, + "id": 242, "mutability": "mutable", "name": "task_id", - "nameLocation": "3786:7:0", + "nameLocation": "3836:7:0", "nodeType": "VariableDeclaration", - "scope": 261, - "src": "3778:15:0", + "scope": 265, + "src": "3828:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23944,10 +26829,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 237, + "id": 241, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3778:7:0", + "src": "3828:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23957,13 +26842,13 @@ }, { "constant": false, - "id": 240, + "id": 244, "mutability": "mutable", "name": "round", - "nameLocation": "3802:5:0", + "nameLocation": "3852:5:0", "nodeType": "VariableDeclaration", - "scope": 261, - "src": "3795:12:0", + "scope": 265, + "src": "3845:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23971,10 +26856,10 @@ "typeString": "uint64" }, "typeName": { - "id": 239, + "id": 243, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "3795:6:0", + "src": "3845:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -23983,17 +26868,17 @@ "visibility": "internal" } ], - "src": "3777:31:0" + "src": "3827:31:0" }, - "src": "3753:223:0", + "src": "3803:223:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 277, + "id": 281, "nodeType": "Block", - "src": "4018:147:0", + "src": "4068:147:0", "statements": [ { "expression": { @@ -24003,7 +26888,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 272, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -24011,25 +26896,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 266, + "id": 270, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "4049:12:0", + "src": "4099:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 268, + "id": 272, "indexExpression": { - "id": 267, + "id": 271, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 263, - "src": "4062:7:0", + "referencedDeclaration": 267, + "src": "4112:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24040,13 +26925,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4049:21:0", + "src": "4099:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "id": 269, + "id": 273, "isConstant": false, "isLValue": true, "isPure": false, @@ -24054,7 +26939,7 @@ "memberName": "creator", "nodeType": "MemberAccess", "referencedDeclaration": 51, - "src": "4049:29:0", + "src": "4099:29:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24064,31 +26949,31 @@ "operator": "==", "rightExpression": { "expression": { - "id": 270, + "id": 274, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "4082:3:0", + "src": "4132:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 271, + "id": 275, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "4082:10:0", + "src": "4132:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4049:43:0", + "src": "4099:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24096,14 +26981,14 @@ }, { "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", - "id": 273, + "id": 277, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4106:31:0", + "src": "4156:31:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063", "typeString": "literal_string \"Must called by the task owner\"" @@ -24122,7 +27007,7 @@ "typeString": "literal_string \"Must called by the task owner\"" } ], - "id": 265, + "id": 269, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -24130,13 +27015,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "4028:7:0", + "src": "4078:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 274, + "id": 278, "isConstant": false, "isLValue": false, "isPure": false, @@ -24144,41 +27029,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4028:119:0", + "src": "4078:119:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 275, + "id": 279, "nodeType": "ExpressionStatement", - "src": "4028:119:0" + "src": "4078:119:0" }, { - "id": 276, + "id": 280, "nodeType": "PlaceholderStatement", - "src": "4157:1:0" + "src": "4207:1:0" } ] }, - "id": 278, + "id": 282, "name": "taskOwner", - "nameLocation": "3991:9:0", + "nameLocation": "4041:9:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 264, + "id": 268, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 263, + "id": 267, "mutability": "mutable", "name": "task_id", - "nameLocation": "4009:7:0", + "nameLocation": "4059:7:0", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "4001:15:0", + "scope": 282, + "src": "4051:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24186,10 +27071,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 262, + "id": 266, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4001:7:0", + "src": "4051:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24198,75 +27083,75 @@ "visibility": "internal" } ], - "src": "4000:17:0" + "src": "4050:17:0" }, - "src": "3982:183:0", + "src": "4032:183:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 302, + "id": 306, "nodeType": "Block", - "src": "4266:184:0", + "src": "4316:184:0", "statements": [ { "expression": { - "id": 287, + "id": 291, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 285, + "id": 289, "name": "idContract", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6, - "src": "4276:10:0", + "src": "4326:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 286, + "id": 290, "name": "_addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 282, - "src": "4289:5:0", + "referencedDeclaration": 286, + "src": "4339:5:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, - "src": "4276:18:0", + "src": "4326:18:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, - "id": 288, + "id": 292, "nodeType": "ExpressionStatement", - "src": "4276:18:0" + "src": "4326:18:0" }, { "expression": { - "id": 292, + "id": 296, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 289, + "id": 293, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "4304:5:0", + "src": "4354:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24276,39 +27161,39 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 290, + "id": 294, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "4312:3:0", + "src": "4362:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 291, + "id": 295, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "4312:10:0", + "src": "4362:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4304:18:0", + "src": "4354:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 293, + "id": 297, "nodeType": "ExpressionStatement", - "src": "4304:18:0" + "src": "4354:18:0" }, { "eventCall": { @@ -24317,14 +27202,14 @@ "arguments": [ { "hexValue": "30", - "id": 297, + "id": 301, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4433:1:0", + "src": "4483:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -24339,26 +27224,26 @@ "typeString": "int_const 0" } ], - "id": 296, + "id": 300, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4425:7:0", + "src": "4475:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 295, + "id": 299, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4425:7:0", + "src": "4475:7:0", "typeDescriptions": {} } }, - "id": 298, + "id": 302, "isConstant": false, "isLValue": false, "isPure": true, @@ -24366,7 +27251,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4425:10:0", + "src": "4475:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24374,12 +27259,12 @@ } }, { - "id": 299, + "id": 303, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "4437:5:0", + "src": "4487:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24397,18 +27282,18 @@ "typeString": "address" } ], - "id": 294, + "id": 298, "name": "OwnerSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 110, - "src": "4416:8:0", + "referencedDeclaration": 112, + "src": "4466:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 300, + "id": 304, "isConstant": false, "isLValue": false, "isPure": false, @@ -24416,26 +27301,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4416:27:0", + "src": "4466:27:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 301, + "id": 305, "nodeType": "EmitStatement", - "src": "4411:32:0" + "src": "4461:32:0" } ] }, "documentation": { - "id": 279, + "id": 283, "nodeType": "StructuredDocumentation", - "src": "4171:54:0", + "src": "4221:54:0", "text": " @dev Set contract deployer as owner" }, - "id": 303, + "id": 307, "implemented": true, "kind": "constructor", "modifiers": [], @@ -24443,106 +27328,106 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 283, + "id": 287, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 282, + "id": 286, "mutability": "mutable", "name": "_addr", - "nameLocation": "4259:5:0", + "nameLocation": "4309:5:0", "nodeType": "VariableDeclaration", - "scope": 303, - "src": "4242:22:0", + "scope": 307, + "src": "4292:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" }, "typeName": { - "id": 281, + "id": 285, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 280, + "id": 284, "name": "IdentityContract", "nodeType": "IdentifierPath", - "referencedDeclaration": 1929, - "src": "4242:16:0" + "referencedDeclaration": 2193, + "src": "4292:16:0" }, - "referencedDeclaration": 1929, - "src": "4242:16:0", + "referencedDeclaration": 2193, + "src": "4292:16:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, "visibility": "internal" } ], - "src": "4241:24:0" + "src": "4291:24:0" }, "returnParameters": { - "id": 284, + "id": 288, "nodeType": "ParameterList", "parameters": [], - "src": "4266:0:0" + "src": "4316:0:0" }, - "scope": 1663, - "src": "4230:220:0", + "scope": 1927, + "src": "4280:220:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 321, + "id": 325, "nodeType": "Block", - "src": "4662:44:0", + "src": "4712:44:0", "statements": [ { "expression": { - "id": 319, + "id": 323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 315, + "id": 319, "name": "task", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 313, - "src": "4672:4:0", + "referencedDeclaration": 317, + "src": "4722:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task memory" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "baseExpression": { - "id": 316, + "id": 320, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "4679:12:0", + "src": "4729:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 318, + "id": 322, "indexExpression": { - "id": 317, + "id": 321, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 306, - "src": "4692:6:0", + "referencedDeclaration": 310, + "src": "4742:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24553,79 +27438,79 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4679:20:0", + "src": "4729:20:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "src": "4672:27:0", + "src": "4722:27:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task memory" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task memory" } }, - "id": 320, + "id": 324, "nodeType": "ExpressionStatement", - "src": "4672:27:0" + "src": "4722:27:0" } ] }, "documentation": { - "id": 304, + "id": 308, "nodeType": "StructuredDocumentation", - "src": "4456:70:0", + "src": "4506:70:0", "text": " @dev get task info data\n @param taskId taskId" }, "functionSelector": "58af9f73", - "id": 322, + "id": 326, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 309, + "id": 313, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 306, - "src": "4615:6:0", + "referencedDeclaration": 310, + "src": "4665:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 310, + "id": 314, "kind": "modifierInvocation", "modifierName": { - "id": 308, + "id": 312, "name": "taskExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 206, - "src": "4604:10:0" + "referencedDeclaration": 210, + "src": "4654:10:0" }, "nodeType": "ModifierInvocation", - "src": "4604:18:0" + "src": "4654:18:0" } ], "name": "getTaskData", - "nameLocation": "4540:11:0", + "nameLocation": "4590:11:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 307, + "id": 311, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 306, + "id": 310, "mutability": "mutable", "name": "taskId", - "nameLocation": "4560:6:0", + "nameLocation": "4610:6:0", "nodeType": "VariableDeclaration", - "scope": 322, - "src": "4552:14:0", + "scope": 326, + "src": "4602:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24633,10 +27518,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 305, + "id": 309, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4552:7:0", + "src": "4602:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24645,75 +27530,75 @@ "visibility": "internal" } ], - "src": "4551:16:0" + "src": "4601:16:0" }, "returnParameters": { - "id": 314, + "id": 318, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 313, + "id": 317, "mutability": "mutable", "name": "task", - "nameLocation": "4652:4:0", + "nameLocation": "4702:4:0", "nodeType": "VariableDeclaration", - "scope": 322, - "src": "4640:16:0", + "scope": 326, + "src": "4690:16:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task" }, "typeName": { - "id": 312, + "id": 316, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 311, + "id": 315, "name": "Task", "nodeType": "IdentifierPath", - "referencedDeclaration": 60, - "src": "4640:4:0" + "referencedDeclaration": 62, + "src": "4690:4:0" }, - "referencedDeclaration": 60, - "src": "4640:4:0", + "referencedDeclaration": 62, + "src": "4690:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" } }, "visibility": "internal" } ], - "src": "4639:18:0" + "src": "4689:18:0" }, - "scope": 1663, - "src": "4531:175:0", + "scope": 1927, + "src": "4581:175:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 399, + "id": 408, "nodeType": "Block", - "src": "5132:604:0", + "src": "5216:735:0", "statements": [ { "assignments": [ - 333 + 339 ], "declarations": [ { "constant": false, - "id": 333, + "id": 339, "mutability": "mutable", "name": "task_id", - "nameLocation": "5150:7:0", + "nameLocation": "5234:7:0", "nodeType": "VariableDeclaration", - "scope": 399, - "src": "5142:15:0", + "scope": 408, + "src": "5226:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24721,10 +27606,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 332, + "id": 338, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5142:7:0", + "src": "5226:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24733,32 +27618,32 @@ "visibility": "internal" } ], - "id": 345, + "id": 352, "initialValue": { "arguments": [ { "arguments": [ { "expression": { - "id": 337, + "id": 343, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "5194:5:0", + "src": "5278:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 338, + "id": 344, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "timestamp", + "memberName": "number", "nodeType": "MemberAccess", - "src": "5194:15:0", + "src": "5278:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24766,53 +27651,65 @@ }, { "expression": { - "id": 339, + "id": 345, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5211:3:0", + "src": "5292:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 340, + "id": 346, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5211:10:0", + "src": "5292:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 341, + "id": 347, "name": "dataSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 325, - "src": "5223:7:0", + "referencedDeclaration": 329, + "src": "5304:7:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" } }, { - "id": 342, + "id": 348, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 327, - "src": "5232:10:0", + "referencedDeclaration": 331, + "src": "5313:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } + }, + { + "id": 349, + "name": "taskType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 333, + "src": "5325:8:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } } ], "expression": { @@ -24832,34 +27729,38 @@ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" } ], "expression": { - "id": 335, + "id": 341, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "5183:3:0", + "src": "5267:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 336, + "id": 342, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "encode", "nodeType": "MemberAccess", - "src": "5183:10:0", + "src": "5267:10:0", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 343, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -24867,7 +27768,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5183:60:0", + "src": "5267:67:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -24882,18 +27783,18 @@ "typeString": "bytes memory" } ], - "id": 334, + "id": 340, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "5160:9:0", + "src": "5244:9:0", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 344, + "id": 351, "isConstant": false, "isLValue": false, "isPure": false, @@ -24901,7 +27802,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5160:93:0", + "src": "5244:100:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -24909,72 +27810,72 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5142:111:0" + "src": "5226:118:0" }, { "assignments": [ - 350 + 357 ], "declarations": [ { "constant": false, - "id": 350, + "id": 357, "mutability": "mutable", "name": "node", - "nameLocation": "5292:4:0", + "nameLocation": "5383:4:0", "nodeType": "VariableDeclaration", - "scope": 399, - "src": "5263:33:0", + "scope": 408, + "src": "5354:33:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node" }, "typeName": { - "id": 349, + "id": 356, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 348, + "id": 355, "name": "IdentityContract.Node", "nodeType": "IdentifierPath", - "referencedDeclaration": 1670, - "src": "5263:21:0" + "referencedDeclaration": 1934, + "src": "5354:21:0" }, - "referencedDeclaration": 1670, - "src": "5263:21:0", + "referencedDeclaration": 1934, + "src": "5354:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_storage_ptr", + "typeIdentifier": "t_struct$_Node_$1934_storage_ptr", "typeString": "struct IdentityContract.Node" } }, "visibility": "internal" } ], - "id": 356, + "id": 363, "initialValue": { "arguments": [ { "expression": { - "id": 353, + "id": 360, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5322:3:0", + "src": "5413:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 354, + "id": 361, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5322:10:0", + "src": "5413:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24989,32 +27890,32 @@ } ], "expression": { - "id": 351, + "id": 358, "name": "idContract", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6, - "src": "5299:10:0", + "src": "5390:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, - "id": 352, + "id": 359, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNodeInfo", "nodeType": "MemberAccess", - "referencedDeclaration": 1928, - "src": "5299:22:0", + "referencedDeclaration": 2192, + "src": "5390:22:0", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_Node_$1670_memory_ptr_$", + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_Node_$1934_memory_ptr_$", "typeString": "function (address) view external returns (struct IdentityContract.Node memory)" } }, - "id": 355, + "id": 362, "isConstant": false, "isLValue": false, "isPure": false, @@ -25022,44 +27923,44 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5299:34:0", + "src": "5390:34:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "5263:70:0" + "src": "5354:70:0" }, { "expression": { - "id": 369, + "id": 377, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 357, + "id": 364, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "5343:12:0", + "src": "5434:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 359, + "id": 366, "indexExpression": { - "id": 358, + "id": 365, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5356:7:0", + "referencedDeclaration": 339, + "src": "5447:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25070,10 +27971,10 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5343:21:0", + "src": "5434:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, "nodeType": "Assignment", @@ -25082,26 +27983,26 @@ "arguments": [ { "expression": { - "id": 361, + "id": 368, "name": "node", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 350, - "src": "5398:4:0", + "referencedDeclaration": 357, + "src": "5489:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node memory" } }, - "id": 362, + "id": 369, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "url", "nodeType": "MemberAccess", - "referencedDeclaration": 1667, - "src": "5398:8:0", + "referencedDeclaration": 1931, + "src": "5489:8:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25109,64 +28010,76 @@ }, { "expression": { - "id": 363, + "id": 370, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5429:3:0", + "src": "5520:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 364, + "id": 371, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5429:10:0", + "src": "5520:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 365, + "id": 372, "name": "dataSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 325, - "src": "5462:7:0", + "referencedDeclaration": 329, + "src": "5553:7:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" } }, { - "id": 366, + "id": 373, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 327, - "src": "5495:10:0", + "referencedDeclaration": 331, + "src": "5586:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, + { + "id": 374, + "name": "taskType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 333, + "src": "5620:8:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, { "hexValue": "30", - "id": 367, + "id": 375, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5533:1:0", + "src": "5656:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -25192,23 +28105,27 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], - "id": 360, + "id": 367, "name": "Task", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 60, - "src": "5367:4:0", + "referencedDeclaration": 62, + "src": "5458:4:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Task_$60_storage_ptr_$", - "typeString": "type(struct DeltaContract.Task storage pointer)" + "typeIdentifier": "t_type$_t_struct$_Task_$62_storage_ptr_$", + "typeString": "type(struct HFLContract.Task storage pointer)" } }, - "id": 368, + "id": 376, "isConstant": false, "isLValue": false, "isPure": false, @@ -25219,40 +28136,41 @@ "creator", "dataSet", "commitment", + "taskType", "currentRound" ], "nodeType": "FunctionCall", - "src": "5367:178:0", + "src": "5458:210:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task memory" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task memory" } }, - "src": "5343:202:0", + "src": "5434:234:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "id": 370, + "id": 378, "nodeType": "ExpressionStatement", - "src": "5343:202:0" + "src": "5434:234:0" }, { "expression": { - "id": 373, + "id": 381, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 371, + "id": 379, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 330, - "src": "5555:6:0", + "referencedDeclaration": 336, + "src": "5678:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25261,98 +28179,98 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 372, + "id": 380, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5564:7:0", + "referencedDeclaration": 339, + "src": "5687:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "5555:16:0", + "src": "5678:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "id": 374, + "id": 382, "nodeType": "ExpressionStatement", - "src": "5555:16:0" + "src": "5678:16:0" }, { "assignments": [ - 379 + 387 ], "declarations": [ { "constant": false, - "id": 379, + "id": 387, "mutability": "mutable", "name": "rounds", - "nameLocation": "5601:6:0", + "nameLocation": "5724:6:0", "nodeType": "VariableDeclaration", - "scope": 399, - "src": "5581:26:0", + "scope": 408, + "src": "5704:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 377, + "id": 385, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 376, + "id": 384, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "5581:9:0" + "referencedDeclaration": 85, + "src": "5704:9:0" }, - "referencedDeclaration": 83, - "src": "5581:9:0", + "referencedDeclaration": 85, + "src": "5704:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 378, + "id": 386, "nodeType": "ArrayTypeName", - "src": "5581:11:0", + "src": "5704:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 383, + "id": 391, "initialValue": { "baseExpression": { - "id": 380, + "id": 388, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "5610:10:0", + "src": "5733:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 382, + "id": 390, "indexExpression": { - "id": 381, + "id": 389, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 330, - "src": "5621:6:0", + "referencedDeclaration": 336, + "src": "5744:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25363,14 +28281,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5610:18:0", + "src": "5733:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5581:47:0" + "src": "5704:47:0" }, { "expression": { @@ -25378,31 +28296,31 @@ "expression": { "argumentTypes": [], "expression": { - "id": 384, + "id": 392, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 379, - "src": "5638:6:0", + "referencedDeclaration": 387, + "src": "5761:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 386, + "id": 394, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "5638:11:0", + "src": "5761:11:0", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$83_storage_$bound_to$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.TaskRound storage ref[] storage pointer) returns (struct DeltaContract.TaskRound storage ref)" + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", + "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" } }, - "id": 387, + "id": 395, "isConstant": false, "isLValue": true, "isPure": false, @@ -25410,65 +28328,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5638:13:0", + "src": "5761:13:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 388, + "id": 396, "nodeType": "ExpressionStatement", - "src": "5638:13:0" + "src": "5761:13:0" }, { "eventCall": { "arguments": [ { "expression": { - "id": 390, + "id": 398, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5678:3:0", + "src": "5814:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 391, + "id": 399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5678:10:0", + "src": "5814:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 392, + "id": 400, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5690:7:0", + "referencedDeclaration": 339, + "src": "5838:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 393, + "id": 401, "name": "dataSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 325, - "src": "5699:7:0", + "referencedDeclaration": 329, + "src": "5859:7:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -25476,42 +28394,54 @@ }, { "expression": { - "id": 394, + "id": 402, "name": "node", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 350, - "src": "5708:4:0", + "referencedDeclaration": 357, + "src": "5880:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node memory" } }, - "id": 395, + "id": 403, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "url", "nodeType": "MemberAccess", - "referencedDeclaration": 1667, - "src": "5708:8:0", + "referencedDeclaration": 1931, + "src": "5880:8:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 396, + "id": 404, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 327, - "src": "5718:10:0", + "referencedDeclaration": 331, + "src": "5902:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } + }, + { + "id": 405, + "name": "taskType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 333, + "src": "5926:8:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } } ], "expression": { @@ -25535,20 +28465,24 @@ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" } ], - "id": 389, + "id": 397, "name": "TaskCreated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 122, - "src": "5666:11:0", + "referencedDeclaration": 126, + "src": "5789:11:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$returns$__$", - "typeString": "function (address,bytes32,string memory,string memory,bytes32)" + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,bytes32,string memory,string memory,bytes32,string memory)" } }, - "id": 397, + "id": 406, "isConstant": false, "isLValue": false, "isPure": false, @@ -25556,46 +28490,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5666:63:0", + "src": "5789:155:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 398, + "id": 407, "nodeType": "EmitStatement", - "src": "5661:68:0" + "src": "5784:160:0" } ] }, "documentation": { - "id": 323, + "id": 327, "nodeType": "StructuredDocumentation", - "src": "4712:288:0", + "src": "4762:288:0", "text": " @dev called by task developer, notifying all clients that a new learning task has been published\n @param dataSet data set name (file/folder name of training data)\n @param commitment training code hash (client validation purpose)\n @return taskId taskId" }, - "functionSelector": "75cb2a0e", - "id": 400, + "functionSelector": "9bd3a869", + "id": 409, "implemented": true, "kind": "function", "modifiers": [], "name": "createTask", - "nameLocation": "5014:10:0", + "nameLocation": "5064:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 328, + "id": 334, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 325, + "id": 329, "mutability": "mutable", "name": "dataSet", - "nameLocation": "5050:7:0", + "nameLocation": "5100:7:0", "nodeType": "VariableDeclaration", - "scope": 400, - "src": "5034:23:0", + "scope": 409, + "src": "5084:23:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -25603,10 +28537,10 @@ "typeString": "string" }, "typeName": { - "id": 324, + "id": 328, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5034:6:0", + "src": "5084:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -25616,13 +28550,13 @@ }, { "constant": false, - "id": 327, + "id": 331, "mutability": "mutable", "name": "commitment", - "nameLocation": "5075:10:0", + "nameLocation": "5125:10:0", "nodeType": "VariableDeclaration", - "scope": 400, - "src": "5067:18:0", + "scope": 409, + "src": "5117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25630,33 +28564,60 @@ "typeString": "bytes32" }, "typeName": { - "id": 326, + "id": 330, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5067:7:0", + "src": "5117:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" + }, + { + "constant": false, + "id": 333, + "mutability": "mutable", + "name": "taskType", + "nameLocation": "5161:8:0", + "nodeType": "VariableDeclaration", + "scope": 409, + "src": "5145:24:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 332, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5145:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" } ], - "src": "5024:67:0" + "src": "5074:101:0" }, "returnParameters": { - "id": 331, + "id": 337, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 330, + "id": 336, "mutability": "mutable", "name": "taskId", - "nameLocation": "5124:6:0", + "nameLocation": "5208:6:0", "nodeType": "VariableDeclaration", - "scope": 400, - "src": "5116:14:0", + "scope": 409, + "src": "5200:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25664,10 +28625,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 329, + "id": 335, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5116:7:0", + "src": "5200:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25676,91 +28637,91 @@ "visibility": "internal" } ], - "src": "5115:16:0" + "src": "5199:16:0" }, - "scope": 1663, - "src": "5005:731:0", + "scope": 1927, + "src": "5055:896:0", "stateMutability": "payable", "virtual": false, "visibility": "public" }, { "body": { - "id": 527, + "id": 536, "nodeType": "Block", - "src": "6112:802:0", + "src": "6327:802:0", "statements": [ { "assignments": [ - 422 + 431 ], "declarations": [ { "constant": false, - "id": 422, + "id": 431, "mutability": "mutable", "name": "rounds", - "nameLocation": "6142:6:0", + "nameLocation": "6357:6:0", "nodeType": "VariableDeclaration", - "scope": 527, - "src": "6122:26:0", + "scope": 536, + "src": "6337:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 420, + "id": 429, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 419, + "id": 428, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "6122:9:0" + "referencedDeclaration": 85, + "src": "6337:9:0" }, - "referencedDeclaration": 83, - "src": "6122:9:0", + "referencedDeclaration": 85, + "src": "6337:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 421, + "id": 430, "nodeType": "ArrayTypeName", - "src": "6122:11:0", + "src": "6337:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 426, + "id": 435, "initialValue": { "baseExpression": { - "id": 423, + "id": 432, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "6151:10:0", + "src": "6366:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 425, + "id": 434, "indexExpression": { - "id": 424, + "id": 433, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6162:6:0", + "referencedDeclaration": 412, + "src": "6377:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25771,14 +28732,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6151:18:0", + "src": "6366:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6122:47:0" + "src": "6337:47:0" }, { "expression": { @@ -25788,32 +28749,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 431, + "id": 440, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 428, + "id": 437, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6200:6:0", + "referencedDeclaration": 431, + "src": "6415:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 429, + "id": 438, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6200:13:0", + "src": "6415:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25822,18 +28783,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 430, + "id": 439, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6217:5:0", + "referencedDeclaration": 414, + "src": "6432:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6200:22:0", + "src": "6415:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25841,14 +28802,14 @@ }, { "hexValue": "74686520726f756e6420686173206265656e20616c72656164792073746172746564206f72207468652070726520726f756e6420646f6573206e6f74206578697374", - "id": 432, + "id": 441, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6236:68:0", + "src": "6451:68:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7", "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" @@ -25867,7 +28828,7 @@ "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" } ], - "id": 427, + "id": 436, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -25875,13 +28836,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "6179:7:0", + "src": "6394:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 433, + "id": 442, "isConstant": false, "isLValue": false, "isPure": false, @@ -25889,79 +28850,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6179:135:0", + "src": "6394:135:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 434, + "id": 443, "nodeType": "ExpressionStatement", - "src": "6179:135:0" + "src": "6394:135:0" }, { "assignments": [ - 437 + 446 ], "declarations": [ { "constant": false, - "id": 437, + "id": 446, "mutability": "mutable", "name": "task", - "nameLocation": "6337:4:0", + "nameLocation": "6552:4:0", "nodeType": "VariableDeclaration", - "scope": 527, - "src": "6324:17:0", + "scope": 536, + "src": "6539:17:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" }, "typeName": { - "id": 436, + "id": 445, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 435, + "id": 444, "name": "Task", "nodeType": "IdentifierPath", - "referencedDeclaration": 60, - "src": "6324:4:0" + "referencedDeclaration": 62, + "src": "6539:4:0" }, - "referencedDeclaration": 60, - "src": "6324:4:0", + "referencedDeclaration": 62, + "src": "6539:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" } }, "visibility": "internal" } ], - "id": 441, + "id": 450, "initialValue": { "baseExpression": { - "id": 438, + "id": 447, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "6344:12:0", + "src": "6559:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 440, + "id": 449, "indexExpression": { - "id": 439, + "id": 448, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6357:6:0", + "referencedDeclaration": 412, + "src": "6572:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25972,44 +28933,44 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6344:20:0", + "src": "6559:20:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6324:40:0" + "src": "6539:40:0" }, { "expression": { - "id": 446, + "id": 455, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 442, + "id": 451, "name": "task", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "6374:4:0", + "referencedDeclaration": 446, + "src": "6589:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task storage pointer" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task storage pointer" } }, - "id": 444, + "id": 453, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "currentRound", "nodeType": "MemberAccess", - "referencedDeclaration": 59, - "src": "6374:17:0", + "referencedDeclaration": 61, + "src": "6589:17:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26018,32 +28979,32 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 445, + "id": 454, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6394:5:0", + "referencedDeclaration": 414, + "src": "6609:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6374:25:0", + "src": "6589:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 447, + "id": 456, "nodeType": "ExpressionStatement", - "src": "6374:25:0" + "src": "6589:25:0" }, { "body": { - "id": 464, + "id": 473, "nodeType": "Block", - "src": "6465:38:0", + "src": "6680:38:0", "statements": [ { "expression": { @@ -26051,31 +29012,31 @@ "expression": { "argumentTypes": [], "expression": { - "id": 459, + "id": 468, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6479:6:0", + "referencedDeclaration": 431, + "src": "6694:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 461, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "6479:11:0", + "src": "6694:11:0", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$83_storage_$bound_to$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.TaskRound storage ref[] storage pointer) returns (struct DeltaContract.TaskRound storage ref)" + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", + "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" } }, - "id": 462, + "id": 471, "isConstant": false, "isLValue": true, "isPure": false, @@ -26083,16 +29044,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6479:13:0", + "src": "6694:13:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 463, + "id": 472, "nodeType": "ExpressionStatement", - "src": "6479:13:0" + "src": "6694:13:0" } ] }, @@ -26101,7 +29062,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 458, + "id": 467, "isConstant": false, "isLValue": false, "isPure": false, @@ -26111,32 +29072,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 451, + "id": 460, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 448, + "id": 457, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6416:6:0", + "referencedDeclaration": 431, + "src": "6631:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 449, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6416:13:0", + "src": "6631:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26146,21 +29107,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 450, + "id": 459, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6433:1:0", + "src": "6648:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6416:18:0", + "src": "6631:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26173,7 +29134,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 457, + "id": 466, "isConstant": false, "isLValue": false, "isPure": false, @@ -26183,32 +29144,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 455, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 452, + "id": 461, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6438:6:0", + "referencedDeclaration": 431, + "src": "6653:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 453, + "id": 462, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6438:13:0", + "src": "6653:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26218,21 +29179,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 454, + "id": 463, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6454:1:0", + "src": "6669:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "6438:17:0", + "src": "6653:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26241,36 +29202,36 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 456, + "id": 465, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6458:5:0", + "referencedDeclaration": 414, + "src": "6673:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6438:25:0", + "src": "6653:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6416:47:0", + "src": "6631:47:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 465, + "id": 474, "nodeType": "WhileStatement", - "src": "6409:94:0" + "src": "6624:94:0" }, { "expression": { - "id": 471, + "id": 480, "isConstant": false, "isLValue": false, "isPure": false, @@ -26278,25 +29239,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 466, + "id": 475, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6512:6:0", + "referencedDeclaration": 431, + "src": "6727:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 468, + "id": 477, "indexExpression": { - "id": 467, + "id": 476, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6519:5:0", + "referencedDeclaration": 414, + "src": "6734:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26307,21 +29268,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6512:13:0", + "src": "6727:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 469, + "id": 478, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "currentRound", "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "6512:26:0", + "referencedDeclaration": 69, + "src": "6727:26:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26330,30 +29291,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 470, + "id": 479, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6541:5:0", + "referencedDeclaration": 414, + "src": "6756:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6512:34:0", + "src": "6727:34:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 472, + "id": 481, "nodeType": "ExpressionStatement", - "src": "6512:34:0" + "src": "6727:34:0" }, { "expression": { - "id": 478, + "id": 487, "isConstant": false, "isLValue": false, "isPure": false, @@ -26361,25 +29322,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 473, + "id": 482, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6556:6:0", + "referencedDeclaration": 431, + "src": "6771:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 475, + "id": 484, "indexExpression": { - "id": 474, + "id": 483, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6563:5:0", + "referencedDeclaration": 414, + "src": "6778:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26390,21 +29351,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6556:13:0", + "src": "6771:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 476, + "id": 485, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "maxSample", "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "6556:23:0", + "referencedDeclaration": 71, + "src": "6771:23:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -26413,30 +29374,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 477, + "id": 486, "name": "maxSample", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 407, - "src": "6582:9:0", + "referencedDeclaration": 416, + "src": "6797:9:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "6556:35:0", + "src": "6771:35:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "id": 479, + "id": 488, "nodeType": "ExpressionStatement", - "src": "6556:35:0" + "src": "6771:35:0" }, { "expression": { - "id": 485, + "id": 494, "isConstant": false, "isLValue": false, "isPure": false, @@ -26444,25 +29405,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 480, + "id": 489, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6601:6:0", + "referencedDeclaration": 431, + "src": "6816:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 482, + "id": 491, "indexExpression": { - "id": 481, + "id": 490, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6608:5:0", + "referencedDeclaration": 414, + "src": "6823:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26473,21 +29434,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6601:13:0", + "src": "6816:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 483, + "id": 492, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "minSample", "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "6601:23:0", + "referencedDeclaration": 73, + "src": "6816:23:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -26496,30 +29457,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 484, + "id": 493, "name": "minSample", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 409, - "src": "6627:9:0", + "referencedDeclaration": 418, + "src": "6842:9:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "6601:35:0", + "src": "6816:35:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "id": 486, + "id": 495, "nodeType": "ExpressionStatement", - "src": "6601:35:0" + "src": "6816:35:0" }, { "expression": { - "id": 493, + "id": 502, "isConstant": false, "isLValue": false, "isPure": false, @@ -26527,25 +29488,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 487, + "id": 496, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6646:6:0", + "referencedDeclaration": 431, + "src": "6861:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 489, + "id": 498, "indexExpression": { - "id": 488, + "id": 497, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6653:5:0", + "referencedDeclaration": 414, + "src": "6868:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26556,42 +29517,42 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6646:13:0", + "src": "6861:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 490, + "id": 499, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "6646:20:0", + "referencedDeclaration": 76, + "src": "6861:20:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 491, + "id": 500, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "6669:11:0", + "src": "6884:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 492, + "id": 501, "isConstant": false, "isLValue": false, "isPure": true, @@ -26599,93 +29560,93 @@ "memberName": "Started", "nodeType": "MemberAccess", "referencedDeclaration": 9, - "src": "6669:19:0", + "src": "6884:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "6646:42:0", + "src": "6861:42:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 494, + "id": 503, "nodeType": "ExpressionStatement", - "src": "6646:42:0" + "src": "6861:42:0" }, { "assignments": [ - 499 + 508 ], "declarations": [ { "constant": false, - "id": 499, + "id": 508, "mutability": "mutable", "name": "cmmts", - "nameLocation": "6730:5:0", + "nameLocation": "6945:5:0", "nodeType": "VariableDeclaration", - "scope": 527, - "src": "6698:37:0", + "scope": 536, + "src": "6913:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 497, + "id": 506, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 496, + "id": 505, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "6698:21:0" + "src": "6913:21:0" }, "referencedDeclaration": 49, - "src": "6698:21:0", + "src": "6913:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 498, + "id": 507, "nodeType": "ArrayTypeName", - "src": "6698:23:0", + "src": "6913:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 503, + "id": 512, "initialValue": { "baseExpression": { - "id": 500, + "id": 509, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "6738:21:0", + "src": "6953:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 502, + "id": 511, "indexExpression": { - "id": 501, + "id": 510, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6760:6:0", + "referencedDeclaration": 412, + "src": "6975:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26696,20 +29657,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6738:29:0", + "src": "6953:29:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6698:69:0" + "src": "6913:69:0" }, { "body": { - "id": 520, + "id": 529, "nodeType": "Block", - "src": "6831:37:0", + "src": "7046:37:0", "statements": [ { "expression": { @@ -26717,31 +29678,31 @@ "expression": { "argumentTypes": [], "expression": { - "id": 515, + "id": 524, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "6845:5:0", + "referencedDeclaration": 508, + "src": "7060:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 517, + "id": 526, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "6845:10:0", + "src": "7060:10:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.RoundModelCommitments storage ref[] storage pointer) returns (struct DeltaContract.RoundModelCommitments storage ref)" + "typeString": "function (struct HFLContract.RoundModelCommitments storage ref[] storage pointer) returns (struct HFLContract.RoundModelCommitments storage ref)" } }, - "id": 518, + "id": 527, "isConstant": false, "isLValue": true, "isPure": false, @@ -26749,16 +29710,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6845:12:0", + "src": "7060:12:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, - "id": 519, + "id": 528, "nodeType": "ExpressionStatement", - "src": "6845:12:0" + "src": "7060:12:0" } ] }, @@ -26767,7 +29728,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 514, + "id": 523, "isConstant": false, "isLValue": false, "isPure": false, @@ -26777,32 +29738,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 507, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 504, + "id": 513, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "6784:5:0", + "referencedDeclaration": 508, + "src": "6999:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 505, + "id": 514, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6784:12:0", + "src": "6999:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26812,21 +29773,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 506, + "id": 515, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6800:1:0", + "src": "7015:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6784:17:0", + "src": "6999:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26839,7 +29800,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 513, + "id": 522, "isConstant": false, "isLValue": false, "isPure": false, @@ -26849,32 +29810,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 511, + "id": 520, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 508, + "id": 517, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "6805:5:0", + "referencedDeclaration": 508, + "src": "7020:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 509, + "id": 518, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6805:12:0", + "src": "7020:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26884,21 +29845,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 510, + "id": 519, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6820:1:0", + "src": "7035:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "6805:16:0", + "src": "7020:16:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26907,55 +29868,55 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 512, + "id": 521, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6824:5:0", + "referencedDeclaration": 414, + "src": "7039:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6805:24:0", + "src": "7020:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6784:45:0", + "src": "6999:45:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 521, + "id": 530, "nodeType": "WhileStatement", - "src": "6777:91:0" + "src": "6992:91:0" }, { "eventCall": { "arguments": [ { - "id": 523, + "id": 532, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6893:6:0", + "referencedDeclaration": 412, + "src": "7108:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 524, + "id": 533, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6901:5:0", + "referencedDeclaration": 414, + "src": "7116:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -26973,18 +29934,18 @@ "typeString": "uint64" } ], - "id": 522, + "id": 531, "name": "RoundStart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 128, - "src": "6882:10:0", + "referencedDeclaration": 132, + "src": "7097:10:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", "typeString": "function (bytes32,uint64)" } }, - "id": 525, + "id": 534, "isConstant": false, "isLValue": false, "isPure": false, @@ -26992,101 +29953,101 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6882:25:0", + "src": "7097:25:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 526, + "id": 535, "nodeType": "EmitStatement", - "src": "6877:30:0" + "src": "7092:30:0" } ] }, "documentation": { - "id": 401, + "id": 410, "nodeType": "StructuredDocumentation", - "src": "5742:197:0", + "src": "5957:197:0", "text": " @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n @param taskId taskId\n @param round the round to start" }, "functionSelector": "07dcfa8e", - "id": 528, + "id": 537, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 412, + "id": 421, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6086:6:0", + "referencedDeclaration": 412, + "src": "6301:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 413, + "id": 422, "kind": "modifierInvocation", "modifierName": { - "id": 411, + "id": 420, "name": "taskExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 206, - "src": "6075:10:0" + "referencedDeclaration": 210, + "src": "6290:10:0" }, "nodeType": "ModifierInvocation", - "src": "6075:18:0" + "src": "6290:18:0" }, { "arguments": [ { - "id": 415, + "id": 424, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6104:6:0", + "referencedDeclaration": 412, + "src": "6319:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 416, + "id": 425, "kind": "modifierInvocation", "modifierName": { - "id": 414, + "id": 423, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "6094:9:0" + "referencedDeclaration": 282, + "src": "6309:9:0" }, "nodeType": "ModifierInvocation", - "src": "6094:17:0" + "src": "6309:17:0" } ], "name": "startRound", - "nameLocation": "5953:10:0", + "nameLocation": "6168:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 410, + "id": 419, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 403, + "id": 412, "mutability": "mutable", "name": "taskId", - "nameLocation": "5981:6:0", + "nameLocation": "6196:6:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "5973:14:0", + "scope": 537, + "src": "6188:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27094,10 +30055,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 402, + "id": 411, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5973:7:0", + "src": "6188:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27107,13 +30068,13 @@ }, { "constant": false, - "id": 405, + "id": 414, "mutability": "mutable", "name": "round", - "nameLocation": "6004:5:0", + "nameLocation": "6219:5:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "5997:12:0", + "scope": 537, + "src": "6212:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27121,10 +30082,10 @@ "typeString": "uint64" }, "typeName": { - "id": 404, + "id": 413, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "5997:6:0", + "src": "6212:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -27134,13 +30095,13 @@ }, { "constant": false, - "id": 407, + "id": 416, "mutability": "mutable", "name": "maxSample", - "nameLocation": "6026:9:0", + "nameLocation": "6241:9:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "6019:16:0", + "scope": 537, + "src": "6234:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27148,10 +30109,10 @@ "typeString": "uint32" }, "typeName": { - "id": 406, + "id": 415, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "6019:6:0", + "src": "6234:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -27161,13 +30122,13 @@ }, { "constant": false, - "id": 409, + "id": 418, "mutability": "mutable", "name": "minSample", - "nameLocation": "6052:9:0", + "nameLocation": "6267:9:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "6045:16:0", + "scope": 537, + "src": "6260:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27175,10 +30136,10 @@ "typeString": "uint32" }, "typeName": { - "id": 408, + "id": 417, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "6045:6:0", + "src": "6260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -27187,97 +30148,97 @@ "visibility": "internal" } ], - "src": "5963:104:0" + "src": "6178:104:0" }, "returnParameters": { - "id": 417, + "id": 426, "nodeType": "ParameterList", "parameters": [], - "src": "6112:0:0" + "src": "6327:0:0" }, - "scope": 1663, - "src": "5944:970:0", + "scope": 1927, + "src": "6159:970:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 620, + "id": 629, "nodeType": "Block", - "src": "7375:583:0", + "src": "7590:583:0", "statements": [ { "assignments": [ - 553 + 562 ], "declarations": [ { "constant": false, - "id": 553, + "id": 562, "mutability": "mutable", "name": "rounds", - "nameLocation": "7405:6:0", + "nameLocation": "7620:6:0", "nodeType": "VariableDeclaration", - "scope": 620, - "src": "7385:26:0", + "scope": 629, + "src": "7600:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 551, + "id": 560, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 550, + "id": 559, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "7385:9:0" + "referencedDeclaration": 85, + "src": "7600:9:0" }, - "referencedDeclaration": 83, - "src": "7385:9:0", + "referencedDeclaration": 85, + "src": "7600:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 552, + "id": 561, "nodeType": "ArrayTypeName", - "src": "7385:11:0", + "src": "7600:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 557, + "id": 566, "initialValue": { "baseExpression": { - "id": 554, + "id": 563, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "7414:10:0", + "src": "7629:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 556, + "id": 565, "indexExpression": { - "id": 555, + "id": 564, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 531, - "src": "7425:6:0", + "referencedDeclaration": 540, + "src": "7640:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27288,101 +30249,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7414:18:0", + "src": "7629:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7385:47:0" + "src": "7600:47:0" }, { "assignments": [ - 560 + 569 ], "declarations": [ { "constant": false, - "id": 560, + "id": 569, "mutability": "mutable", "name": "thisRound", - "nameLocation": "7460:9:0", + "nameLocation": "7675:9:0", "nodeType": "VariableDeclaration", - "scope": 620, - "src": "7442:27:0", + "scope": 629, + "src": "7657:27:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 559, + "id": 568, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 558, + "id": 567, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "7442:9:0" + "referencedDeclaration": 85, + "src": "7657:9:0" }, - "referencedDeclaration": 83, - "src": "7442:9:0", + "referencedDeclaration": 85, + "src": "7657:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 567, + "id": 576, "initialValue": { "baseExpression": { - "id": 561, + "id": 570, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "7472:6:0", + "referencedDeclaration": 562, + "src": "7687:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 566, + "id": 575, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 565, + "id": 574, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 562, + "id": 571, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "7479:6:0", + "referencedDeclaration": 562, + "src": "7694:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 563, + "id": 572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7479:13:0", + "src": "7694:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27392,21 +30353,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 564, + "id": 573, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7495:1:0", + "src": "7710:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7479:17:0", + "src": "7694:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27417,14 +30378,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7472:25:0", + "src": "7687:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7442:55:0" + "src": "7657:55:0" }, { "expression": { @@ -27434,7 +30395,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 580, + "id": 589, "isConstant": false, "isLValue": false, "isPure": false, @@ -27444,7 +30405,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 574, + "id": 583, "isConstant": false, "isLValue": false, "isPure": false, @@ -27454,32 +30415,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 572, + "id": 581, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 569, + "id": 578, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "7528:6:0", + "referencedDeclaration": 562, + "src": "7743:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 570, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7528:13:0", + "src": "7743:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27489,21 +30450,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 571, + "id": 580, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7544:1:0", + "src": "7759:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7528:17:0", + "src": "7743:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27512,18 +30473,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 573, + "id": 582, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 533, - "src": "7549:5:0", + "referencedDeclaration": 542, + "src": "7764:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "7528:26:0", + "src": "7743:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27534,56 +30495,56 @@ "rightExpression": { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 579, + "id": 588, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 575, + "id": 584, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7574:9:0", + "referencedDeclaration": 569, + "src": "7789:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 576, + "id": 585, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "7574:16:0", + "referencedDeclaration": 76, + "src": "7789:16:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 577, + "id": 586, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "7594:11:0", + "src": "7809:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 578, + "id": 587, "isConstant": false, "isLValue": false, "isPure": true, @@ -27591,19 +30552,19 @@ "memberName": "Started", "nodeType": "MemberAccess", "referencedDeclaration": 9, - "src": "7594:19:0", + "src": "7809:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "7574:39:0", + "src": "7789:39:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7528:85:0", + "src": "7743:85:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27611,14 +30572,14 @@ }, { "hexValue": "6a6f696e2070686173652068617320706173736564", - "id": 581, + "id": 590, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7627:23:0", + "src": "7842:23:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2", "typeString": "literal_string \"join phase has passed\"" @@ -27637,7 +30598,7 @@ "typeString": "literal_string \"join phase has passed\"" } ], - "id": 568, + "id": 577, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -27645,13 +30606,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7507:7:0", + "src": "7722:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 582, + "id": 591, "isConstant": false, "isLValue": false, "isPure": false, @@ -27659,16 +30620,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7507:153:0", + "src": "7722:153:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 583, + "id": 592, "nodeType": "ExpressionStatement", - "src": "7507:153:0" + "src": "7722:153:0" }, { "expression": { @@ -27678,7 +30639,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 593, + "id": 602, "isConstant": false, "isLValue": false, "isPure": false, @@ -27688,53 +30649,53 @@ "expression": { "baseExpression": { "expression": { - "id": 585, + "id": 594, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7691:9:0", + "referencedDeclaration": 569, + "src": "7906:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 586, + "id": 595, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "7691:20:0", + "referencedDeclaration": 81, + "src": "7906:20:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 589, + "id": 598, "indexExpression": { "expression": { - "id": 587, + "id": 596, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7712:3:0", + "src": "7927:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 588, + "id": 597, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7712:10:0", + "src": "7927:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27745,34 +30706,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7691:32:0", + "src": "7906:32:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 590, + "id": 599, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "pk1", "nodeType": "MemberAccess", - "referencedDeclaration": 62, - "src": "7691:36:0", + "referencedDeclaration": 64, + "src": "7906:36:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 591, + "id": 600, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7691:43:0", + "src": "7906:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27782,21 +30743,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 592, + "id": 601, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7738:1:0", + "src": "7953:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7691:48:0", + "src": "7906:48:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27804,14 +30765,14 @@ }, { "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469706c652074696d6573", - "id": 594, + "id": 603, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7753:43:0", + "src": "7968:43:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172", "typeString": "literal_string \"Cannot join the same round multiple times\"" @@ -27830,7 +30791,7 @@ "typeString": "literal_string \"Cannot join the same round multiple times\"" } ], - "id": 584, + "id": 593, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -27838,13 +30799,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7670:7:0", + "src": "7885:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 595, + "id": 604, "isConstant": false, "isLValue": false, "isPure": false, @@ -27852,20 +30813,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7670:136:0", + "src": "7885:136:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 596, + "id": 605, "nodeType": "ExpressionStatement", - "src": "7670:136:0" + "src": "7885:136:0" }, { "expression": { - "id": 607, + "id": 616, "isConstant": false, "isLValue": false, "isPure": false, @@ -27873,53 +30834,53 @@ "leftHandSide": { "baseExpression": { "expression": { - "id": 597, + "id": 606, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7816:9:0", + "referencedDeclaration": 569, + "src": "8031:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 601, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "7816:20:0", + "referencedDeclaration": 81, + "src": "8031:20:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 602, + "id": 611, "indexExpression": { "expression": { - "id": 599, + "id": 608, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7837:3:0", + "src": "8052:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 600, + "id": 609, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7837:10:0", + "src": "8052:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27930,10 +30891,10 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7816:32:0", + "src": "8031:32:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, "nodeType": "Assignment", @@ -27941,24 +30902,24 @@ "rightHandSide": { "arguments": [ { - "id": 604, + "id": 613, "name": "pk1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 535, - "src": "7867:3:0", + "referencedDeclaration": 544, + "src": "8082:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, { - "id": 605, + "id": 614, "name": "pk2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 537, - "src": "7877:3:0", + "referencedDeclaration": 546, + "src": "8092:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -27976,18 +30937,18 @@ "typeString": "bytes calldata" } ], - "id": 603, + "id": 612, "name": "Candidate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "7851:9:0", + "referencedDeclaration": 67, + "src": "8066:9:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Candidate_$65_storage_ptr_$", - "typeString": "type(struct DeltaContract.Candidate storage pointer)" + "typeIdentifier": "t_type$_t_struct$_Candidate_$67_storage_ptr_$", + "typeString": "type(struct HFLContract.Candidate storage pointer)" } }, - "id": 606, + "id": 615, "isConstant": false, "isLValue": false, "isPure": false, @@ -27998,47 +30959,47 @@ "pk2" ], "nodeType": "FunctionCall", - "src": "7851:31:0", + "src": "8066:31:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate memory" + "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", + "typeString": "struct HFLContract.Candidate memory" } }, - "src": "7816:66:0", + "src": "8031:66:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 608, + "id": 617, "nodeType": "ExpressionStatement", - "src": "7816:66:0" + "src": "8031:66:0" }, { "expression": { "arguments": [ { "expression": { - "id": 614, + "id": 623, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7919:3:0", + "src": "8134:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 615, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7919:10:0", + "src": "8134:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28054,45 +31015,45 @@ ], "expression": { "expression": { - "id": 609, + "id": 618, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7892:9:0", + "referencedDeclaration": 569, + "src": "8107:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 612, + "id": 621, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "joinedAddrs", "nodeType": "MemberAccess", - "referencedDeclaration": 82, - "src": "7892:21:0", + "referencedDeclaration": 84, + "src": "8107:21:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 613, + "id": 622, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "7892:26:0", + "src": "8107:26:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", "typeString": "function (address[] storage pointer,address)" } }, - "id": 616, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -28100,135 +31061,848 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7892:38:0", + "src": "8107:38:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 617, + "id": 626, "nodeType": "ExpressionStatement", - "src": "7892:38:0" + "src": "8107:38:0" }, { "expression": { "hexValue": "74727565", - "id": 618, + "id": 627, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7947:4:0", + "src": "8162:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 548, - "id": 619, + "functionReturnParameters": 557, + "id": 628, "nodeType": "Return", - "src": "7940:11:0" + "src": "8155:11:0" } ] }, "documentation": { - "id": 529, + "id": 538, "nodeType": "StructuredDocumentation", - "src": "6920:255:0", + "src": "7135:255:0", "text": " @dev called by client, join for that round of computation\n @param taskId taskId\n @param round the round to join\n @param pk1 used for secure communication channel establishment\n @param pk2 used for mask generation" }, "functionSelector": "91d48f52", - "id": 621, + "id": 630, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 540, + "id": 549, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 531, - "src": "7325:6:0", + "referencedDeclaration": 540, + "src": "7540:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 541, + "id": 550, "kind": "modifierInvocation", "modifierName": { - "id": 539, + "id": 548, "name": "taskExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 206, - "src": "7314:10:0" + "referencedDeclaration": 210, + "src": "7529:10:0" }, "nodeType": "ModifierInvocation", - "src": "7314:18:0" + "src": "7529:18:0" }, { "arguments": [ { - "id": 543, + "id": 552, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 531, - "src": "7345:6:0", + "referencedDeclaration": 540, + "src": "7560:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 544, + "id": 553, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 533, - "src": "7353:5:0", + "referencedDeclaration": 542, + "src": "7568:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 545, + "id": 554, "kind": "modifierInvocation", "modifierName": { - "id": 542, + "id": 551, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "7333:11:0" + "referencedDeclaration": 240, + "src": "7548:11:0" }, "nodeType": "ModifierInvocation", - "src": "7333:26:0" + "src": "7548:26:0" } ], "name": "joinRound", - "nameLocation": "7189:9:0", + "nameLocation": "7404:9:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 538, + "id": 547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 540, + "mutability": "mutable", + "name": "taskId", + "nameLocation": "7431:6:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7423:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 539, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7423:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 542, + "mutability": "mutable", + "name": "round", + "nameLocation": "7454:5:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7447:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 541, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7447:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 544, + "mutability": "mutable", + "name": "pk1", + "nameLocation": "7484:3:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7469:18:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 543, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7469:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 546, + "mutability": "mutable", + "name": "pk2", + "nameLocation": "7512:3:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7497:18:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 545, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7497:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7413:108:0" + }, + "returnParameters": { + "id": 557, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 556, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7584:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 555, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7584:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7583:6:0" + }, + "scope": 1927, + "src": "7395:778:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 692, + "nodeType": "Block", + "src": "8468:301:0", + "statements": [ + { + "assignments": [ + 653 + ], + "declarations": [ + { + "constant": false, + "id": 653, + "mutability": "mutable", + "name": "candidates", + "nameLocation": "8497:10:0", + "nodeType": "VariableDeclaration", + "scope": 692, + "src": "8478:29:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate[]" + }, + "typeName": { + "baseType": { + "id": 651, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 650, + "name": "Candidate", + "nodeType": "IdentifierPath", + "referencedDeclaration": 67, + "src": "8478:9:0" + }, + "referencedDeclaration": 67, + "src": "8478:9:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" + } + }, + "id": 652, + "nodeType": "ArrayTypeName", + "src": "8478:11:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.Candidate[]" + } + }, + "visibility": "internal" + } + ], + "id": 661, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 658, + "name": "candidateAddrs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 638, + "src": "8526:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8526:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 657, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "8510:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct HFLContract.Candidate memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 655, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 654, + "name": "Candidate", + "nodeType": "IdentifierPath", + "referencedDeclaration": 67, + "src": "8514:9:0" + }, + "referencedDeclaration": 67, + "src": "8514:9:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" + } + }, + "id": 656, + "nodeType": "ArrayTypeName", + "src": "8514:11:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.Candidate[]" + } + } + }, + "id": 660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8510:38:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8478:70:0" + }, + { + "body": { + "id": 688, + "nodeType": "Block", + "src": "8610:126:0", + "statements": [ + { + "expression": { + "id": 686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 673, + "name": "candidates", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 653, + "src": "8624:10:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate memory[] memory" + } + }, + "id": 675, + "indexExpression": { + "id": 674, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8635:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8624:13:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", + "typeString": "struct HFLContract.Candidate memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 676, + "name": "taskRounds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25, + "src": "8640:10:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" + } + }, + "id": 678, + "indexExpression": { + "id": 677, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 633, + "src": "8651:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8640:18:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" + } + }, + "id": 680, + "indexExpression": { + "id": 679, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 635, + "src": "8659:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8640:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" + } + }, + "id": 681, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "candidates", + "nodeType": "MemberAccess", + "referencedDeclaration": 81, + "src": "8640:36:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" + } + }, + "id": 685, + "indexExpression": { + "baseExpression": { + "id": 682, + "name": "candidateAddrs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 638, + "src": "8694:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 684, + "indexExpression": { + "id": 683, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8709:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8694:17:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8640:85:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" + } + }, + "src": "8624:101:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", + "typeString": "struct HFLContract.Candidate memory" + } + }, + "id": 687, + "nodeType": "ExpressionStatement", + "src": "8624:101:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 666, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8578:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 667, + "name": "candidateAddrs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 638, + "src": "8582:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8582:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8578:25:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 689, + "initializationExpression": { + "assignments": [ + 663 + ], + "declarations": [ + { + "constant": false, + "id": 663, + "mutability": "mutable", + "name": "i", + "nameLocation": "8571:1:0", + "nodeType": "VariableDeclaration", + "scope": 689, + "src": "8563:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 662, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8563:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 665, + "initialValue": { + "hexValue": "30", + "id": 664, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8575:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8563:13:0" + }, + "loopExpression": { + "expression": { + "id": 671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8605:3:0", + "subExpression": { + "id": 670, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8605:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 672, + "nodeType": "ExpressionStatement", + "src": "8605:3:0" + }, + "nodeType": "ForStatement", + "src": "8558:178:0" + }, + { + "expression": { + "id": 690, + "name": "candidates", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 653, + "src": "8752:10:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate memory[] memory" + } + }, + "functionReturnParameters": 648, + "id": 691, + "nodeType": "Return", + "src": "8745:17:0" + } + ] + }, + "documentation": { + "id": 631, + "nodeType": "StructuredDocumentation", + "src": "8179:92:0", + "text": " @dev called by anyone, get Client Pks\n @return candidate (pk1,pk2)" + }, + "functionSelector": "e26e8871", + "id": 693, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 641, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 633, + "src": "8424:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 642, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 635, + "src": "8432:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "id": 643, + "kind": "modifierInvocation", + "modifierName": { + "id": 640, + "name": "roundExists", + "nodeType": "IdentifierPath", + "referencedDeclaration": 240, + "src": "8412:11:0" + }, + "nodeType": "ModifierInvocation", + "src": "8412:26:0" + } + ], + "name": "getClientPublickeys", + "nameLocation": "8285:19:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 639, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 531, + "id": 633, "mutability": "mutable", "name": "taskId", - "nameLocation": "7216:6:0", + "nameLocation": "8322:6:0", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7208:14:0", + "scope": 693, + "src": "8314:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28236,10 +31910,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 530, + "id": 632, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "7208:7:0", + "src": "8314:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28249,13 +31923,13 @@ }, { "constant": false, - "id": 533, + "id": 635, "mutability": "mutable", "name": "round", - "nameLocation": "7239:5:0", + "nameLocation": "8345:5:0", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7232:12:0", + "scope": 693, + "src": "8338:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28263,10 +31937,10 @@ "typeString": "uint64" }, "typeName": { - "id": 532, + "id": 634, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "7232:6:0", + "src": "8338:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -28276,501 +31950,169 @@ }, { "constant": false, - "id": 535, + "id": 638, "mutability": "mutable", - "name": "pk1", - "nameLocation": "7269:3:0", + "name": "candidateAddrs", + "nameLocation": "8379:14:0", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7254:18:0", + "scope": 693, + "src": "8360:33:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 534, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7254:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 537, - "mutability": "mutable", - "name": "pk2", - "nameLocation": "7297:3:0", - "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7282:18:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 536, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7282:5:0", + "baseType": { + "id": 636, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8360:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 637, + "nodeType": "ArrayTypeName", + "src": "8360:9:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" } ], - "src": "7198:108:0" + "src": "8304:95:0" }, "returnParameters": { - "id": 548, + "id": 648, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 547, + "id": 647, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7369:4:0", + "scope": 693, + "src": "8448:18:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate[]" }, "typeName": { - "id": 546, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7369:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7368:6:0" - }, - "scope": 1663, - "src": "7180:778:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 649, - "nodeType": "Block", - "src": "8285:80:0", - "statements": [ - { - "expression": { - "id": 647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 638, - "name": "candidate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 636, - "src": "8295:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 639, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "8307:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 641, - "indexExpression": { - "id": 640, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 624, - "src": "8318:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8307:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" - } - }, - "id": 643, - "indexExpression": { - "id": 642, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "8326:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8307:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" - } - }, + "baseType": { + "id": 645, + "nodeType": "UserDefinedTypeName", + "pathNode": { "id": 644, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "8307:36:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" - } - }, - "id": 646, - "indexExpression": { - "id": 645, - "name": "candidateAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 628, - "src": "8344:13:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "name": "Candidate", + "nodeType": "IdentifierPath", + "referencedDeclaration": 67, + "src": "8448:9:0" }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8307:51:0", + "referencedDeclaration": 67, + "src": "8448:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" } }, - "src": "8295:63:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate memory" - } - }, - "id": 648, - "nodeType": "ExpressionStatement", - "src": "8295:63:0" - } - ] - }, - "documentation": { - "id": 622, - "nodeType": "StructuredDocumentation", - "src": "7964:92:0", - "text": " @dev called by anyone, get Client Pks\n @return candidate (pk1,pk2)" - }, - "functionSelector": "da0fe898", - "id": 650, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 631, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 624, - "src": "8221:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 632, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "8229:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 633, - "kind": "modifierInvocation", - "modifierName": { - "id": 630, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "8209:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "8209:26:0" - } - ], - "name": "getClientPublickeys", - "nameLocation": "8070:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 629, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 624, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "8107:6:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8099:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 623, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8099:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 626, - "mutability": "mutable", - "name": "round", - "nameLocation": "8130:5:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8123:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 625, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "8123:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 628, - "mutability": "mutable", - "name": "candidateAddr", - "nameLocation": "8153:13:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8145:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 627, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8145:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "8089:83:0" - }, - "returnParameters": { - "id": 637, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 636, - "mutability": "mutable", - "name": "candidate", - "nameLocation": "8270:9:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8253:26:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate" - }, - "typeName": { - "id": 635, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 634, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 65, - "src": "8253:9:0" - }, - "referencedDeclaration": 65, - "src": "8253:9:0", + "id": 646, + "nodeType": "ArrayTypeName", + "src": "8448:11:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage_ptr", - "typeString": "struct DeltaContract.Candidate" + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.Candidate[]" } }, "visibility": "internal" } ], - "src": "8252:28:0" + "src": "8447:20:0" }, - "scope": 1663, - "src": "8061:304:0", + "scope": 1927, + "src": "8276:493:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 693, + "id": 736, "nodeType": "Block", - "src": "8714:331:0", + "src": "9118:331:0", "statements": [ { "assignments": [ - 667 + 710 ], "declarations": [ { "constant": false, - "id": 667, + "id": 710, "mutability": "mutable", "name": "temp", - "nameLocation": "8742:4:0", + "nameLocation": "9146:4:0", "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8724:22:0", + "scope": 736, + "src": "9128:22:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 666, + "id": 709, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 665, + "id": 708, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "8724:9:0" + "referencedDeclaration": 85, + "src": "9128:9:0" }, - "referencedDeclaration": 83, - "src": "8724:9:0", + "referencedDeclaration": 85, + "src": "9128:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 673, + "id": 716, "initialValue": { "baseExpression": { "baseExpression": { - "id": 668, + "id": 711, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "8749:10:0", + "src": "9153:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 670, + "id": 713, "indexExpression": { - "id": 669, + "id": 712, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8760:6:0", + "referencedDeclaration": 696, + "src": "9164:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28781,20 +32123,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8749:18:0", + "src": "9153:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 672, + "id": 715, "indexExpression": { - "id": 671, + "id": 714, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "8768:5:0", + "referencedDeclaration": 698, + "src": "9172:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -28805,32 +32147,32 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8749:25:0", + "src": "9153:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "8724:50:0" + "src": "9128:50:0" }, { "expression": { - "id": 691, + "id": 734, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 674, + "id": 717, "name": "taskround", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8784:9:0", + "referencedDeclaration": 706, + "src": "9188:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct memory" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" } }, "nodeType": "Assignment", @@ -28839,26 +32181,26 @@ "arguments": [ { "expression": { - "id": 676, + "id": 719, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8847:4:0", + "referencedDeclaration": 710, + "src": "9251:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 677, + "id": 720, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currentRound", "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "8847:17:0", + "referencedDeclaration": 69, + "src": "9251:17:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -28866,26 +32208,26 @@ }, { "expression": { - "id": 678, + "id": 721, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8889:4:0", + "referencedDeclaration": 710, + "src": "9293:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 679, + "id": 722, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "maxSample", "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "8889:14:0", + "referencedDeclaration": 71, + "src": "9293:14:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -28893,26 +32235,26 @@ }, { "expression": { - "id": 680, + "id": 723, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8928:4:0", + "referencedDeclaration": 710, + "src": "9332:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 681, + "id": 724, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "minSample", "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "8928:14:0", + "referencedDeclaration": 73, + "src": "9332:14:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -28922,29 +32264,29 @@ "arguments": [ { "expression": { - "id": 685, + "id": 728, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8972:4:0", + "referencedDeclaration": 710, + "src": "9376:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 686, + "id": 729, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "8972:11:0", + "referencedDeclaration": 76, + "src": "9376:11:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } } ], @@ -28952,45 +32294,45 @@ "argumentTypes": [ { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } ], "components": [ { - "id": 683, + "id": 726, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8965:5:0", + "src": "9369:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { - "id": 682, + "id": 725, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "8965:5:0", + "src": "9369:5:0", "typeDescriptions": {} } } ], - "id": 684, + "id": 727, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8964:7:0", + "src": "9368:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" } }, - "id": 687, + "id": 730, "isConstant": false, "isLValue": false, "isPure": false, @@ -28998,7 +32340,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8964:20:0", + "src": "9368:20:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -29007,26 +32349,26 @@ }, { "expression": { - "id": 688, + "id": 731, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "9011:4:0", + "referencedDeclaration": 710, + "src": "9415:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 689, + "id": 732, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "joinedAddrs", "nodeType": "MemberAccess", - "referencedDeclaration": 82, - "src": "9011:16:0", + "referencedDeclaration": 84, + "src": "9415:16:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" @@ -29056,18 +32398,18 @@ "typeString": "address[] storage ref" } ], - "id": 675, + "id": 718, "name": "ExtCallTaskRoundStruct", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 95, - "src": "8796:22:0", + "referencedDeclaration": 97, + "src": "9200:22:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_ExtCallTaskRoundStruct_$95_storage_ptr_$", - "typeString": "type(struct DeltaContract.ExtCallTaskRoundStruct storage pointer)" + "typeIdentifier": "t_type$_t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr_$", + "typeString": "type(struct HFLContract.ExtCallTaskRoundStruct storage pointer)" } }, - "id": 690, + "id": 733, "isConstant": false, "isLValue": false, "isPure": false, @@ -29081,92 +32423,92 @@ "joinedAddrs" ], "nodeType": "FunctionCall", - "src": "8796:242:0", + "src": "9200:242:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct memory" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" } }, - "src": "8784:254:0", + "src": "9188:254:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct memory" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" } }, - "id": 692, + "id": 735, "nodeType": "ExpressionStatement", - "src": "8784:254:0" + "src": "9188:254:0" } ] }, "documentation": { - "id": 651, + "id": 694, "nodeType": "StructuredDocumentation", - "src": "8371:161:0", + "src": "8775:161:0", "text": " @dev getting task round infos\n @param taskId taskId\n @param round the round to fetch\n @return taskround the task round infos" }, "functionSelector": "4893b362", - "id": 694, + "id": 737, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 658, + "id": 701, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8637:6:0", + "referencedDeclaration": 696, + "src": "9041:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 659, + "id": 702, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "8645:5:0", + "referencedDeclaration": 698, + "src": "9049:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 660, + "id": 703, "kind": "modifierInvocation", "modifierName": { - "id": 657, + "id": 700, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "8625:11:0" + "referencedDeclaration": 240, + "src": "9029:11:0" }, "nodeType": "ModifierInvocation", - "src": "8625:26:0" + "src": "9029:26:0" } ], "name": "getTaskRound", - "nameLocation": "8546:12:0", + "nameLocation": "8950:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 656, + "id": 699, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 653, + "id": 696, "mutability": "mutable", "name": "taskId", - "nameLocation": "8567:6:0", + "nameLocation": "8971:6:0", "nodeType": "VariableDeclaration", - "scope": 694, - "src": "8559:14:0", + "scope": 737, + "src": "8963:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29174,10 +32516,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 652, + "id": 695, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8559:7:0", + "src": "8963:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29187,13 +32529,13 @@ }, { "constant": false, - "id": 655, + "id": 698, "mutability": "mutable", "name": "round", - "nameLocation": "8582:5:0", + "nameLocation": "8986:5:0", "nodeType": "VariableDeclaration", - "scope": 694, - "src": "8575:12:0", + "scope": 737, + "src": "8979:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29201,10 +32543,10 @@ "typeString": "uint64" }, "typeName": { - "id": 654, + "id": 697, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "8575:6:0", + "src": "8979:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -29213,60 +32555,60 @@ "visibility": "internal" } ], - "src": "8558:30:0" + "src": "8962:30:0" }, "returnParameters": { - "id": 664, + "id": 707, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 663, + "id": 706, "mutability": "mutable", "name": "taskround", - "nameLocation": "8699:9:0", + "nameLocation": "9103:9:0", "nodeType": "VariableDeclaration", - "scope": 694, - "src": "8669:39:0", + "scope": 737, + "src": "9073:39:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct" }, "typeName": { - "id": 662, + "id": 705, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 661, + "id": 704, "name": "ExtCallTaskRoundStruct", "nodeType": "IdentifierPath", - "referencedDeclaration": 95, - "src": "8669:22:0" + "referencedDeclaration": 97, + "src": "9073:22:0" }, - "referencedDeclaration": 95, - "src": "8669:22:0", + "referencedDeclaration": 97, + "src": "9073:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_storage_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct" } }, "visibility": "internal" } ], - "src": "8668:41:0" + "src": "9072:41:0" }, - "scope": 1663, - "src": "8537:508:0", + "scope": 1927, + "src": "8941:508:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 769, + "id": 812, "nodeType": "Block", - "src": "9424:431:0", + "src": "9828:431:0", "statements": [ { "expression": { @@ -29276,32 +32618,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 716, + "id": 759, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 713, + "id": 756, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9442:5:0", + "referencedDeclaration": 745, + "src": "9846:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 714, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "9442:12:0", + "src": "9846:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29311,21 +32653,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 715, + "id": 758, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9457:1:0", + "src": "9861:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "9442:16:0", + "src": "9846:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -29333,14 +32675,14 @@ }, { "hexValue": "4d7573742070726f7669646520616464726573736573", - "id": 717, + "id": 760, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9460:24:0", + "src": "9864:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171", "typeString": "literal_string \"Must provide addresses\"" @@ -29359,7 +32701,7 @@ "typeString": "literal_string \"Must provide addresses\"" } ], - "id": 712, + "id": 755, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29367,13 +32709,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "9434:7:0", + "src": "9838:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 718, + "id": 761, "isConstant": false, "isLValue": false, "isPure": false, @@ -29381,80 +32723,80 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9434:51:0", + "src": "9838:51:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 719, + "id": 762, "nodeType": "ExpressionStatement", - "src": "9434:51:0" + "src": "9838:51:0" }, { "assignments": [ - 722 + 765 ], "declarations": [ { "constant": false, - "id": 722, + "id": 765, "mutability": "mutable", "name": "curRound", - "nameLocation": "9513:8:0", + "nameLocation": "9917:8:0", "nodeType": "VariableDeclaration", - "scope": 769, - "src": "9495:26:0", + "scope": 812, + "src": "9899:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 721, + "id": 764, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 720, + "id": 763, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "9495:9:0" + "referencedDeclaration": 85, + "src": "9899:9:0" }, - "referencedDeclaration": 83, - "src": "9495:9:0", + "referencedDeclaration": 85, + "src": "9899:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 728, + "id": 771, "initialValue": { "baseExpression": { "baseExpression": { - "id": 723, + "id": 766, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "9524:10:0", + "src": "9928:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 725, + "id": 768, "indexExpression": { - "id": 724, + "id": 767, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9535:6:0", + "referencedDeclaration": 740, + "src": "9939:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29465,20 +32807,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9524:18:0", + "src": "9928:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 727, + "id": 770, "indexExpression": { - "id": 726, + "id": 769, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9543:5:0", + "referencedDeclaration": 742, + "src": "9947:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -29489,20 +32831,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9524:25:0", + "src": "9928:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "9495:54:0" + "src": "9899:54:0" }, { "body": { - "id": 754, + "id": 797, "nodeType": "Block", - "src": "9602:148:0", + "src": "10006:148:0", "statements": [ { "expression": { @@ -29512,7 +32854,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 750, + "id": 793, "isConstant": false, "isLValue": false, "isPure": false, @@ -29522,53 +32864,53 @@ "expression": { "baseExpression": { "expression": { - "id": 741, + "id": 784, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 722, - "src": "9641:8:0", + "referencedDeclaration": 765, + "src": "10045:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 742, + "id": 785, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "9641:19:0", + "referencedDeclaration": 81, + "src": "10045:19:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 746, + "id": 789, "indexExpression": { "baseExpression": { - "id": 743, + "id": 786, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9661:5:0", + "referencedDeclaration": 745, + "src": "10065:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 745, + "id": 788, "indexExpression": { - "id": 744, + "id": 787, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "9667:1:0", + "referencedDeclaration": 773, + "src": "10071:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29579,7 +32921,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9661:8:0", + "src": "10065:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29590,34 +32932,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9641:29:0", + "src": "10045:29:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 747, + "id": 790, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "pk1", "nodeType": "MemberAccess", - "referencedDeclaration": 62, - "src": "9641:33:0", + "referencedDeclaration": 64, + "src": "10045:33:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 748, + "id": 791, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "9641:40:0", + "src": "10045:40:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29627,21 +32969,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 749, + "id": 792, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9684:1:0", + "src": "10088:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "9641:44:0", + "src": "10045:44:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -29649,14 +32991,14 @@ }, { "hexValue": "43616e646964617465206d757374206578697374", - "id": 751, + "id": 794, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9703:22:0", + "src": "10107:22:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", "typeString": "literal_string \"Candidate must exist\"" @@ -29675,7 +33017,7 @@ "typeString": "literal_string \"Candidate must exist\"" } ], - "id": 740, + "id": 783, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29683,13 +33025,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "9616:7:0", + "src": "10020:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 752, + "id": 795, "isConstant": false, "isLValue": false, "isPure": false, @@ -29697,16 +33039,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9616:123:0", + "src": "10020:123:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 753, + "id": 796, "nodeType": "ExpressionStatement", - "src": "9616:123:0" + "src": "10020:123:0" } ] }, @@ -29715,18 +33057,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 736, + "id": 779, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 733, + "id": 776, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "9579:1:0", + "referencedDeclaration": 773, + "src": "9983:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29736,51 +33078,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 734, + "id": 777, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9583:5:0", + "referencedDeclaration": 745, + "src": "9987:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 735, + "id": 778, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "9583:12:0", + "src": "9987:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9579:16:0", + "src": "9983:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 755, + "id": 798, "initializationExpression": { "assignments": [ - 730 + 773 ], "declarations": [ { "constant": false, - "id": 730, + "id": 773, "mutability": "mutable", "name": "i", - "nameLocation": "9572:1:0", + "nameLocation": "9976:1:0", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "9564:9:0", + "scope": 798, + "src": "9968:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29788,10 +33130,10 @@ "typeString": "uint256" }, "typeName": { - "id": 729, + "id": 772, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9564:7:0", + "src": "9968:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29800,17 +33142,17 @@ "visibility": "internal" } ], - "id": 732, + "id": 775, "initialValue": { "hexValue": "30", - "id": 731, + "id": 774, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9576:1:0", + "src": "9980:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -29818,11 +33160,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "9564:13:0" + "src": "9968:13:0" }, "loopExpression": { "expression": { - "id": 738, + "id": 781, "isConstant": false, "isLValue": false, "isPure": false, @@ -29830,14 +33172,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "9597:3:0", + "src": "10001:3:0", "subExpression": { - "id": 737, + "id": 780, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "9597:1:0", + "referencedDeclaration": 773, + "src": "10001:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29848,63 +33190,63 @@ "typeString": "uint256" } }, - "id": 739, + "id": 782, "nodeType": "ExpressionStatement", - "src": "9597:3:0" + "src": "10001:3:0" }, "nodeType": "ForStatement", - "src": "9559:191:0" + "src": "9963:191:0" }, { "expression": { - "id": 761, + "id": 804, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 756, + "id": 799, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 722, - "src": "9759:8:0", + "referencedDeclaration": 765, + "src": "10163:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 758, + "id": 801, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "9759:15:0", + "referencedDeclaration": 76, + "src": "10163:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 759, + "id": 802, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "9777:11:0", + "src": "10181:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 760, + "id": 803, "isConstant": false, "isLValue": false, "isPure": true, @@ -29912,56 +33254,56 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "9777:19:0", + "src": "10181:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "9759:37:0", + "src": "10163:37:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 762, + "id": 805, "nodeType": "ExpressionStatement", - "src": "9759:37:0" + "src": "10163:37:0" }, { "eventCall": { "arguments": [ { - "id": 764, + "id": 807, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9827:6:0", + "referencedDeclaration": 740, + "src": "10231:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 765, + "id": 808, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9835:5:0", + "referencedDeclaration": 742, + "src": "10239:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 766, + "id": 809, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9842:5:0", + "referencedDeclaration": 745, + "src": "10246:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" @@ -29983,18 +33325,18 @@ "typeString": "address[] calldata" } ], - "id": 763, + "id": 806, "name": "PartnerSelected", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "9811:15:0", + "referencedDeclaration": 147, + "src": "10215:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address[] memory)" } }, - "id": 767, + "id": 810, "isConstant": false, "isLValue": false, "isPure": false, @@ -30002,113 +33344,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9811:37:0", + "src": "10215:37:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 811, "nodeType": "EmitStatement", - "src": "9806:42:0" + "src": "10210:42:0" } ] }, "documentation": { - "id": 695, + "id": 738, "nodeType": "StructuredDocumentation", - "src": "9051:204:0", + "src": "9455:204:0", "text": " @dev called by task developer, randomly choose candidates to be computation nodes\n @dev clients now should start secret sharing phase\n @param addrs selected client addresses" }, "functionSelector": "41e865cb", - "id": 770, + "id": 813, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 705, + "id": 748, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9389:6:0", + "referencedDeclaration": 740, + "src": "9793:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 706, + "id": 749, "kind": "modifierInvocation", "modifierName": { - "id": 704, + "id": 747, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "9379:9:0" + "referencedDeclaration": 282, + "src": "9783:9:0" }, "nodeType": "ModifierInvocation", - "src": "9379:17:0" + "src": "9783:17:0" }, { "arguments": [ { - "id": 708, + "id": 751, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9409:6:0", + "referencedDeclaration": 740, + "src": "9813:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 709, + "id": 752, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9417:5:0", + "referencedDeclaration": 742, + "src": "9821:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 710, + "id": 753, "kind": "modifierInvocation", "modifierName": { - "id": 707, + "id": 750, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "9397:11:0" + "referencedDeclaration": 240, + "src": "9801:11:0" }, "nodeType": "ModifierInvocation", - "src": "9397:26:0" + "src": "9801:26:0" } ], "name": "selectCandidates", - "nameLocation": "9269:16:0", + "nameLocation": "9673:16:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 703, + "id": 746, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 697, + "id": 740, "mutability": "mutable", "name": "taskId", - "nameLocation": "9303:6:0", + "nameLocation": "9707:6:0", "nodeType": "VariableDeclaration", - "scope": 770, - "src": "9295:14:0", + "scope": 813, + "src": "9699:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30116,10 +33458,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 696, + "id": 739, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "9295:7:0", + "src": "9699:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30129,13 +33471,13 @@ }, { "constant": false, - "id": 699, + "id": 742, "mutability": "mutable", "name": "round", - "nameLocation": "9326:5:0", + "nameLocation": "9730:5:0", "nodeType": "VariableDeclaration", - "scope": 770, - "src": "9319:12:0", + "scope": 813, + "src": "9723:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30143,10 +33485,10 @@ "typeString": "uint64" }, "typeName": { - "id": 698, + "id": 741, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "9319:6:0", + "src": "9723:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -30156,13 +33498,13 @@ }, { "constant": false, - "id": 702, + "id": 745, "mutability": "mutable", "name": "addrs", - "nameLocation": "9360:5:0", + "nameLocation": "9764:5:0", "nodeType": "VariableDeclaration", - "scope": 770, - "src": "9341:24:0", + "scope": 813, + "src": "9745:24:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -30171,19 +33513,19 @@ }, "typeName": { "baseType": { - "id": 700, + "id": 743, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9341:7:0", + "src": "9745:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 701, + "id": 744, "nodeType": "ArrayTypeName", - "src": "9341:9:0", + "src": "9745:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -30192,97 +33534,97 @@ "visibility": "internal" } ], - "src": "9285:86:0" + "src": "9689:86:0" }, "returnParameters": { - "id": 711, + "id": 754, "nodeType": "ParameterList", "parameters": [], - "src": "9424:0:0" + "src": "9828:0:0" }, - "scope": 1663, - "src": "9260:595:0", + "scope": 1927, + "src": "9664:595:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 821, + "id": 864, "nodeType": "Block", - "src": "10552:274:0", + "src": "10956:274:0", "statements": [ { "assignments": [ - 794 + 837 ], "declarations": [ { "constant": false, - "id": 794, + "id": 837, "mutability": "mutable", "name": "cmmts", - "nameLocation": "10594:5:0", + "nameLocation": "10998:5:0", "nodeType": "VariableDeclaration", - "scope": 821, - "src": "10562:37:0", + "scope": 864, + "src": "10966:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 792, + "id": 835, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 791, + "id": 834, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "10562:21:0" + "src": "10966:21:0" }, "referencedDeclaration": 49, - "src": "10562:21:0", + "src": "10966:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 793, + "id": 836, "nodeType": "ArrayTypeName", - "src": "10562:23:0", + "src": "10966:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 798, + "id": 841, "initialValue": { "baseExpression": { - "id": 795, + "id": 838, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "10602:21:0", + "src": "11006:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 797, + "id": 840, "indexExpression": { - "id": 796, + "id": 839, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10624:6:0", + "referencedDeclaration": 816, + "src": "11028:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30293,14 +33635,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10602:29:0", + "src": "11006:29:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10562:69:0" + "src": "10966:69:0" }, { "expression": { @@ -30310,32 +33652,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 803, + "id": 846, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 800, + "id": 843, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 794, - "src": "10649:5:0", + "referencedDeclaration": 837, + "src": "11053:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 801, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "10649:12:0", + "src": "11053:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30344,18 +33686,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 802, + "id": 845, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10665:5:0", + "referencedDeclaration": 820, + "src": "11069:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "10649:21:0", + "src": "11053:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -30363,14 +33705,14 @@ }, { "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 804, + "id": 847, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10672:28:0", + "src": "11076:28:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", "typeString": "literal_string \"The Task Round Must exists\"" @@ -30389,7 +33731,7 @@ "typeString": "literal_string \"The Task Round Must exists\"" } ], - "id": 799, + "id": 842, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -30397,13 +33739,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "10641:7:0", + "src": "11045:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 805, + "id": 848, "isConstant": false, "isLValue": false, "isPure": false, @@ -30411,79 +33753,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10641:60:0", + "src": "11045:60:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 806, + "id": 849, "nodeType": "ExpressionStatement", - "src": "10641:60:0" + "src": "11045:60:0" }, { "assignments": [ - 809 + 852 ], "declarations": [ { "constant": false, - "id": 809, + "id": 852, "mutability": "mutable", "name": "cmmt", - "nameLocation": "10741:4:0", + "nameLocation": "11145:4:0", "nodeType": "VariableDeclaration", - "scope": 821, - "src": "10711:34:0", + "scope": 864, + "src": "11115:34:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 808, + "id": 851, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 807, + "id": 850, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "10711:21:0" + "src": "11115:21:0" }, "referencedDeclaration": 49, - "src": "10711:21:0", + "src": "11115:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 813, + "id": 856, "initialValue": { "baseExpression": { - "id": 810, + "id": 853, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 794, - "src": "10748:5:0", + "referencedDeclaration": 837, + "src": "11152:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 812, + "id": 855, "indexExpression": { - "id": 811, + "id": 854, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10754:5:0", + "referencedDeclaration": 820, + "src": "11158:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -30494,29 +33836,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10748:12:0", + "src": "11152:12:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10711:49:0" + "src": "11115:49:0" }, { "expression": { - "id": 819, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 814, + "id": 857, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "10770:10:0", + "referencedDeclaration": 831, + "src": "11174:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -30527,18 +33869,18 @@ "rightHandSide": { "baseExpression": { "expression": { - "id": 815, + "id": 858, "name": "cmmt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 809, - "src": "10783:4:0", + "referencedDeclaration": 852, + "src": "11187:4:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 816, + "id": 859, "isConstant": false, "isLValue": true, "isPure": false, @@ -30546,20 +33888,20 @@ "memberName": "weightCommitment", "nodeType": "MemberAccess", "referencedDeclaration": 41, - "src": "10783:21:0", + "src": "11187:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes storage ref)" } }, - "id": 818, + "id": 861, "indexExpression": { - "id": 817, + "id": 860, "name": "clientaddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "10805:13:0", + "referencedDeclaration": 818, + "src": "11209:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30570,130 +33912,130 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10783:36:0", + "src": "11187:36:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "src": "10770:49:0", + "src": "11174:49:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 820, + "id": 863, "nodeType": "ExpressionStatement", - "src": "10770:49:0" + "src": "11174:49:0" } ] }, "documentation": { - "id": 771, + "id": 814, "nodeType": "StructuredDocumentation", - "src": "9861:426:0", + "src": "10265:426:0", "text": " @dev called by task developer, get commitments from blockchain\n @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n @param taskId taskId\n @param clientaddress the client that publish the commitments\n @param round the round of that commitment\n @return commitment commitment data" }, "functionSelector": "e36bb28c", - "id": 822, + "id": 865, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 780, + "id": 823, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10452:6:0", + "referencedDeclaration": 816, + "src": "10856:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 781, + "id": 824, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10460:5:0", + "referencedDeclaration": 820, + "src": "10864:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 782, + "id": 825, "kind": "modifierInvocation", "modifierName": { - "id": 779, + "id": 822, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "10440:11:0" + "referencedDeclaration": 240, + "src": "10844:11:0" }, "nodeType": "ModifierInvocation", - "src": "10440:26:0" + "src": "10844:26:0" }, { "arguments": [ { - "id": 784, + "id": 827, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10491:6:0", + "referencedDeclaration": 816, + "src": "10895:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 785, + "id": 828, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10499:5:0", + "referencedDeclaration": 820, + "src": "10903:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 786, + "id": 829, "kind": "modifierInvocation", "modifierName": { - "id": 783, + "id": 826, "name": "roundcmmtExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 261, - "src": "10475:15:0" + "referencedDeclaration": 265, + "src": "10879:15:0" }, "nodeType": "ModifierInvocation", - "src": "10475:30:0" + "src": "10879:30:0" } ], "name": "getResultCommitment", - "nameLocation": "10301:19:0", + "nameLocation": "10705:19:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 778, + "id": 821, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 773, + "id": 816, "mutability": "mutable", "name": "taskId", - "nameLocation": "10338:6:0", + "nameLocation": "10742:6:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10330:14:0", + "scope": 865, + "src": "10734:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30701,10 +34043,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 772, + "id": 815, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "10330:7:0", + "src": "10734:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30714,13 +34056,13 @@ }, { "constant": false, - "id": 775, + "id": 818, "mutability": "mutable", "name": "clientaddress", - "nameLocation": "10362:13:0", + "nameLocation": "10766:13:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10354:21:0", + "scope": 865, + "src": "10758:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30728,10 +34070,10 @@ "typeString": "address" }, "typeName": { - "id": 774, + "id": 817, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10354:7:0", + "src": "10758:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -30742,13 +34084,13 @@ }, { "constant": false, - "id": 777, + "id": 820, "mutability": "mutable", "name": "round", - "nameLocation": "10392:5:0", + "nameLocation": "10796:5:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10385:12:0", + "scope": 865, + "src": "10789:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30756,10 +34098,10 @@ "typeString": "uint64" }, "typeName": { - "id": 776, + "id": 819, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "10385:6:0", + "src": "10789:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -30768,21 +34110,21 @@ "visibility": "internal" } ], - "src": "10320:83:0" + "src": "10724:83:0" }, "returnParameters": { - "id": 789, + "id": 832, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 788, + "id": 831, "mutability": "mutable", "name": "commitment", - "nameLocation": "10536:10:0", + "nameLocation": "10940:10:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10523:23:0", + "scope": 865, + "src": "10927:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -30790,10 +34132,10 @@ "typeString": "bytes" }, "typeName": { - "id": 787, + "id": 830, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "10523:5:0", + "src": "10927:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -30802,91 +34144,91 @@ "visibility": "internal" } ], - "src": "10522:25:0" + "src": "10926:25:0" }, - "scope": 1663, - "src": "10292:534:0", + "scope": 1927, + "src": "10696:534:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 878, + "id": 956, "nodeType": "Block", - "src": "11164:263:0", + "src": "11576:430:0", "statements": [ { "assignments": [ - 849 + 894 ], "declarations": [ { "constant": false, - "id": 849, + "id": 894, "mutability": "mutable", "name": "cmmts", - "nameLocation": "11206:5:0", + "nameLocation": "11618:5:0", "nodeType": "VariableDeclaration", - "scope": 878, - "src": "11174:37:0", + "scope": 956, + "src": "11586:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 847, + "id": 892, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 846, + "id": 891, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "11174:21:0" + "src": "11586:21:0" }, "referencedDeclaration": 49, - "src": "11174:21:0", + "src": "11586:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 848, + "id": 893, "nodeType": "ArrayTypeName", - "src": "11174:23:0", + "src": "11586:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 853, + "id": 898, "initialValue": { "baseExpression": { - "id": 850, + "id": 895, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "11214:21:0", + "src": "11626:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 852, + "id": 897, "indexExpression": { - "id": 851, + "id": 896, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 825, - "src": "11236:6:0", + "referencedDeclaration": 868, + "src": "11648:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30897,14 +34239,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11214:29:0", + "src": "11626:29:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11174:69:0" + "src": "11586:69:0" }, { "expression": { @@ -30914,32 +34256,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 858, + "id": 903, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 855, + "id": 900, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 849, - "src": "11261:5:0", + "referencedDeclaration": 894, + "src": "11673:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 856, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "11261:12:0", + "src": "11673:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30948,18 +34290,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 857, + "id": 902, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11277:5:0", + "referencedDeclaration": 870, + "src": "11689:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "11261:21:0", + "src": "11673:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -30967,14 +34309,14 @@ }, { "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 859, + "id": 904, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "11284:28:0", + "src": "11696:28:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", "typeString": "literal_string \"The Task Round Must exists\"" @@ -30993,7 +34335,7 @@ "typeString": "literal_string \"The Task Round Must exists\"" } ], - "id": 854, + "id": 899, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -31001,13 +34343,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "11253:7:0", + "src": "11665:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 860, + "id": 905, "isConstant": false, "isLValue": false, "isPure": false, @@ -31015,79 +34357,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11253:60:0", + "src": "11665:60:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 861, + "id": 906, "nodeType": "ExpressionStatement", - "src": "11253:60:0" + "src": "11665:60:0" }, { "assignments": [ - 864 + 909 ], "declarations": [ { "constant": false, - "id": 864, + "id": 909, "mutability": "mutable", "name": "cmmt", - "nameLocation": "11353:4:0", + "nameLocation": "11765:4:0", "nodeType": "VariableDeclaration", - "scope": 878, - "src": "11323:34:0", + "scope": 956, + "src": "11735:34:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 863, + "id": 908, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 862, + "id": 907, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "11323:21:0" + "src": "11735:21:0" }, "referencedDeclaration": 49, - "src": "11323:21:0", + "src": "11735:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 868, + "id": 913, "initialValue": { "baseExpression": { - "id": 865, + "id": 910, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 849, - "src": "11360:5:0", + "referencedDeclaration": 894, + "src": "11772:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 867, + "id": 912, "indexExpression": { - "id": 866, + "id": 911, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11366:5:0", + "referencedDeclaration": 870, + "src": "11778:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -31098,231 +34440,610 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11360:12:0", + "src": "11772:12:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11323:49:0" + "src": "11735:49:0" }, { - "expression": { - "id": 876, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 869, - "name": "ssdata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 843, - "src": "11382:6:0", + "assignments": [ + 918 + ], + "declarations": [ + { + "constant": false, + "id": 918, + "mutability": "mutable", + "name": "ssdatas", + "nameLocation": "11810:7:0", + "nodeType": "VariableDeclaration", + "scope": 956, + "src": "11794:23:0", + "stateVariable": false, + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_memory_ptr", - "typeString": "struct DeltaContract.SSData memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 870, - "name": "cmmt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "11391:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData[]" + }, + "typeName": { + "baseType": { + "id": 916, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 915, + "name": "SSData", + "nodeType": "IdentifierPath", + "referencedDeclaration": 106, + "src": "11794:6:0" }, - "id": 871, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "11391:11:0", + "referencedDeclaration": 106, + "src": "11794:6:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" } }, - "id": 873, - "indexExpression": { - "id": 872, - "name": "sender", + "id": 917, + "nodeType": "ArrayTypeName", + "src": "11794:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.SSData[]" + } + }, + "visibility": "internal" + } + ], + "id": 926, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 923, + "name": "senders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 829, - "src": "11403:6:0", + "referencedDeclaration": 873, + "src": "11833:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, + "id": 924, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11391:19:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11833:14:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } + ], + "id": 922, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "11820:12:0", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct HFLContract.SSData memory[] memory)" }, - "id": 875, - "indexExpression": { - "id": 874, - "name": "receiver", + "typeName": { + "baseType": { + "id": 920, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 919, + "name": "SSData", + "nodeType": "IdentifierPath", + "referencedDeclaration": 106, + "src": "11824:6:0" + }, + "referencedDeclaration": 106, + "src": "11824:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" + } + }, + "id": 921, + "nodeType": "ArrayTypeName", + "src": "11824:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.SSData[]" + } + } + }, + "id": 925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11820:28:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11794:54:0" + }, + { + "body": { + "id": 952, + "nodeType": "Block", + "src": "11903:73:0", + "statements": [ + { + "expression": { + "id": 950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 938, + "name": "ssdatas", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 918, + "src": "11917:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData memory[] memory" + } + }, + "id": 940, + "indexExpression": { + "id": 939, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11925:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "11917:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", + "typeString": "struct HFLContract.SSData memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "components": [ + { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 941, + "name": "cmmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 909, + "src": "11931:4:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 942, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "11931:11:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 946, + "indexExpression": { + "baseExpression": { + "id": 943, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 873, + "src": "11943:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 945, + "indexExpression": { + "id": 944, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11951:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11943:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11931:23:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 948, + "indexExpression": { + "id": 947, + "name": "receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 875, + "src": "11955:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11931:33:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + } + ], + "id": 949, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "11930:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "src": "11917:48:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", + "typeString": "struct HFLContract.SSData memory" + } + }, + "id": 951, + "nodeType": "ExpressionStatement", + "src": "11917:48:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 931, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11878:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 932, + "name": "senders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 831, - "src": "11411:8:0", + "referencedDeclaration": 873, + "src": "11882:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, + "id": 933, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11391:29:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11882:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "11382:38:0", + "src": "11878:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_memory_ptr", - "typeString": "struct DeltaContract.SSData memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 877, - "nodeType": "ExpressionStatement", - "src": "11382:38:0" + "id": 953, + "initializationExpression": { + "assignments": [ + 928 + ], + "declarations": [ + { + "constant": false, + "id": 928, + "mutability": "mutable", + "name": "i", + "nameLocation": "11871:1:0", + "nodeType": "VariableDeclaration", + "scope": 953, + "src": "11863:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 927, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11863:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 930, + "initialValue": { + "hexValue": "30", + "id": 929, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11875:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "11863:13:0" + }, + "loopExpression": { + "expression": { + "id": 936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "11898:3:0", + "subExpression": { + "id": 935, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11898:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 937, + "nodeType": "ExpressionStatement", + "src": "11898:3:0" + }, + "nodeType": "ForStatement", + "src": "11858:118:0" + }, + { + "expression": { + "id": 954, + "name": "ssdatas", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 918, + "src": "11992:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData memory[] memory" + } + }, + "functionReturnParameters": 889, + "id": 955, + "nodeType": "Return", + "src": "11985:14:0" } ] }, "documentation": { - "id": 823, + "id": 866, "nodeType": "StructuredDocumentation", - "src": "10832:50:0", + "src": "11236:50:0", "text": " @dev called by any participants" }, - "functionSelector": "589e2338", - "id": 879, + "functionSelector": "5ed14248", + "id": 957, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 834, + "id": 878, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 825, - "src": "11067:6:0", + "referencedDeclaration": 868, + "src": "11484:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 835, + "id": 879, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11075:5:0", + "referencedDeclaration": 870, + "src": "11492:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 836, + "id": 880, "kind": "modifierInvocation", "modifierName": { - "id": 833, + "id": 877, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "11055:11:0" + "referencedDeclaration": 240, + "src": "11472:11:0" }, "nodeType": "ModifierInvocation", - "src": "11055:26:0" + "src": "11472:26:0" }, { "arguments": [ { - "id": 838, + "id": 882, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 825, - "src": "11106:6:0", + "referencedDeclaration": 868, + "src": "11523:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 839, + "id": 883, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11114:5:0", + "referencedDeclaration": 870, + "src": "11531:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 840, + "id": 884, "kind": "modifierInvocation", "modifierName": { - "id": 837, + "id": 881, "name": "roundcmmtExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 261, - "src": "11090:15:0" + "referencedDeclaration": 265, + "src": "11507:15:0" }, "nodeType": "ModifierInvocation", - "src": "11090:30:0" + "src": "11507:30:0" } ], - "name": "getSecretSharingData", - "nameLocation": "10896:20:0", + "name": "getSecretSharingDatas", + "nameLocation": "11300:21:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 832, + "id": 876, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 825, + "id": 868, "mutability": "mutable", "name": "taskId", - "nameLocation": "10934:6:0", + "nameLocation": "11339:6:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10926:14:0", + "scope": 957, + "src": "11331:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31330,10 +35051,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 824, + "id": 867, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "10926:7:0", + "src": "11331:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -31343,13 +35064,13 @@ }, { "constant": false, - "id": 827, + "id": 870, "mutability": "mutable", "name": "round", - "nameLocation": "10957:5:0", + "nameLocation": "11362:5:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10950:12:0", + "scope": 957, + "src": "11355:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31357,10 +35078,10 @@ "typeString": "uint64" }, "typeName": { - "id": 826, + "id": 869, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "10950:6:0", + "src": "11355:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -31370,41 +35091,50 @@ }, { "constant": false, - "id": 829, + "id": 873, "mutability": "mutable", - "name": "sender", - "nameLocation": "10980:6:0", + "name": "senders", + "nameLocation": "11396:7:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10972:14:0", + "scope": 957, + "src": "11377:26:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 828, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10972:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 871, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11377:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 872, + "nodeType": "ArrayTypeName", + "src": "11377:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 831, + "id": 875, "mutability": "mutable", "name": "receiver", - "nameLocation": "11004:8:0", + "nameLocation": "11421:8:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10996:16:0", + "scope": 957, + "src": "11413:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31412,10 +35142,10 @@ "typeString": "address" }, "typeName": { - "id": 830, + "id": 874, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10996:7:0", + "src": "11413:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -31425,124 +35155,133 @@ "visibility": "internal" } ], - "src": "10916:102:0" + "src": "11321:114:0" }, "returnParameters": { - "id": 844, + "id": 889, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 843, + "id": 888, "mutability": "mutable", - "name": "ssdata", - "nameLocation": "11152:6:0", + "name": "", + "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "11138:20:0", + "scope": 957, + "src": "11555:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_memory_ptr", - "typeString": "struct DeltaContract.SSData" + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData[]" }, "typeName": { - "id": 842, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 841, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 104, - "src": "11138:6:0" + "baseType": { + "id": 886, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 885, + "name": "SSData", + "nodeType": "IdentifierPath", + "referencedDeclaration": 106, + "src": "11555:6:0" + }, + "referencedDeclaration": 106, + "src": "11555:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" + } }, - "referencedDeclaration": 104, - "src": "11138:6:0", + "id": 887, + "nodeType": "ArrayTypeName", + "src": "11555:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage_ptr", - "typeString": "struct DeltaContract.SSData" + "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.SSData[]" } }, "visibility": "internal" } ], - "src": "11137:22:0" + "src": "11554:17:0" }, - "scope": 1663, - "src": "10887:540:0", + "scope": 1927, + "src": "11291:715:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 955, + "id": 1033, "nodeType": "Block", - "src": "12024:525:0", + "src": "12603:525:0", "statements": [ { "assignments": [ - 899 + 977 ], "declarations": [ { "constant": false, - "id": 899, + "id": 977, "mutability": "mutable", "name": "curRound", - "nameLocation": "12052:8:0", + "nameLocation": "12631:8:0", "nodeType": "VariableDeclaration", - "scope": 955, - "src": "12034:26:0", + "scope": 1033, + "src": "12613:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 898, + "id": 976, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 897, + "id": 975, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "12034:9:0" + "referencedDeclaration": 85, + "src": "12613:9:0" }, - "referencedDeclaration": 83, - "src": "12034:9:0", + "referencedDeclaration": 85, + "src": "12613:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 905, + "id": 983, "initialValue": { "baseExpression": { "baseExpression": { - "id": 900, + "id": 978, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "12063:10:0", + "src": "12642:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 902, + "id": 980, "indexExpression": { - "id": 901, + "id": 979, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "12074:6:0", + "referencedDeclaration": 960, + "src": "12653:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -31553,20 +35292,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12063:18:0", + "src": "12642:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 904, + "id": 982, "indexExpression": { - "id": 903, + "id": 981, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "12082:5:0", + "referencedDeclaration": 962, + "src": "12661:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -31577,14 +35316,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12063:25:0", + "src": "12642:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "12034:54:0" + "src": "12613:54:0" }, { "expression": { @@ -31592,56 +35331,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 911, + "id": 989, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 907, + "id": 985, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "12119:8:0", + "referencedDeclaration": 977, + "src": "12698:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 908, + "id": 986, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "12119:15:0", + "referencedDeclaration": 76, + "src": "12698:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 909, + "id": 987, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "12138:11:0", + "src": "12717:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 910, + "id": 988, "isConstant": false, "isLValue": false, "isPure": true, @@ -31649,13 +35388,13 @@ "memberName": "Calculating", "nodeType": "MemberAccess", "referencedDeclaration": 11, - "src": "12138:23:0", + "src": "12717:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "12119:42:0", + "src": "12698:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -31663,14 +35402,14 @@ }, { "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", - "id": 912, + "id": 990, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12175:29:0", + "src": "12754:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850", "typeString": "literal_string \"Calculating has not started\"" @@ -31689,7 +35428,7 @@ "typeString": "literal_string \"Calculating has not started\"" } ], - "id": 906, + "id": 984, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -31697,13 +35436,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "12098:7:0", + "src": "12677:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 913, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -31711,67 +35450,67 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12098:116:0", + "src": "12677:116:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 914, + "id": 992, "nodeType": "ExpressionStatement", - "src": "12098:116:0" + "src": "12677:116:0" }, { "expression": { - "id": 920, + "id": 998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 915, + "id": 993, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "12224:8:0", + "referencedDeclaration": 977, + "src": "12803:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 917, + "id": 995, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "12224:15:0", + "referencedDeclaration": 76, + "src": "12803:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 918, + "id": 996, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "12242:11:0", + "src": "12821:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 919, + "id": 997, "isConstant": false, "isLValue": false, "isPure": true, @@ -31779,27 +35518,27 @@ "memberName": "Aggregating", "nodeType": "MemberAccess", "referencedDeclaration": 12, - "src": "12242:23:0", + "src": "12821:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "12224:41:0", + "src": "12803:41:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 921, + "id": 999, "nodeType": "ExpressionStatement", - "src": "12224:41:0" + "src": "12803:41:0" }, { "body": { - "id": 947, + "id": 1025, "nodeType": "Block", - "src": "12326:156:0", + "src": "12905:156:0", "statements": [ { "expression": { @@ -31809,7 +35548,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 943, + "id": 1021, "isConstant": false, "isLValue": false, "isPure": false, @@ -31819,53 +35558,53 @@ "expression": { "baseExpression": { "expression": { - "id": 934, + "id": 1012, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "12365:8:0", + "referencedDeclaration": 977, + "src": "12944:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 935, + "id": 1013, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "12365:19:0", + "referencedDeclaration": 81, + "src": "12944:19:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 939, + "id": 1017, "indexExpression": { "baseExpression": { - "id": 936, + "id": 1014, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 887, - "src": "12385:13:0", + "referencedDeclaration": 965, + "src": "12964:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 938, + "id": 1016, "indexExpression": { - "id": 937, + "id": 1015, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "12399:1:0", + "referencedDeclaration": 1001, + "src": "12978:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31876,7 +35615,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12385:16:0", + "src": "12964:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31887,34 +35626,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12365:37:0", + "src": "12944:37:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 940, + "id": 1018, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "pk1", "nodeType": "MemberAccess", - "referencedDeclaration": 62, - "src": "12365:41:0", + "referencedDeclaration": 64, + "src": "12944:41:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 941, + "id": 1019, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "12365:48:0", + "src": "12944:48:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31924,21 +35663,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 942, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12416:1:0", + "src": "12995:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "12365:52:0", + "src": "12944:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -31946,14 +35685,14 @@ }, { "hexValue": "43616e646964617465206d757374206578697374", - "id": 944, + "id": 1022, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12435:22:0", + "src": "13014:22:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", "typeString": "literal_string \"Candidate must exist\"" @@ -31972,7 +35711,7 @@ "typeString": "literal_string \"Candidate must exist\"" } ], - "id": 933, + "id": 1011, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -31980,13 +35719,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "12340:7:0", + "src": "12919:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 945, + "id": 1023, "isConstant": false, "isLValue": false, "isPure": false, @@ -31994,16 +35733,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12340:131:0", + "src": "12919:131:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 946, + "id": 1024, "nodeType": "ExpressionStatement", - "src": "12340:131:0" + "src": "12919:131:0" } ] }, @@ -32012,18 +35751,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 929, + "id": 1007, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 926, + "id": 1004, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "12295:1:0", + "referencedDeclaration": 1001, + "src": "12874:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32033,51 +35772,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 927, + "id": 1005, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 887, - "src": "12299:13:0", + "referencedDeclaration": 965, + "src": "12878:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 928, + "id": 1006, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "12299:20:0", + "src": "12878:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12295:24:0", + "src": "12874:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 948, + "id": 1026, "initializationExpression": { "assignments": [ - 923 + 1001 ], "declarations": [ { "constant": false, - "id": 923, + "id": 1001, "mutability": "mutable", "name": "i", - "nameLocation": "12288:1:0", + "nameLocation": "12867:1:0", "nodeType": "VariableDeclaration", - "scope": 948, - "src": "12280:9:0", + "scope": 1026, + "src": "12859:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32085,10 +35824,10 @@ "typeString": "uint256" }, "typeName": { - "id": 922, + "id": 1000, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12280:7:0", + "src": "12859:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32097,17 +35836,17 @@ "visibility": "internal" } ], - "id": 925, + "id": 1003, "initialValue": { "hexValue": "30", - "id": 924, + "id": 1002, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12292:1:0", + "src": "12871:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -32115,11 +35854,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "12280:13:0" + "src": "12859:13:0" }, "loopExpression": { "expression": { - "id": 931, + "id": 1009, "isConstant": false, "isLValue": false, "isPure": false, @@ -32127,14 +35866,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "12321:3:0", + "src": "12900:3:0", "subExpression": { - "id": 930, + "id": 1008, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "12321:1:0", + "referencedDeclaration": 1001, + "src": "12900:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32145,47 +35884,47 @@ "typeString": "uint256" } }, - "id": 932, + "id": 1010, "nodeType": "ExpressionStatement", - "src": "12321:3:0" + "src": "12900:3:0" }, "nodeType": "ForStatement", - "src": "12275:207:0" + "src": "12854:207:0" }, { "eventCall": { "arguments": [ { - "id": 950, + "id": 1028, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "12513:6:0", + "referencedDeclaration": 960, + "src": "13092:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 951, + "id": 1029, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "12521:5:0", + "referencedDeclaration": 962, + "src": "13100:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 952, + "id": 1030, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 887, - "src": "12528:13:0", + "referencedDeclaration": 965, + "src": "13107:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" @@ -32207,18 +35946,18 @@ "typeString": "address[] calldata" } ], - "id": 949, + "id": 1027, "name": "AggregateStarted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 152, - "src": "12496:16:0", + "referencedDeclaration": 156, + "src": "13075:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address[] memory)" } }, - "id": 953, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, @@ -32226,113 +35965,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12496:46:0", + "src": "13075:46:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 954, + "id": 1032, "nodeType": "EmitStatement", - "src": "12491:51:0" + "src": "13070:51:0" } ] }, "documentation": { - "id": 880, + "id": 958, "nodeType": "StructuredDocumentation", - "src": "11433:416:0", + "src": "12012:416:0", "text": " @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n @param taskId taskId\n @param round the task round\n @param onlineClients clients that has transfered gradient to task developer" }, "functionSelector": "4956219b", - "id": 956, + "id": 1034, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 890, + "id": 968, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "11989:6:0", + "referencedDeclaration": 960, + "src": "12568:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 891, + "id": 969, "kind": "modifierInvocation", "modifierName": { - "id": 889, + "id": 967, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "11979:9:0" + "referencedDeclaration": 282, + "src": "12558:9:0" }, "nodeType": "ModifierInvocation", - "src": "11979:17:0" + "src": "12558:17:0" }, { "arguments": [ { - "id": 893, + "id": 971, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "12009:6:0", + "referencedDeclaration": 960, + "src": "12588:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 894, + "id": 972, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "12017:5:0", + "referencedDeclaration": 962, + "src": "12596:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 895, + "id": 973, "kind": "modifierInvocation", "modifierName": { - "id": 892, + "id": 970, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "11997:11:0" + "referencedDeclaration": 240, + "src": "12576:11:0" }, "nodeType": "ModifierInvocation", - "src": "11997:26:0" + "src": "12576:26:0" } ], "name": "startAggregate", - "nameLocation": "11863:14:0", + "nameLocation": "12442:14:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 888, + "id": 966, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 882, + "id": 960, "mutability": "mutable", "name": "taskId", - "nameLocation": "11895:6:0", + "nameLocation": "12474:6:0", "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11887:14:0", + "scope": 1034, + "src": "12466:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32340,10 +36079,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 881, + "id": 959, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11887:7:0", + "src": "12466:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -32353,13 +36092,13 @@ }, { "constant": false, - "id": 884, + "id": 962, "mutability": "mutable", "name": "round", - "nameLocation": "11918:5:0", + "nameLocation": "12497:5:0", "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11911:12:0", + "scope": 1034, + "src": "12490:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32367,10 +36106,10 @@ "typeString": "uint64" }, "typeName": { - "id": 883, + "id": 961, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "11911:6:0", + "src": "12490:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -32380,13 +36119,13 @@ }, { "constant": false, - "id": 887, + "id": 965, "mutability": "mutable", "name": "onlineClients", - "nameLocation": "11952:13:0", + "nameLocation": "12531:13:0", "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11933:32:0", + "scope": 1034, + "src": "12512:32:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -32395,19 +36134,19 @@ }, "typeName": { "baseType": { - "id": 885, + "id": 963, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11933:7:0", + "src": "12512:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 886, + "id": 964, "nodeType": "ArrayTypeName", - "src": "11933:9:0", + "src": "12512:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -32416,89 +36155,89 @@ "visibility": "internal" } ], - "src": "11877:94:0" + "src": "12456:94:0" }, "returnParameters": { - "id": 896, + "id": 974, "nodeType": "ParameterList", "parameters": [], - "src": "12024:0:0" + "src": "12603:0:0" }, - "scope": 1663, - "src": "11854:695:0", + "scope": 1927, + "src": "12433:695:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1005, + "id": 1083, "nodeType": "Block", - "src": "12955:307:0", + "src": "13534:307:0", "statements": [ { "assignments": [ - 976 + 1054 ], "declarations": [ { "constant": false, - "id": 976, + "id": 1054, "mutability": "mutable", "name": "curRound", - "nameLocation": "12983:8:0", + "nameLocation": "13562:8:0", "nodeType": "VariableDeclaration", - "scope": 1005, - "src": "12965:26:0", + "scope": 1083, + "src": "13544:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 975, + "id": 1053, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 974, + "id": 1052, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "12965:9:0" + "referencedDeclaration": 85, + "src": "13544:9:0" }, - "referencedDeclaration": 83, - "src": "12965:9:0", + "referencedDeclaration": 85, + "src": "13544:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 982, + "id": 1060, "initialValue": { "baseExpression": { "baseExpression": { - "id": 977, + "id": 1055, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "12994:10:0", + "src": "13573:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 979, + "id": 1057, "indexExpression": { - "id": 978, + "id": 1056, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "13005:6:0", + "referencedDeclaration": 1037, + "src": "13584:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -32509,20 +36248,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12994:18:0", + "src": "13573:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 981, + "id": 1059, "indexExpression": { - "id": 980, + "id": 1058, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "13013:5:0", + "referencedDeclaration": 1039, + "src": "13592:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -32533,14 +36272,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12994:25:0", + "src": "13573:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "12965:54:0" + "src": "13544:54:0" }, { "expression": { @@ -32548,56 +36287,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 988, + "id": 1066, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 984, + "id": 1062, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 976, - "src": "13050:8:0", + "referencedDeclaration": 1054, + "src": "13629:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 985, + "id": 1063, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "13050:15:0", + "referencedDeclaration": 76, + "src": "13629:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 986, + "id": 1064, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "13069:11:0", + "src": "13648:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 987, + "id": 1065, "isConstant": false, "isLValue": false, "isPure": true, @@ -32605,13 +36344,13 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "13069:19:0", + "src": "13648:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "13050:38:0", + "src": "13629:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -32619,14 +36358,14 @@ }, { "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", - "id": 989, + "id": 1067, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "13102:31:0", + "src": "13681:31:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2", "typeString": "literal_string \"This round is not running now\"" @@ -32645,7 +36384,7 @@ "typeString": "literal_string \"This round is not running now\"" } ], - "id": 983, + "id": 1061, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -32653,13 +36392,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "13029:7:0", + "src": "13608:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 990, + "id": 1068, "isConstant": false, "isLValue": false, "isPure": false, @@ -32667,67 +36406,67 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13029:114:0", + "src": "13608:114:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 991, + "id": 1069, "nodeType": "ExpressionStatement", - "src": "13029:114:0" + "src": "13608:114:0" }, { "expression": { - "id": 997, + "id": 1075, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 992, + "id": 1070, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 976, - "src": "13153:8:0", + "referencedDeclaration": 1054, + "src": "13732:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 994, + "id": 1072, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "13153:15:0", + "referencedDeclaration": 76, + "src": "13732:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 995, + "id": 1073, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "13171:11:0", + "src": "13750:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 996, + "id": 1074, "isConstant": false, "isLValue": false, "isPure": true, @@ -32735,56 +36474,56 @@ "memberName": "Calculating", "nodeType": "MemberAccess", "referencedDeclaration": 11, - "src": "13171:23:0", + "src": "13750:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "13153:41:0", + "src": "13732:41:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 998, + "id": 1076, "nodeType": "ExpressionStatement", - "src": "13153:41:0" + "src": "13732:41:0" }, { "eventCall": { "arguments": [ { - "id": 1000, + "id": 1078, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "13226:6:0", + "referencedDeclaration": 1037, + "src": "13805:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1001, + "id": 1079, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "13234:5:0", + "referencedDeclaration": 1039, + "src": "13813:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 1002, + "id": 1080, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 964, - "src": "13241:13:0", + "referencedDeclaration": 1042, + "src": "13820:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" @@ -32806,18 +36545,18 @@ "typeString": "address[] calldata" } ], - "id": 999, + "id": 1077, "name": "CalculateStarted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 161, - "src": "13209:16:0", + "referencedDeclaration": 165, + "src": "13788:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address[] memory)" } }, - "id": 1003, + "id": 1081, "isConstant": false, "isLValue": false, "isPure": false, @@ -32825,113 +36564,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13209:46:0", + "src": "13788:46:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1004, + "id": 1082, "nodeType": "EmitStatement", - "src": "13204:51:0" + "src": "13783:51:0" } ] }, "documentation": { - "id": 957, + "id": 1035, "nodeType": "StructuredDocumentation", - "src": "12555:225:0", + "src": "13134:225:0", "text": " @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n @param taskId taskId\n @param round the task round" }, "functionSelector": "abf2013a", - "id": 1006, + "id": 1084, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 967, + "id": 1045, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "12920:6:0", + "referencedDeclaration": 1037, + "src": "13499:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 968, + "id": 1046, "kind": "modifierInvocation", "modifierName": { - "id": 966, + "id": 1044, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "12910:9:0" + "referencedDeclaration": 282, + "src": "13489:9:0" }, "nodeType": "ModifierInvocation", - "src": "12910:17:0" + "src": "13489:17:0" }, { "arguments": [ { - "id": 970, + "id": 1048, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "12940:6:0", + "referencedDeclaration": 1037, + "src": "13519:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 971, + "id": 1049, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "12948:5:0", + "referencedDeclaration": 1039, + "src": "13527:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 972, + "id": 1050, "kind": "modifierInvocation", "modifierName": { - "id": 969, + "id": 1047, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "12928:11:0" + "referencedDeclaration": 240, + "src": "13507:11:0" }, "nodeType": "ModifierInvocation", - "src": "12928:26:0" + "src": "13507:26:0" } ], "name": "startCalculate", - "nameLocation": "12794:14:0", + "nameLocation": "13373:14:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 965, + "id": 1043, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 959, + "id": 1037, "mutability": "mutable", "name": "taskId", - "nameLocation": "12826:6:0", + "nameLocation": "13405:6:0", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "12818:14:0", + "scope": 1084, + "src": "13397:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32939,10 +36678,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 958, + "id": 1036, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12818:7:0", + "src": "13397:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -32952,13 +36691,13 @@ }, { "constant": false, - "id": 961, + "id": 1039, "mutability": "mutable", "name": "round", - "nameLocation": "12849:5:0", + "nameLocation": "13428:5:0", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "12842:12:0", + "scope": 1084, + "src": "13421:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32966,10 +36705,10 @@ "typeString": "uint64" }, "typeName": { - "id": 960, + "id": 1038, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "12842:6:0", + "src": "13421:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -32979,13 +36718,13 @@ }, { "constant": false, - "id": 964, + "id": 1042, "mutability": "mutable", "name": "onlineClients", - "nameLocation": "12883:13:0", + "nameLocation": "13462:13:0", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "12864:32:0", + "scope": 1084, + "src": "13443:32:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -32994,19 +36733,19 @@ }, "typeName": { "baseType": { - "id": 962, + "id": 1040, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12864:7:0", + "src": "13443:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 963, + "id": 1041, "nodeType": "ArrayTypeName", - "src": "12864:9:0", + "src": "13443:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -33015,89 +36754,89 @@ "visibility": "internal" } ], - "src": "12808:94:0" + "src": "13387:94:0" }, "returnParameters": { - "id": 973, + "id": 1051, "nodeType": "ParameterList", "parameters": [], - "src": "12955:0:0" + "src": "13534:0:0" }, - "scope": 1663, - "src": "12785:477:0", + "scope": 1927, + "src": "13364:477:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1042, + "id": 1120, "nodeType": "Block", - "src": "13525:157:0", + "src": "14104:157:0", "statements": [ { "assignments": [ - 1023 + 1101 ], "declarations": [ { "constant": false, - "id": 1023, + "id": 1101, "mutability": "mutable", "name": "curRound", - "nameLocation": "13553:8:0", + "nameLocation": "14132:8:0", "nodeType": "VariableDeclaration", - "scope": 1042, - "src": "13535:26:0", + "scope": 1120, + "src": "14114:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1022, + "id": 1100, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1021, + "id": 1099, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "13535:9:0" + "referencedDeclaration": 85, + "src": "14114:9:0" }, - "referencedDeclaration": 83, - "src": "13535:9:0", + "referencedDeclaration": 85, + "src": "14114:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1029, + "id": 1107, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1024, + "id": 1102, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "13564:10:0", + "src": "14143:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1026, + "id": 1104, "indexExpression": { - "id": 1025, + "id": 1103, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13575:6:0", + "referencedDeclaration": 1087, + "src": "14154:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -33108,20 +36847,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13564:18:0", + "src": "14143:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1028, + "id": 1106, "indexExpression": { - "id": 1027, + "id": 1105, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1011, - "src": "13583:5:0", + "referencedDeclaration": 1089, + "src": "14162:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -33132,65 +36871,65 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13564:25:0", + "src": "14143:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "13535:54:0" + "src": "14114:54:0" }, { "expression": { - "id": 1035, + "id": 1113, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 1030, + "id": 1108, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1023, - "src": "13599:8:0", + "referencedDeclaration": 1101, + "src": "14178:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1032, + "id": 1110, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "13599:15:0", + "referencedDeclaration": 76, + "src": "14178:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 1033, + "id": 1111, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "13617:11:0", + "src": "14196:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1034, + "id": 1112, "isConstant": false, "isLValue": false, "isPure": true, @@ -33198,44 +36937,44 @@ "memberName": "Finished", "nodeType": "MemberAccess", "referencedDeclaration": 13, - "src": "13617:20:0", + "src": "14196:20:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "13599:38:0", + "src": "14178:38:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 1036, + "id": 1114, "nodeType": "ExpressionStatement", - "src": "13599:38:0" + "src": "14178:38:0" }, { "eventCall": { "arguments": [ { - "id": 1038, + "id": 1116, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13661:6:0", + "referencedDeclaration": 1087, + "src": "14240:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1039, + "id": 1117, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1011, - "src": "13669:5:0", + "referencedDeclaration": 1089, + "src": "14248:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -33253,18 +36992,18 @@ "typeString": "uint64" } ], - "id": 1037, + "id": 1115, "name": "RoundEnd", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 134, - "src": "13652:8:0", + "referencedDeclaration": 138, + "src": "14231:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", "typeString": "function (bytes32,uint64)" } }, - "id": 1040, + "id": 1118, "isConstant": false, "isLValue": false, "isPure": false, @@ -33272,113 +37011,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13652:23:0", + "src": "14231:23:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 1119, "nodeType": "EmitStatement", - "src": "13647:28:0" + "src": "14226:28:0" } ] }, "documentation": { - "id": 1007, + "id": 1085, "nodeType": "StructuredDocumentation", - "src": "13268:124:0", + "src": "13847:124:0", "text": " @dev called by task developer, close round\n @param taskId taskId\n @param round the task round" }, "functionSelector": "01bd7269", - "id": 1043, + "id": 1121, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1014, + "id": 1092, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13478:6:0", + "referencedDeclaration": 1087, + "src": "14057:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 1015, + "id": 1093, "kind": "modifierInvocation", "modifierName": { - "id": 1013, + "id": 1091, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "13468:9:0" + "referencedDeclaration": 282, + "src": "14047:9:0" }, "nodeType": "ModifierInvocation", - "src": "13468:17:0" + "src": "14047:17:0" }, { "arguments": [ { - "id": 1017, + "id": 1095, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13506:6:0", + "referencedDeclaration": 1087, + "src": "14085:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1018, + "id": 1096, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1011, - "src": "13514:5:0", + "referencedDeclaration": 1089, + "src": "14093:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1019, + "id": 1097, "kind": "modifierInvocation", "modifierName": { - "id": 1016, + "id": 1094, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "13494:11:0" + "referencedDeclaration": 240, + "src": "14073:11:0" }, "nodeType": "ModifierInvocation", - "src": "13494:26:0" + "src": "14073:26:0" } ], "name": "endRound", - "nameLocation": "13406:8:0", + "nameLocation": "13985:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1012, + "id": 1090, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1009, + "id": 1087, "mutability": "mutable", "name": "taskId", - "nameLocation": "13423:6:0", + "nameLocation": "14002:6:0", "nodeType": "VariableDeclaration", - "scope": 1043, - "src": "13415:14:0", + "scope": 1121, + "src": "13994:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33386,10 +37125,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1008, + "id": 1086, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13415:7:0", + "src": "13994:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -33399,13 +37138,13 @@ }, { "constant": false, - "id": 1011, + "id": 1089, "mutability": "mutable", "name": "round", - "nameLocation": "13438:5:0", + "nameLocation": "14017:5:0", "nodeType": "VariableDeclaration", - "scope": 1043, - "src": "13431:12:0", + "scope": 1121, + "src": "14010:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33413,10 +37152,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1010, + "id": 1088, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "13431:6:0", + "src": "14010:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -33425,25 +37164,25 @@ "visibility": "internal" } ], - "src": "13414:30:0" + "src": "13993:30:0" }, "returnParameters": { - "id": 1020, + "id": 1098, "nodeType": "ParameterList", "parameters": [], - "src": "13525:0:0" + "src": "14104:0:0" }, - "scope": 1663, - "src": "13397:285:0", + "scope": 1927, + "src": "13976:285:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1138, + "id": 1216, "nodeType": "Block", - "src": "14048:972:0", + "src": "14627:972:0", "statements": [ { "expression": { @@ -33453,7 +37192,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1066, + "id": 1144, "isConstant": false, "isLValue": false, "isPure": false, @@ -33463,32 +37202,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1061, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1058, + "id": 1136, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14079:16:0", + "referencedDeclaration": 1128, + "src": "14658:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 1059, + "id": 1137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "14079:23:0", + "src": "14658:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33498,21 +37237,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 1060, + "id": 1138, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14105:1:0", + "src": "14684:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "14079:27:0", + "src": "14658:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -33525,32 +37264,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1065, + "id": 1143, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1062, + "id": 1140, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14126:16:0", + "referencedDeclaration": 1128, + "src": "14705:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 1063, + "id": 1141, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "14126:23:0", + "src": "14705:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33559,24 +37298,24 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 1064, + "id": 1142, "name": "maxWeightCommitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 34, - "src": "14153:25:0", + "src": "14732:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "14126:52:0", + "src": "14705:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "14079:99:0", + "src": "14658:99:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -33584,14 +37323,14 @@ }, { "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1067, + "id": 1145, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14192:48:0", + "src": "14771:48:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" @@ -33610,7 +37349,7 @@ "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" } ], - "id": 1057, + "id": 1135, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -33618,13 +37357,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "14058:7:0", + "src": "14637:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1068, + "id": 1146, "isConstant": false, "isLValue": false, "isPure": false, @@ -33632,80 +37371,80 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14058:192:0", + "src": "14637:192:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1069, + "id": 1147, "nodeType": "ExpressionStatement", - "src": "14058:192:0" + "src": "14637:192:0" }, { "assignments": [ - 1072 + 1150 ], "declarations": [ { "constant": false, - "id": 1072, + "id": 1150, "mutability": "mutable", "name": "curRound", - "nameLocation": "14278:8:0", + "nameLocation": "14857:8:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "14260:26:0", + "scope": 1216, + "src": "14839:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1071, + "id": 1149, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1070, + "id": 1148, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "14260:9:0" + "referencedDeclaration": 85, + "src": "14839:9:0" }, - "referencedDeclaration": 83, - "src": "14260:9:0", + "referencedDeclaration": 85, + "src": "14839:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1078, + "id": 1156, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1073, + "id": 1151, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "14289:10:0", + "src": "14868:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1075, + "id": 1153, "indexExpression": { - "id": 1074, + "id": 1152, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14300:6:0", + "referencedDeclaration": 1124, + "src": "14879:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -33716,20 +37455,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14289:18:0", + "src": "14868:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1077, + "id": 1155, "indexExpression": { - "id": 1076, + "id": 1154, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14308:5:0", + "referencedDeclaration": 1126, + "src": "14887:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -33740,14 +37479,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14289:25:0", + "src": "14868:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "14260:54:0" + "src": "14839:54:0" }, { "expression": { @@ -33755,56 +37494,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1084, + "id": 1162, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1080, + "id": 1158, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1072, - "src": "14345:8:0", + "referencedDeclaration": 1150, + "src": "14924:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1081, + "id": 1159, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "14345:15:0", + "referencedDeclaration": 76, + "src": "14924:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1082, + "id": 1160, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "14364:11:0", + "src": "14943:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1083, + "id": 1161, "isConstant": false, "isLValue": false, "isPure": true, @@ -33812,13 +37551,13 @@ "memberName": "Calculating", "nodeType": "MemberAccess", "referencedDeclaration": 11, - "src": "14364:23:0", + "src": "14943:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "14345:42:0", + "src": "14924:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -33826,14 +37565,14 @@ }, { "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", - "id": 1085, + "id": 1163, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14401:24:0", + "src": "14980:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835", "typeString": "literal_string \"not in uploading phase\"" @@ -33852,7 +37591,7 @@ "typeString": "literal_string \"not in uploading phase\"" } ], - "id": 1079, + "id": 1157, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -33860,13 +37599,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "14324:7:0", + "src": "14903:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1086, + "id": 1164, "isConstant": false, "isLValue": false, "isPure": false, @@ -33874,88 +37613,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14324:111:0", + "src": "14903:111:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1087, + "id": 1165, "nodeType": "ExpressionStatement", - "src": "14324:111:0" + "src": "14903:111:0" }, { "assignments": [ - 1092 + 1170 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1170, "mutability": "mutable", "name": "commitments", - "nameLocation": "14477:11:0", + "nameLocation": "15056:11:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "14445:43:0", + "scope": 1216, + "src": "15024:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1090, + "id": 1168, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1089, + "id": 1167, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "14445:21:0" + "src": "15024:21:0" }, "referencedDeclaration": 49, - "src": "14445:21:0", + "src": "15024:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1091, + "id": 1169, "nodeType": "ArrayTypeName", - "src": "14445:23:0", + "src": "15024:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1096, + "id": 1174, "initialValue": { "baseExpression": { - "id": 1093, + "id": 1171, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "14491:21:0", + "src": "15070:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1095, + "id": 1173, "indexExpression": { - "id": 1094, + "id": 1172, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14526:6:0", + "referencedDeclaration": 1124, + "src": "15105:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -33966,77 +37705,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14491:51:0", + "src": "15070:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "14445:97:0" + "src": "15024:97:0" }, { "assignments": [ - 1099 + 1177 ], "declarations": [ { "constant": false, - "id": 1099, + "id": 1177, "mutability": "mutable", "name": "commitment", - "nameLocation": "14582:10:0", + "nameLocation": "15161:10:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "14552:40:0", + "scope": 1216, + "src": "15131:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1098, + "id": 1176, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1097, + "id": 1175, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "14552:21:0" + "src": "15131:21:0" }, "referencedDeclaration": 49, - "src": "14552:21:0", + "src": "15131:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1103, + "id": 1181, "initialValue": { "baseExpression": { - "id": 1100, + "id": 1178, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "14595:11:0", + "referencedDeclaration": 1170, + "src": "15174:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1102, + "id": 1180, "indexExpression": { - "id": 1101, + "id": 1179, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14607:5:0", + "referencedDeclaration": 1126, + "src": "15186:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -34047,14 +37786,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14595:18:0", + "src": "15174:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "14552:61:0" + "src": "15131:61:0" }, { "expression": { @@ -34064,7 +37803,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1112, + "id": 1190, "isConstant": false, "isLValue": false, "isPure": false, @@ -34073,18 +37812,18 @@ "expression": { "baseExpression": { "expression": { - "id": 1105, + "id": 1183, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "14644:10:0", + "referencedDeclaration": 1177, + "src": "15223:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1106, + "id": 1184, "isConstant": false, "isLValue": true, "isPure": false, @@ -34092,34 +37831,34 @@ "memberName": "weightCommitment", "nodeType": "MemberAccess", "referencedDeclaration": 41, - "src": "14644:27:0", + "src": "15223:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes storage ref)" } }, - "id": 1109, + "id": 1187, "indexExpression": { "expression": { - "id": 1107, + "id": 1185, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "14672:3:0", + "src": "15251:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1108, + "id": 1186, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "14672:10:0", + "src": "15251:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34130,20 +37869,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14644:39:0", + "src": "15223:39:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1110, + "id": 1188, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "14644:46:0", + "src": "15223:46:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34153,21 +37892,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 1111, + "id": 1189, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14694:1:0", + "src": "15273:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "14644:51:0", + "src": "15223:51:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34175,14 +37914,14 @@ }, { "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d756c7469706c652074696d6573", - "id": 1113, + "id": 1191, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14709:47:0", + "src": "15288:47:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086", "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" @@ -34201,7 +37940,7 @@ "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" } ], - "id": 1104, + "id": 1182, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -34209,13 +37948,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "14623:7:0", + "src": "15202:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1114, + "id": 1192, "isConstant": false, "isLValue": false, "isPure": false, @@ -34223,20 +37962,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14623:143:0", + "src": "15202:143:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1115, + "id": 1193, "nodeType": "ExpressionStatement", - "src": "14623:143:0" + "src": "15202:143:0" }, { "expression": { - "id": 1123, + "id": 1201, "isConstant": false, "isLValue": false, "isPure": false, @@ -34244,18 +37983,18 @@ "leftHandSide": { "baseExpression": { "expression": { - "id": 1116, + "id": 1194, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "14776:10:0", + "referencedDeclaration": 1177, + "src": "15355:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1120, + "id": 1198, "isConstant": false, "isLValue": true, "isPure": false, @@ -34263,34 +38002,34 @@ "memberName": "weightCommitment", "nodeType": "MemberAccess", "referencedDeclaration": 41, - "src": "14776:27:0", + "src": "15355:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes storage ref)" } }, - "id": 1121, + "id": 1199, "indexExpression": { "expression": { - "id": 1118, + "id": 1196, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "14804:3:0", + "src": "15383:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1119, + "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "14804:10:0", + "src": "15383:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34301,7 +38040,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "14776:39:0", + "src": "15355:39:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" @@ -34310,49 +38049,49 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1122, + "id": 1200, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14818:16:0", + "referencedDeclaration": 1128, + "src": "15397:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "src": "14776:58:0", + "src": "15355:58:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1124, + "id": 1202, "nodeType": "ExpressionStatement", - "src": "14776:58:0" + "src": "15355:58:0" }, { "eventCall": { "arguments": [ { - "id": 1126, + "id": 1204, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14878:6:0", + "referencedDeclaration": 1124, + "src": "15457:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1127, + "id": 1205, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14898:5:0", + "referencedDeclaration": 1126, + "src": "15477:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -34360,25 +38099,25 @@ }, { "expression": { - "id": 1128, + "id": 1206, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "14917:3:0", + "src": "15496:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1129, + "id": 1207, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "14917:10:0", + "src": "15496:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34388,14 +38127,14 @@ "arguments": [ { "hexValue": "30", - "id": 1132, + "id": 1210, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14949:1:0", + "src": "15528:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -34410,26 +38149,26 @@ "typeString": "int_const 0" } ], - "id": 1131, + "id": 1209, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14941:7:0", + "src": "15520:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1130, + "id": 1208, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14941:7:0", + "src": "15520:7:0", "typeDescriptions": {} } }, - "id": 1133, + "id": 1211, "isConstant": false, "isLValue": false, "isPure": true, @@ -34437,7 +38176,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14941:10:0", + "src": "15520:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34446,14 +38185,14 @@ }, { "hexValue": "574549474854", - "id": 1134, + "id": 1212, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14965:8:0", + "src": "15544:8:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58", "typeString": "literal_string \"WEIGHT\"" @@ -34461,12 +38200,12 @@ "value": "WEIGHT" }, { - "id": 1135, + "id": 1213, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14987:16:0", + "referencedDeclaration": 1128, + "src": "15566:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -34500,18 +38239,18 @@ "typeString": "bytes calldata" } ], - "id": 1125, + "id": 1203, "name": "ContentUploaded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "14849:15:0", + "referencedDeclaration": 179, + "src": "15428:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, - "id": 1136, + "id": 1214, "isConstant": false, "isLValue": false, "isPure": false, @@ -34519,86 +38258,86 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14849:164:0", + "src": "15428:164:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1137, + "id": 1215, "nodeType": "EmitStatement", - "src": "14844:169:0" + "src": "15423:169:0" } ] }, "documentation": { - "id": 1044, + "id": 1122, "nodeType": "StructuredDocumentation", - "src": "13688:196:0", + "src": "14267:196:0", "text": " @dev called by client, upload weight commitment\n @param taskId taskId\n @param round the task round\n @param resultCommitment masked model incremental commitment" }, "functionSelector": "ebd3e836", - "id": 1139, + "id": 1217, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1053, + "id": 1131, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14033:6:0", + "referencedDeclaration": 1124, + "src": "14612:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1054, + "id": 1132, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14041:5:0", + "referencedDeclaration": 1126, + "src": "14620:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1055, + "id": 1133, "kind": "modifierInvocation", "modifierName": { - "id": 1052, + "id": 1130, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "14021:11:0" + "referencedDeclaration": 240, + "src": "14600:11:0" }, "nodeType": "ModifierInvocation", - "src": "14021:26:0" + "src": "14600:26:0" } ], "name": "uploadResultCommitment", - "nameLocation": "13898:22:0", + "nameLocation": "14477:22:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1051, + "id": 1129, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1046, + "id": 1124, "mutability": "mutable", "name": "taskId", - "nameLocation": "13938:6:0", + "nameLocation": "14517:6:0", "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "13930:14:0", + "scope": 1217, + "src": "14509:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34606,10 +38345,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1045, + "id": 1123, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13930:7:0", + "src": "14509:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -34619,13 +38358,13 @@ }, { "constant": false, - "id": 1048, + "id": 1126, "mutability": "mutable", "name": "round", - "nameLocation": "13961:5:0", + "nameLocation": "14540:5:0", "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "13954:12:0", + "scope": 1217, + "src": "14533:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34633,10 +38372,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1047, + "id": 1125, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "13954:6:0", + "src": "14533:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -34646,13 +38385,13 @@ }, { "constant": false, - "id": 1050, + "id": 1128, "mutability": "mutable", "name": "resultCommitment", - "nameLocation": "13991:16:0", + "nameLocation": "14570:16:0", "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "13976:31:0", + "scope": 1217, + "src": "14555:31:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -34660,10 +38399,10 @@ "typeString": "bytes" }, "typeName": { - "id": 1049, + "id": 1127, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "13976:5:0", + "src": "14555:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -34672,287 +38411,624 @@ "visibility": "internal" } ], - "src": "13920:93:0" + "src": "14499:93:0" }, "returnParameters": { - "id": 1056, + "id": 1134, "nodeType": "ParameterList", "parameters": [], - "src": "14048:0:0" + "src": "14627:0:0" }, - "scope": 1663, - "src": "13889:1131:0", + "scope": 1927, + "src": "14468:1131:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1239, + "id": 1368, "nodeType": "Block", - "src": "15455:977:0", + "src": "16083:1489:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1164, + "id": 1240, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 1236, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "16114:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } }, - "id": 1159, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1156, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "15486:14:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15486:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15510:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "15486:25:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16114:16:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "&&", + "operator": "==", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 1238, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16134:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } }, - "id": 1163, + "id": 1239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1160, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "15531:14:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16134:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16114:42:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f2073656564436f6d6d69746d656e7473206c656e677468", + "id": 1241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16170:57:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", + "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" + }, + "value": "receivers length is not equal to seedCommitments length" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", + "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" + } + ], + "id": 1235, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16093:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16093:144:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1243, + "nodeType": "ExpressionStatement", + "src": "16093:144:0" + }, + { + "body": { + "id": 1272, + "nodeType": "Block", + "src": "16300:232:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1256, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16339:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1258, + "indexExpression": { + "id": 1257, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16355:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16339:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16339:25:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16367:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "16339:29:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1267, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1262, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16392:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1264, + "indexExpression": { + "id": 1263, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16408:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16392:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16392:25:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1266, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "16421:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "16392:49:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16339:102:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15531:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16459:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1162, - "name": "maxSSComitmentLength", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1255, + "name": "require", "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "15556:20:0", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16314:7:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "src": "15531:45:0", + "id": 1270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16314:207:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "src": "15486:90:0", + "id": 1271, + "nodeType": "ExpressionStatement", + "src": "16314:207:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1248, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16267:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1249, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16271:15:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16271:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16267:26:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1273, + "initializationExpression": { + "assignments": [ + 1245 + ], + "declarations": [ { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1165, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15590:48:0", + "constant": false, + "id": 1245, + "mutability": "mutable", + "name": "i", + "nameLocation": "16260:1:0", + "nodeType": "VariableDeclaration", + "scope": 1273, + "src": "16252:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "value": "commitment length exceeds limit or it is empty" + "typeName": { + "id": 1244, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16252:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" } ], + "id": 1247, + "initialValue": { + "hexValue": "30", + "id": 1246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16264:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "16252:13:0" + }, + "loopExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "id": 1253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "16295:3:0", + "subExpression": { + "id": 1252, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16295:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 1155, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15465:7:0", + }, "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": 1166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15465:183:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1254, + "nodeType": "ExpressionStatement", + "src": "16295:3:0" }, - "id": 1167, - "nodeType": "ExpressionStatement", - "src": "15465:183:0" + "nodeType": "ForStatement", + "src": "16247:285:0" }, { "assignments": [ - 1170 + 1276 ], "declarations": [ { "constant": false, - "id": 1170, + "id": 1276, "mutability": "mutable", "name": "curRound", - "nameLocation": "15676:8:0", + "nameLocation": "16559:8:0", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "15658:26:0", + "scope": 1368, + "src": "16541:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1169, + "id": 1275, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1168, + "id": 1274, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "15658:9:0" + "referencedDeclaration": 85, + "src": "16541:9:0" }, - "referencedDeclaration": 83, - "src": "15658:9:0", + "referencedDeclaration": 85, + "src": "16541:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1176, + "id": 1282, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1171, + "id": 1277, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "15687:10:0", + "src": "16570:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1173, + "id": 1279, "indexExpression": { - "id": 1172, + "id": 1278, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15698:6:0", + "referencedDeclaration": 1220, + "src": "16581:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -34963,20 +39039,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15687:18:0", + "src": "16570:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1175, + "id": 1281, "indexExpression": { - "id": 1174, + "id": 1280, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15706:5:0", + "referencedDeclaration": 1222, + "src": "16589:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -34987,14 +39063,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15687:25:0", + "src": "16570:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "15658:54:0" + "src": "16541:54:0" }, { "expression": { @@ -35002,56 +39078,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1182, + "id": 1288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1178, + "id": 1284, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1170, - "src": "15743:8:0", + "referencedDeclaration": 1276, + "src": "16626:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1179, + "id": 1285, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "15743:15:0", + "referencedDeclaration": 76, + "src": "16626:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1180, + "id": 1286, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "15762:11:0", + "src": "16645:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1181, + "id": 1287, "isConstant": false, "isLValue": false, "isPure": true, @@ -35059,13 +39135,13 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "15762:19:0", + "src": "16645:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "15743:38:0", + "src": "16626:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35073,14 +39149,14 @@ }, { "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1183, + "id": 1289, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15795:29:0", + "src": "16678:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", "typeString": "literal_string \"not in secret sharing phase\"" @@ -35099,7 +39175,7 @@ "typeString": "literal_string \"not in secret sharing phase\"" } ], - "id": 1177, + "id": 1283, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -35107,13 +39183,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15722:7:0", + "src": "16605:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1184, + "id": 1290, "isConstant": false, "isLValue": false, "isPure": false, @@ -35121,88 +39197,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15722:112:0", + "src": "16605:112:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1185, + "id": 1291, "nodeType": "ExpressionStatement", - "src": "15722:112:0" + "src": "16605:112:0" }, { "assignments": [ - 1190 + 1296 ], "declarations": [ { "constant": false, - "id": 1190, + "id": 1296, "mutability": "mutable", "name": "commitments", - "nameLocation": "15876:11:0", + "nameLocation": "16759:11:0", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "15844:43:0", + "scope": 1368, + "src": "16727:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1188, + "id": 1294, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1187, + "id": 1293, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "15844:21:0" + "src": "16727:21:0" }, "referencedDeclaration": 49, - "src": "15844:21:0", + "src": "16727:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1189, + "id": 1295, "nodeType": "ArrayTypeName", - "src": "15844:23:0", + "src": "16727:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1194, + "id": 1300, "initialValue": { "baseExpression": { - "id": 1191, + "id": 1297, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "15890:21:0", + "src": "16773:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1193, + "id": 1299, "indexExpression": { - "id": 1192, + "id": 1298, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15925:6:0", + "referencedDeclaration": 1220, + "src": "16808:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -35213,77 +39289,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15890:51:0", + "src": "16773:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "15844:97:0" + "src": "16727:97:0" }, { "assignments": [ - 1197 + 1303 ], "declarations": [ { "constant": false, - "id": 1197, + "id": 1303, "mutability": "mutable", "name": "commitment", - "nameLocation": "15981:10:0", + "nameLocation": "16864:10:0", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "15951:40:0", + "scope": 1368, + "src": "16834:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1196, + "id": 1302, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1195, + "id": 1301, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "15951:21:0" + "src": "16834:21:0" }, "referencedDeclaration": 49, - "src": "15951:21:0", + "src": "16834:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1201, + "id": 1307, "initialValue": { "baseExpression": { - "id": 1198, + "id": 1304, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1190, - "src": "15994:11:0", + "referencedDeclaration": 1296, + "src": "16877:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1200, + "id": 1306, "indexExpression": { - "id": 1199, + "id": 1305, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "16006:5:0", + "referencedDeclaration": 1222, + "src": "16889:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -35294,46 +39370,288 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15994:18:0", + "src": "16877:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "15951:61:0" + "src": "16834:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1366, + "nodeType": "Block", + "src": "16958:608:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1320, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1303, + "src": "16997:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1321, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "16997:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1324, + "indexExpression": { + "expression": { + "id": 1322, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "17036:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17036:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16997:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1328, + "indexExpression": { + "baseExpression": { + "id": 1325, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "17048:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1327, + "indexExpression": { + "id": 1326, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17058:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17048:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16997:64:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1329, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "seedCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 101, + "src": "16997:100:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16997:128:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1331, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17129:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "16997:133:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", + "id": 1333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17148:40:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + }, + "value": "cannot upload seed cmmt multiple times" + } + ], "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + } + ], + "id": 1319, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16972:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16972:230:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1335, + "nodeType": "ExpressionStatement", + "src": "16972:230:0" + }, + { + "expression": { + "id": 1350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1203, + "id": 1336, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1197, - "src": "16043:10:0", + "referencedDeclaration": 1303, + "src": "17216:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1204, + "id": 1343, "isConstant": false, "isLValue": true, "isPure": false, @@ -35341,34 +39659,34 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "16043:17:0", + "src": "17216:30:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1207, + "id": 1344, "indexExpression": { "expression": { - "id": 1205, + "id": 1338, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "16061:3:0", + "src": "17247:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1206, + "id": 1339, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "16061:10:0", + "src": "17247:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35379,20 +39697,45 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16043:29:0", + "src": "17216:42:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" } }, - "id": 1209, + "id": 1345, "indexExpression": { - "id": 1208, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "16073:6:0", + "baseExpression": { + "id": 1340, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "17259:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1342, + "indexExpression": { + "id": 1341, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17269:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17259:12:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35403,481 +39746,492 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16043:37:0", + "src": "17216:56:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1210, + "id": 1346, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, + "lValueRequested": true, "memberName": "seedCommitment", "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "16043:52:0", + "referencedDeclaration": 101, + "src": "17216:71:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1211, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16043:59:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1212, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16106:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16043:64:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", - "id": 1214, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16121:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - }, - "value": "cannot upload seed cmmt multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - } - ], - "id": 1202, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16022:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1215, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16022:149:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1216, - "nodeType": "ExpressionStatement", - "src": "16022:149:0" - }, - { - "expression": { - "id": 1227, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1217, - "name": "commitment", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1347, + "name": "seedCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1197, - "src": "16181:10:0", + "referencedDeclaration": 1228, + "src": "17290:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1349, + "indexExpression": { + "id": 1348, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17323:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1222, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "16181:17:0", + "nodeType": "IndexAccess", + "src": "17290:48:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } }, - "id": 1223, - "indexExpression": { - "expression": { - "id": 1219, - "name": "msg", + "src": "17216:122:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1351, + "nodeType": "ExpressionStatement", + "src": "17216:122:0" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1353, + "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "16199:3:0", + "referencedDeclaration": 1220, + "src": "17390:6:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } }, - "id": 1220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "16199:10:0", + { + "id": 1354, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1222, + "src": "17414:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "expression": { + "id": 1355, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "17437:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17437:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 1357, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "17465:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1359, + "indexExpression": { + "id": 1358, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17475:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17465:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "53454544434d4d54", + "id": 1360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17495:10:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", + "typeString": "literal_string \"SEEDCMMT\"" + }, + "value": "SEEDCMMT" + }, + { + "baseExpression": { + "id": 1361, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "17523:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1363, + "indexExpression": { + "id": 1362, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17539:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17523:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", + "typeString": "literal_string \"SEEDCMMT\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1352, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "17357:15:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, + "id": 1364, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16181:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1224, - "indexExpression": { - "id": 1221, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "16211:6:0", + "names": [], + "nodeType": "FunctionCall", + "src": "17357:198:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16181:37:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" - } - }, - "id": 1225, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "16181:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "id": 1365, + "nodeType": "EmitStatement", + "src": "17352:203:0" } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1226, - "name": "seedCommitment", + "id": 1315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1312, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "16236:14:0", + "referencedDeclaration": 1309, + "src": "16925:1:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "16181:69:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1228, - "nodeType": "ExpressionStatement", - "src": "16181:69:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1230, - "name": "taskId", + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1313, + "name": "seedCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "16294:6:0", + "referencedDeclaration": 1228, + "src": "16929:15:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16929:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16925:26:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1367, + "initializationExpression": { + "assignments": [ + 1309 + ], + "declarations": [ { - "id": 1231, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "16314:5:0", + "constant": false, + "id": 1309, + "mutability": "mutable", + "name": "i", + "nameLocation": "16918:1:0", + "nodeType": "VariableDeclaration", + "scope": 1367, + "src": "16910:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1232, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "16333:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1308, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16910:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "16333:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "visibility": "internal" + } + ], + "id": 1311, + "initialValue": { + "hexValue": "30", + "id": 1310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16922:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1234, - "name": "sharee", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "16910:13:0" + }, + "loopExpression": { + "expression": { + "id": 1317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "16953:3:0", + "subExpression": { + "id": 1316, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "16357:6:0", + "referencedDeclaration": 1309, + "src": "16953:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - { - "hexValue": "53454544434d4d54", - "id": 1235, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16377:10:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - "value": "SEEDCMMT" - }, - { - "id": 1236, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "16401:14:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1229, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "16265:15:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16265:160:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1318, + "nodeType": "ExpressionStatement", + "src": "16953:3:0" }, - "id": 1238, - "nodeType": "EmitStatement", - "src": "16260:165:0" + "nodeType": "ForStatement", + "src": "16905:661:0" } ] }, "documentation": { - "id": 1140, + "id": 1218, "nodeType": "StructuredDocumentation", - "src": "15026:245:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param sharee the sharee address\n @param seedCommitment secret sharing piece of seed mask" + "src": "15605:277:0", + "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param seedCommitments seedCommitments[i] is the commitment send to receivers[i]" }, - "functionSelector": "c99f61d4", - "id": 1240, + "functionSelector": "b194c028", + "id": 1369, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1151, + "id": 1231, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15440:6:0", + "referencedDeclaration": 1220, + "src": "16068:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1152, + "id": 1232, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15448:5:0", + "referencedDeclaration": 1222, + "src": "16076:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1153, + "id": 1233, "kind": "modifierInvocation", "modifierName": { - "id": 1150, + "id": 1230, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "15428:11:0" + "referencedDeclaration": 240, + "src": "16056:11:0" }, "nodeType": "ModifierInvocation", - "src": "15428:26:0" + "src": "16056:26:0" } ], "name": "uploadSeedCommitment", - "nameLocation": "15285:20:0", + "nameLocation": "15896:20:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1149, + "id": 1229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1142, + "id": 1220, "mutability": "mutable", "name": "taskId", - "nameLocation": "15323:6:0", + "nameLocation": "15934:6:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15315:14:0", + "scope": 1369, + "src": "15926:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35885,10 +40239,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1141, + "id": 1219, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "15315:7:0", + "src": "15926:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -35898,13 +40252,13 @@ }, { "constant": false, - "id": 1144, + "id": 1222, "mutability": "mutable", "name": "round", - "nameLocation": "15346:5:0", + "nameLocation": "15957:5:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15339:12:0", + "scope": 1369, + "src": "15950:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35912,10 +40266,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1143, + "id": 1221, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "15339:6:0", + "src": "15950:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -35925,232 +40279,186 @@ }, { "constant": false, - "id": 1146, + "id": 1225, "mutability": "mutable", - "name": "sharee", - "nameLocation": "15369:6:0", + "name": "receivers", + "nameLocation": "15991:9:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15361:14:0", + "scope": 1369, + "src": "15972:28:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1145, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15361:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1223, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15972:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1224, + "nodeType": "ArrayTypeName", + "src": "15972:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1148, + "id": 1228, "mutability": "mutable", - "name": "seedCommitment", - "nameLocation": "15400:14:0", + "name": "seedCommitments", + "nameLocation": "16027:15:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15385:29:0", + "scope": 1369, + "src": "16010:32:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1147, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15385:5:0", + "baseType": { + "id": 1226, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16010:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1227, + "nodeType": "ArrayTypeName", + "src": "16010:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "15305:115:0" + "src": "15916:132:0" }, "returnParameters": { - "id": 1154, + "id": 1234, "nodeType": "ParameterList", "parameters": [], - "src": "15455:0:0" + "src": "16083:0:0" }, - "scope": 1663, - "src": "15276:1156:0", + "scope": 1927, + "src": "15887:1685:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1355, + "id": 1537, "nodeType": "Block", - "src": "16818:967:0", + "src": "17997:1484:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1265, + "id": 1392, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 1388, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "18028:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } }, - "id": 1260, + "id": 1389, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1257, - "name": "seed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "16849:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16849:11:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16863:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16849:15:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18028:14:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - }, - "id": 1264, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1261, - "name": "seed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "16868:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1262, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16868:11:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1263, - "name": "maxSSComitmentLength", + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 1390, + "name": "seeds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "16883:20:0", + "referencedDeclaration": 1380, + "src": "18046:5:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "src": "16868:35:0", + "id": 1391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18046:12:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "16849:54:0", + "src": "18028:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1266, + "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365656473206c656e677468", + "id": 1393, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16917:48:0", + "src": "18072:45:0", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", + "typeString": "literal_string \"senders length is not equal to seeds length\"" }, - "value": "commitment length exceeds limit or it is empty" + "value": "senders length is not equal to seeds length" } ], "expression": { @@ -36160,11 +40468,11 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", + "typeString": "literal_string \"senders length is not equal to seeds length\"" } ], - "id": 1256, + "id": 1387, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -36172,13 +40480,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "16828:7:0", + "src": "18007:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1267, + "id": 1394, "isConstant": false, "isLValue": false, "isPure": false, @@ -36186,80 +40494,481 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16828:147:0", + "src": "18007:120:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1268, + "id": 1395, "nodeType": "ExpressionStatement", - "src": "16828:147:0" + "src": "18007:120:0" + }, + { + "body": { + "id": 1424, + "nodeType": "Block", + "src": "18180:192:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1408, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18219:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1410, + "indexExpression": { + "id": 1409, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18225:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18219:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18219:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18237:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18219:19:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1414, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18242:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1416, + "indexExpression": { + "id": 1415, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18248:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18242:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18242:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1418, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "18261:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "18242:39:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18219:62:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18299:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1407, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "18194:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18194:167:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1423, + "nodeType": "ExpressionStatement", + "src": "18194:167:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1400, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18157:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1401, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18161:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18161:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18157:16:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1425, + "initializationExpression": { + "assignments": [ + 1397 + ], + "declarations": [ + { + "constant": false, + "id": 1397, + "mutability": "mutable", + "name": "i", + "nameLocation": "18150:1:0", + "nodeType": "VariableDeclaration", + "scope": 1425, + "src": "18142:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1396, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18142:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1399, + "initialValue": { + "hexValue": "30", + "id": 1398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18154:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "18142:13:0" + }, + "loopExpression": { + "expression": { + "id": 1405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "18175:3:0", + "subExpression": { + "id": 1404, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18175:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1406, + "nodeType": "ExpressionStatement", + "src": "18175:3:0" + }, + "nodeType": "ForStatement", + "src": "18137:235:0" }, { "assignments": [ - 1271 + 1428 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1428, "mutability": "mutable", "name": "curRound", - "nameLocation": "17003:8:0", + "nameLocation": "18399:8:0", "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "16985:26:0", + "scope": 1537, + "src": "18381:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1270, + "id": 1427, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1269, + "id": 1426, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "16985:9:0" + "referencedDeclaration": 85, + "src": "18381:9:0" }, - "referencedDeclaration": 83, - "src": "16985:9:0", + "referencedDeclaration": 85, + "src": "18381:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1277, + "id": 1434, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1272, + "id": 1429, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "17014:10:0", + "src": "18410:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1274, + "id": 1431, "indexExpression": { - "id": 1273, + "id": 1430, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "17025:6:0", + "referencedDeclaration": 1372, + "src": "18421:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -36270,20 +40979,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17014:18:0", + "src": "18410:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1276, + "id": 1433, "indexExpression": { - "id": 1275, + "id": 1432, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "17033:5:0", + "referencedDeclaration": 1374, + "src": "18429:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -36294,14 +41003,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17014:25:0", + "src": "18410:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "16985:54:0" + "src": "18381:54:0" }, { "expression": { @@ -36309,56 +41018,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1283, + "id": 1440, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1279, + "id": 1436, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "17070:8:0", + "referencedDeclaration": 1428, + "src": "18466:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1280, + "id": 1437, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "17070:15:0", + "referencedDeclaration": 76, + "src": "18466:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1281, + "id": 1438, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "17089:11:0", + "src": "18485:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1282, + "id": 1439, "isConstant": false, "isLValue": false, "isPure": true, @@ -36366,13 +41075,13 @@ "memberName": "Aggregating", "nodeType": "MemberAccess", "referencedDeclaration": 12, - "src": "17089:23:0", + "src": "18485:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "17070:42:0", + "src": "18466:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -36380,14 +41089,14 @@ }, { "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1284, + "id": 1441, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "17126:24:0", + "src": "18522:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", "typeString": "literal_string \"not in upload ss phase\"" @@ -36406,7 +41115,7 @@ "typeString": "literal_string \"not in upload ss phase\"" } ], - "id": 1278, + "id": 1435, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -36414,13 +41123,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "17049:7:0", + "src": "18445:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1285, + "id": 1442, "isConstant": false, "isLValue": false, "isPure": false, @@ -36428,88 +41137,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17049:111:0", + "src": "18445:111:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1286, + "id": 1443, "nodeType": "ExpressionStatement", - "src": "17049:111:0" + "src": "18445:111:0" }, { "assignments": [ - 1291 + 1448 ], "declarations": [ { "constant": false, - "id": 1291, + "id": 1448, "mutability": "mutable", "name": "commitments", - "nameLocation": "17202:11:0", + "nameLocation": "18598:11:0", "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "17170:43:0", + "scope": 1537, + "src": "18566:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1289, + "id": 1446, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1288, + "id": 1445, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "17170:21:0" + "src": "18566:21:0" }, "referencedDeclaration": 49, - "src": "17170:21:0", + "src": "18566:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1290, + "id": 1447, "nodeType": "ArrayTypeName", - "src": "17170:23:0", + "src": "18566:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1295, + "id": 1452, "initialValue": { "baseExpression": { - "id": 1292, + "id": 1449, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "17216:21:0", + "src": "18612:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1294, + "id": 1451, "indexExpression": { - "id": 1293, + "id": 1450, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "17251:6:0", + "referencedDeclaration": 1372, + "src": "18647:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -36520,77 +41229,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17216:51:0", + "src": "18612:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "17170:97:0" + "src": "18566:97:0" }, { "assignments": [ - 1298 + 1455 ], "declarations": [ { "constant": false, - "id": 1298, + "id": 1455, "mutability": "mutable", "name": "commitment", - "nameLocation": "17307:10:0", + "nameLocation": "18703:10:0", "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "17277:40:0", + "scope": 1537, + "src": "18673:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1297, + "id": 1454, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1296, + "id": 1453, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "17277:21:0" + "src": "18673:21:0" }, "referencedDeclaration": 49, - "src": "17277:21:0", + "src": "18673:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1302, + "id": 1459, "initialValue": { "baseExpression": { - "id": 1299, + "id": 1456, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "17320:11:0", + "referencedDeclaration": 1448, + "src": "18716:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1301, + "id": 1458, "indexExpression": { - "id": 1300, + "id": 1457, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "17332:5:0", + "referencedDeclaration": 1374, + "src": "18728:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -36601,264 +41310,531 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17320:18:0", + "src": "18716:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "17277:61:0" + "src": "18673:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1535, + "nodeType": "Block", + "src": "18787:688:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { "expression": { - "id": 1304, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "17369:10:0", + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1472, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1455, + "src": "18826:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1473, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "18826:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1477, + "indexExpression": { + "baseExpression": { + "id": 1474, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "18865:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1476, + "indexExpression": { + "id": 1475, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "18873:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18865:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18826:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1480, + "indexExpression": { + "expression": { + "id": 1478, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "18877:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "18877:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18826:62:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1305, + "id": 1481, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "ssdata", + "memberName": "seedCommitment", "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "17369:17:0", + "referencedDeclaration": 101, + "src": "18826:98:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" } }, - "id": 1308, - "indexExpression": { + "id": 1482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18826:126:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18955:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18826:130:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", + "id": 1485, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18974:30:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + }, + "value": "must upload commitment first" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + } + ], + "id": 1471, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "18801:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18801:217:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1487, + "nodeType": "ExpressionStatement", + "src": "18801:217:0" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { "expression": { - "id": 1306, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17387:3:0", + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1489, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1455, + "src": "19057:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1490, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "19057:17:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1494, + "indexExpression": { + "baseExpression": { + "id": 1491, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "19075:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1493, + "indexExpression": { + "id": 1492, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19083:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19075:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19057:29:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1497, + "indexExpression": { + "expression": { + "id": 1495, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "19087:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19087:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19057:41:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1307, + "id": 1498, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "sender", + "memberName": "seedPiece", "nodeType": "MemberAccess", - "src": "17387:10:0", + "referencedDeclaration": 99, + "src": "19057:51:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" } }, + "id": 1499, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17369:29:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "19057:58:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1310, - "indexExpression": { - "id": 1309, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17399:6:0", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19119:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, + "src": "19057:63:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", + "id": 1502, "isConstant": false, - "isLValue": true, - "isPure": false, + "isLValue": false, + "isPure": true, + "kind": "string", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17369:37:0", + "nodeType": "Literal", + "src": "19138:35:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" + }, + "value": "cannot upload seed multiple times" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" } - }, - "id": 1311, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "17369:52:0", + ], + "id": 1488, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "19032:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "id": 1312, + "id": 1503, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "17369:59:0", + "names": [], + "nodeType": "FunctionCall", + "src": "19032:155:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1313, + "id": 1504, + "nodeType": "ExpressionStatement", + "src": "19032:155:0" + }, + { + "expression": { + "id": 1519, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "17431:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "17369:63:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17446:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1303, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17348:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17348:138:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1317, - "nodeType": "ExpressionStatement", - "src": "17348:138:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1319, + "id": 1505, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "17517:10:0", + "referencedDeclaration": 1455, + "src": "19201:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1320, + "id": 1512, "isConstant": false, "isLValue": true, "isPure": false, @@ -36866,34 +41842,45 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "17517:17:0", + "src": "19201:17:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1323, + "id": 1513, "indexExpression": { - "expression": { - "id": 1321, - "name": "msg", + "baseExpression": { + "id": 1507, + "name": "senders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17535:3:0", + "referencedDeclaration": 1377, + "src": "19219:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1509, + "indexExpression": { + "id": 1508, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19227:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1322, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17535:10:0", + "nodeType": "IndexAccess", + "src": "19219:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -36904,20 +41891,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17517:29:0", + "src": "19201:29:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" } }, - "id": 1325, + "id": 1514, "indexExpression": { - "id": 1324, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17547:6:0", + "expression": { + "id": 1510, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "19231:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19231:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -36928,481 +41929,492 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17517:37:0", + "src": "19201:41:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1326, + "id": 1515, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, + "lValueRequested": true, "memberName": "seedPiece", "nodeType": "MemberAccess", - "referencedDeclaration": 97, - "src": "17517:47:0", + "referencedDeclaration": 99, + "src": "19201:51:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "17517:54:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1328, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17575:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "17517:59:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17590:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1318, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17496:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17496:139:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1332, - "nodeType": "ExpressionStatement", - "src": "17496:139:0" - }, - { - "expression": { - "id": 1343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1333, - "name": "commitment", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1516, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "19255:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1518, + "indexExpression": { + "id": 1517, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "17645:10:0", + "referencedDeclaration": 1461, + "src": "19261:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1338, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "17645:17:0", + "nodeType": "IndexAccess", + "src": "19255:8:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } }, - "id": 1339, - "indexExpression": { - "expression": { - "id": 1335, - "name": "msg", + "src": "19201:62:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1520, + "nodeType": "ExpressionStatement", + "src": "19201:62:0" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1522, + "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17663:3:0", + "referencedDeclaration": 1372, + "src": "19315:6:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } }, - "id": 1336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17663:10:0", + { + "id": 1523, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1374, + "src": "19339:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "baseExpression": { + "id": 1524, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "19362:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1526, + "indexExpression": { + "id": 1525, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19370:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19362:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1527, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "19390:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19390:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "53454544", + "id": 1529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19418:6:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", + "typeString": "literal_string \"SEED\"" + }, + "value": "SEED" + }, + { + "baseExpression": { + "id": 1530, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "19442:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1532, + "indexExpression": { + "id": 1531, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19448:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19442:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", + "typeString": "literal_string \"SEED\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1521, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "19282:15:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, + "id": 1533, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17645:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1340, - "indexExpression": { - "id": 1337, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17675:6:0", + "names": [], + "nodeType": "FunctionCall", + "src": "19282:182:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17645:37:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" - } - }, - "id": 1341, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 97, - "src": "17645:47:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "id": 1534, + "nodeType": "EmitStatement", + "src": "19277:187:0" } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1342, - "name": "seed", + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1464, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "17695:4:0", + "referencedDeclaration": 1461, + "src": "18764:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1465, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18768:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18768:12:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "17645:54:0", + "src": "18764:16:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1344, - "nodeType": "ExpressionStatement", - "src": "17645:54:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1346, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "17730:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, + "id": 1536, + "initializationExpression": { + "assignments": [ + 1461 + ], + "declarations": [ { - "id": 1347, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "17738:5:0", + "constant": false, + "id": 1461, + "mutability": "mutable", + "name": "i", + "nameLocation": "18757:1:0", + "nodeType": "VariableDeclaration", + "scope": 1536, + "src": "18749:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1348, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17745:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18749:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17745:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "visibility": "internal" + } + ], + "id": 1463, + "initialValue": { + "hexValue": "30", + "id": 1462, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18761:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1350, - "name": "sharee", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "18749:13:0" + }, + "loopExpression": { + "expression": { + "id": 1469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "18782:3:0", + "subExpression": { + "id": 1468, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17757:6:0", + "referencedDeclaration": 1461, + "src": "18782:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - { - "hexValue": "53454544", - "id": 1351, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17765:6:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - "value": "SEED" - }, - { - "id": 1352, - "name": "seed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "17773:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1345, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "17714:15:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1353, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17714:64:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1470, + "nodeType": "ExpressionStatement", + "src": "18782:3:0" }, - "id": 1354, - "nodeType": "EmitStatement", - "src": "17709:69:0" + "nodeType": "ForStatement", + "src": "18744:731:0" } ] }, "documentation": { - "id": 1241, + "id": 1370, "nodeType": "StructuredDocumentation", - "src": "16438:216:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param sharee the sharee address\n @param seed the seed piece" + "src": "17578:240:0", + "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param seeds seeds[i] is the seed send by senders[i]" }, - "functionSelector": "90ec5deb", - "id": 1356, + "functionSelector": "1fd38b83", + "id": 1538, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1252, + "id": 1383, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "16803:6:0", + "referencedDeclaration": 1372, + "src": "17982:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1253, + "id": 1384, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16811:5:0", + "referencedDeclaration": 1374, + "src": "17990:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1254, + "id": 1385, "kind": "modifierInvocation", "modifierName": { - "id": 1251, + "id": 1382, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "16791:11:0" + "referencedDeclaration": 240, + "src": "17970:11:0" }, "nodeType": "ModifierInvocation", - "src": "16791:26:0" + "src": "17970:26:0" } ], "name": "uploadSeed", - "nameLocation": "16668:10:0", + "nameLocation": "17832:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1250, + "id": 1381, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1243, + "id": 1372, "mutability": "mutable", "name": "taskId", - "nameLocation": "16696:6:0", + "nameLocation": "17860:6:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16688:14:0", + "scope": 1538, + "src": "17852:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -37410,10 +42422,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1242, + "id": 1371, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "16688:7:0", + "src": "17852:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -37423,13 +42435,13 @@ }, { "constant": false, - "id": 1245, + "id": 1374, "mutability": "mutable", "name": "round", - "nameLocation": "16719:5:0", + "nameLocation": "17883:5:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16712:12:0", + "scope": 1538, + "src": "17876:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -37437,10 +42449,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1244, + "id": 1373, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "16712:6:0", + "src": "17876:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -37450,341 +42462,696 @@ }, { "constant": false, - "id": 1247, + "id": 1377, "mutability": "mutable", - "name": "sharee", - "nameLocation": "16742:6:0", + "name": "senders", + "nameLocation": "17917:7:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16734:14:0", + "scope": 1538, + "src": "17898:26:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1246, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16734:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1375, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17898:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1376, + "nodeType": "ArrayTypeName", + "src": "17898:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1249, + "id": 1380, "mutability": "mutable", - "name": "seed", - "nameLocation": "16773:4:0", + "name": "seeds", + "nameLocation": "17951:5:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16758:19:0", + "scope": 1538, + "src": "17934:22:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1248, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16758:5:0", + "baseType": { + "id": 1378, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "17934:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1379, + "nodeType": "ArrayTypeName", + "src": "17934:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "16678:105:0" + "src": "17842:120:0" }, "returnParameters": { - "id": 1255, + "id": 1386, "nodeType": "ParameterList", "parameters": [], - "src": "16818:0:0" + "src": "17997:0:0" }, - "scope": 1663, - "src": "16659:1126:0", + "scope": 1927, + "src": "17823:1658:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1467, + "id": 1689, "nodeType": "Block", - "src": "18233:1236:0", + "src": "19983:1536:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1381, + "id": 1561, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 1557, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "20014:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } }, - "id": 1376, + "id": 1558, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1373, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "18264:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1374, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18264:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1375, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18293:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18264:30:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20014:16:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "&&", + "operator": "==", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 1559, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20034:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } }, - "id": 1380, + "id": 1560, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1377, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "18314:19:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20034:27:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20014:47:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f207365637265744b6579436f6d6d69746d656e7473206c656e677468", + "id": 1562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20075:62:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", + "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" + }, + "value": "receivers length is not equal to secretKeyCommitments length" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", + "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" + } + ], + "id": 1556, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "19993:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19993:154:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1564, + "nodeType": "ExpressionStatement", + "src": "19993:154:0" + }, + { + "body": { + "id": 1593, + "nodeType": "Block", + "src": "20215:242:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1577, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20254:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1579, + "indexExpression": { + "id": 1578, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20275:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20254:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20254:30:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20287:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20254:34:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1583, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20312:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1585, + "indexExpression": { + "id": 1584, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20333:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20312:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20312:30:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1587, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "20346:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "20312:54:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "20254:112:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1378, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18314:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20384:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1379, - "name": "maxSSComitmentLength", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1576, + "name": "require", "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "18344:20:0", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "20229:7:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "src": "18314:50:0", + "id": 1591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20229:217:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "src": "18264:100:0", + "id": 1592, + "nodeType": "ExpressionStatement", + "src": "20229:217:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1569, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20177:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1570, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20181:20:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20181:27:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20177:31:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1594, + "initializationExpression": { + "assignments": [ + 1566 + ], + "declarations": [ { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1382, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18378:48:0", + "constant": false, + "id": 1566, + "mutability": "mutable", + "name": "i", + "nameLocation": "20170:1:0", + "nodeType": "VariableDeclaration", + "scope": 1594, + "src": "20162:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "value": "commitment length exceeds limit or it is empty" + "typeName": { + "id": 1565, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20162:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" } ], + "id": 1568, + "initialValue": { + "hexValue": "30", + "id": 1567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20174:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "20162:13:0" + }, + "loopExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "id": 1574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "20210:3:0", + "subExpression": { + "id": 1573, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20210:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 1372, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18243:7:0", + }, "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": 1383, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18243:193:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1575, + "nodeType": "ExpressionStatement", + "src": "20210:3:0" }, - "id": 1384, - "nodeType": "ExpressionStatement", - "src": "18243:193:0" + "nodeType": "ForStatement", + "src": "20157:300:0" }, { "assignments": [ - 1387 + 1597 ], "declarations": [ { "constant": false, - "id": 1387, + "id": 1597, "mutability": "mutable", "name": "curRound", - "nameLocation": "18464:8:0", + "nameLocation": "20484:8:0", "nodeType": "VariableDeclaration", - "scope": 1467, - "src": "18446:26:0", + "scope": 1689, + "src": "20466:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1386, + "id": 1596, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1385, + "id": 1595, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "18446:9:0" + "referencedDeclaration": 85, + "src": "20466:9:0" }, - "referencedDeclaration": 83, - "src": "18446:9:0", + "referencedDeclaration": 85, + "src": "20466:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1393, + "id": 1603, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1388, + "id": 1598, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "18475:10:0", + "src": "20495:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1390, + "id": 1600, "indexExpression": { - "id": 1389, + "id": 1599, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "18486:6:0", + "referencedDeclaration": 1541, + "src": "20506:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -37795,20 +43162,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18475:18:0", + "src": "20495:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1392, + "id": 1602, "indexExpression": { - "id": 1391, + "id": 1601, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18494:5:0", + "referencedDeclaration": 1543, + "src": "20514:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -37819,14 +43186,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18475:25:0", + "src": "20495:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "18446:54:0" + "src": "20466:54:0" }, { "expression": { @@ -37834,56 +43201,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1399, + "id": 1609, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1395, + "id": 1605, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1387, - "src": "18531:8:0", + "referencedDeclaration": 1597, + "src": "20551:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1396, + "id": 1606, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "18531:15:0", + "referencedDeclaration": 76, + "src": "20551:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1397, + "id": 1607, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "18550:11:0", + "src": "20570:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1398, + "id": 1608, "isConstant": false, "isLValue": false, "isPure": true, @@ -37891,13 +43258,13 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "18550:19:0", + "src": "20570:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "18531:38:0", + "src": "20551:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -37905,14 +43272,14 @@ }, { "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1400, + "id": 1610, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "18583:29:0", + "src": "20603:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", "typeString": "literal_string \"not in secret sharing phase\"" @@ -37931,7 +43298,7 @@ "typeString": "literal_string \"not in secret sharing phase\"" } ], - "id": 1394, + "id": 1604, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -37939,13 +43306,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "18510:7:0", + "src": "20530:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1401, + "id": 1611, "isConstant": false, "isLValue": false, "isPure": false, @@ -37953,88 +43320,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18510:112:0", + "src": "20530:112:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1402, + "id": 1612, "nodeType": "ExpressionStatement", - "src": "18510:112:0" + "src": "20530:112:0" }, { "assignments": [ - 1407 + 1617 ], "declarations": [ { "constant": false, - "id": 1407, + "id": 1617, "mutability": "mutable", "name": "commitments", - "nameLocation": "18664:11:0", + "nameLocation": "20684:11:0", "nodeType": "VariableDeclaration", - "scope": 1467, - "src": "18632:43:0", + "scope": 1689, + "src": "20652:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1405, + "id": 1615, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1404, + "id": 1614, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "18632:21:0" + "src": "20652:21:0" }, "referencedDeclaration": 49, - "src": "18632:21:0", + "src": "20652:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1406, + "id": 1616, "nodeType": "ArrayTypeName", - "src": "18632:23:0", + "src": "20652:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1411, + "id": 1621, "initialValue": { "baseExpression": { - "id": 1408, + "id": 1618, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "18678:21:0", + "src": "20698:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1410, + "id": 1620, "indexExpression": { - "id": 1409, + "id": 1619, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "18713:6:0", + "referencedDeclaration": 1541, + "src": "20733:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -38045,194 +43412,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18678:51:0", + "src": "20698:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "18632:97:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1412, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1407, - "src": "18743:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18743:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1414, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18765:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "18743:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1422, - "nodeType": "IfStatement", - "src": "18739:76:0", - "trueBody": { - "id": 1421, - "nodeType": "Block", - "src": "18772:43:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1416, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1407, - "src": "18786:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "18786:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.RoundModelCommitments storage ref[] storage pointer) returns (struct DeltaContract.RoundModelCommitments storage ref)" - } - }, - "id": 1419, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18786:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" - } - }, - "id": 1420, - "nodeType": "ExpressionStatement", - "src": "18786:18:0" - } - ] - } + "src": "20652:97:0" }, { "assignments": [ - 1425 + 1624 ], "declarations": [ { "constant": false, - "id": 1425, + "id": 1624, "mutability": "mutable", "name": "commitment", - "nameLocation": "18854:10:0", + "nameLocation": "20789:10:0", "nodeType": "VariableDeclaration", - "scope": 1467, - "src": "18824:40:0", + "scope": 1689, + "src": "20759:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1424, + "id": 1623, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1423, + "id": 1622, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "18824:21:0" + "src": "20759:21:0" }, "referencedDeclaration": 49, - "src": "18824:21:0", + "src": "20759:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1429, + "id": 1628, "initialValue": { "baseExpression": { - "id": 1426, + "id": 1625, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1407, - "src": "18867:11:0", + "referencedDeclaration": 1617, + "src": "20802:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1428, + "id": 1627, "indexExpression": { - "id": 1427, + "id": 1626, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18879:5:0", + "referencedDeclaration": 1543, + "src": "20814:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -38243,46 +43493,288 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18867:18:0", + "src": "20802:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "18824:61:0" + "src": "20759:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1687, + "nodeType": "Block", + "src": "20888:625:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1641, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1624, + "src": "20927:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1642, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "20927:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1645, + "indexExpression": { + "expression": { + "id": 1643, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "20966:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "20966:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20927:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1649, + "indexExpression": { + "baseExpression": { + "id": 1646, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "20978:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1648, + "indexExpression": { + "id": 1647, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "20988:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20978:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20927:64:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1650, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "secretKeyMaskCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 105, + "src": "20927:109:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20927:137:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1652, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21068:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20927:142:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", + "id": 1654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21087:40:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + }, + "value": "cannot upload seed cmmt multiple times" + } + ], "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + } + ], + "id": 1640, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "20902:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20902:239:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1656, + "nodeType": "ExpressionStatement", + "src": "20902:239:0" + }, + { + "expression": { + "id": 1671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1431, + "id": 1657, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "18916:10:0", + "referencedDeclaration": 1624, + "src": "21155:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1432, + "id": 1664, "isConstant": false, "isLValue": true, "isPure": false, @@ -38290,34 +43782,34 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "18916:34:0", + "src": "21155:30:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1435, + "id": 1665, "indexExpression": { "expression": { - "id": 1433, + "id": 1659, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "18951:3:0", + "src": "21186:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1434, + "id": 1660, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "18951:10:0", + "src": "21186:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -38328,505 +43820,541 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18916:46:0", + "src": "21155:42:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1666, + "indexExpression": { + "baseExpression": { + "id": 1661, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "21198:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1663, + "indexExpression": { + "id": 1662, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "21208:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21198:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21155:56:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1667, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "secretKeyMaskCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 105, + "src": "21155:97:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1668, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "21255:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1670, + "indexExpression": { + "id": 1669, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "21276:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21255:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "21155:123:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1672, + "nodeType": "ExpressionStatement", + "src": "21155:123:0" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1674, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1541, + "src": "21330:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1675, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1543, + "src": "21354:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "expression": { + "id": 1676, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "21377:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "21377:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 1678, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "21405:9:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, - "id": 1437, + "id": 1680, "indexExpression": { - "id": 1436, - "name": "sharee", + "id": 1679, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "18963:6:0", + "referencedDeclaration": 1630, + "src": "21415:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18916:54:0", + "src": "21405:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1438, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "18916:95:0", + { + "hexValue": "534b4d41534b434d4d54", + "id": 1681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21435:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", + "typeString": "literal_string \"SKMASKCMMT\"" + }, + "value": "SKMASKCMMT" + }, + { + "baseExpression": { + "id": 1682, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "21465:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1684, + "indexExpression": { + "id": 1683, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "21486:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21465:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", + "typeString": "literal_string \"SKMASKCMMT\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1673, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "21297:15:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, - "id": 1439, + "id": 1685, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18916:119:0", + "names": [], + "nodeType": "FunctionCall", + "src": "21297:205:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19039:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18916:124:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1442, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19054:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" + "id": 1686, + "nodeType": "EmitStatement", + "src": "21292:210:0" } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1430, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18895:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18895:204:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ] }, - "id": 1444, - "nodeType": "ExpressionStatement", - "src": "18895:204:0" - }, - { - "expression": { - "id": 1455, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1636, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { + "leftExpression": { + "id": 1633, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "20850:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1445, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "19109:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } - }, - "id": 1450, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "19109:26:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1451, - "indexExpression": { - "expression": { - "id": 1447, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19136:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19136:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19109:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1452, - "indexExpression": { - "id": 1449, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "19148:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19109:46:0", + "id": 1634, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20854:20:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "id": 1453, + "id": 1635, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyMaskCommitment", + "lValueRequested": false, + "memberName": "length", "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "19109:83:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1454, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "19195:19:0", + "src": "20854:27:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "19109:105:0", + "src": "20850:31:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1456, - "nodeType": "ExpressionStatement", - "src": "19109:105:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1458, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "19258:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, + "id": 1688, + "initializationExpression": { + "assignments": [ + 1630 + ], + "declarations": [ { - "id": 1459, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "19278:5:0", + "constant": false, + "id": 1630, + "mutability": "mutable", + "name": "i", + "nameLocation": "20843:1:0", + "nodeType": "VariableDeclaration", + "scope": 1688, + "src": "20835:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1460, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19297:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1629, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20835:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1461, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19297:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "visibility": "internal" + } + ], + "id": 1632, + "initialValue": { + "hexValue": "30", + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20847:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1462, - "name": "sharee", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "20835:13:0" + }, + "loopExpression": { + "expression": { + "id": 1638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "20883:3:0", + "subExpression": { + "id": 1637, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "19321:6:0", + "referencedDeclaration": 1630, + "src": "20883:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - { - "hexValue": "534b4d41534b434d4d54", - "id": 1463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19341:12:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - "value": "SKMASKCMMT" - }, - { - "id": 1464, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "19367:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1457, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "19229:15:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1465, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19229:167:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1639, + "nodeType": "ExpressionStatement", + "src": "20883:3:0" }, - "id": 1466, - "nodeType": "EmitStatement", - "src": "19224:172:0" + "nodeType": "ForStatement", + "src": "20830:683:0" } ] }, "documentation": { - "id": 1357, + "id": 1539, "nodeType": "StructuredDocumentation", - "src": "17791:248:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param sharee the sharee address\n @param secretKeyCommitment secret sharing piece of seed mask" + "src": "19487:285:0", + "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i]" }, - "functionSelector": "ee9dc1bd", - "id": 1468, + "functionSelector": "e49c9d43", + "id": 1690, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1368, + "id": 1552, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "18218:6:0", + "referencedDeclaration": 1541, + "src": "19968:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1369, + "id": 1553, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18226:5:0", + "referencedDeclaration": 1543, + "src": "19976:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1370, + "id": 1554, "kind": "modifierInvocation", "modifierName": { - "id": 1367, + "id": 1551, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "18206:11:0" + "referencedDeclaration": 240, + "src": "19956:11:0" }, "nodeType": "ModifierInvocation", - "src": "18206:26:0" + "src": "19956:26:0" } ], "name": "uploadSecretKeyCommitment", - "nameLocation": "18053:25:0", + "nameLocation": "19786:25:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1366, + "id": 1550, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1359, + "id": 1541, "mutability": "mutable", "name": "taskId", - "nameLocation": "18096:6:0", + "nameLocation": "19829:6:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18088:14:0", + "scope": 1690, + "src": "19821:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -38834,10 +44362,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1358, + "id": 1540, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "18088:7:0", + "src": "19821:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -38847,13 +44375,13 @@ }, { "constant": false, - "id": 1361, + "id": 1543, "mutability": "mutable", "name": "round", - "nameLocation": "18119:5:0", + "nameLocation": "19852:5:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18112:12:0", + "scope": 1690, + "src": "19845:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -38861,10 +44389,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1360, + "id": 1542, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "18112:6:0", + "src": "19845:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -38874,232 +44402,186 @@ }, { "constant": false, - "id": 1363, + "id": 1546, "mutability": "mutable", - "name": "sharee", - "nameLocation": "18142:6:0", + "name": "receivers", + "nameLocation": "19886:9:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18134:14:0", + "scope": 1690, + "src": "19867:28:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1362, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "18134:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1544, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19867:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1545, + "nodeType": "ArrayTypeName", + "src": "19867:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1365, + "id": 1549, "mutability": "mutable", - "name": "secretKeyCommitment", - "nameLocation": "18173:19:0", + "name": "secretKeyCommitments", + "nameLocation": "19922:20:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18158:34:0", + "scope": 1690, + "src": "19905:37:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1364, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "18158:5:0", + "baseType": { + "id": 1547, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "19905:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1548, + "nodeType": "ArrayTypeName", + "src": "19905:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "18078:120:0" + "src": "19811:137:0" }, "returnParameters": { - "id": 1371, + "id": 1555, "nodeType": "ParameterList", "parameters": [], - "src": "18233:0:0" + "src": "19983:0:0" }, - "scope": 1663, - "src": "18044:1425:0", + "scope": 1927, + "src": "19777:1742:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1594, + "id": 1858, "nodeType": "Block", - "src": "19884:1326:0", + "src": "21987:1673:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1493, + "id": 1713, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1488, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1485, - "name": "secretkeyMask", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "19915:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "19915:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1487, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19938:1:0", + "expression": { + "id": 1709, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "22018:7:0", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } }, - "src": "19915:24:0", + "id": 1710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22018:14:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "&&", + "operator": "==", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1492, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1489, - "name": "secretkeyMask", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "19959:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1490, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "19959:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1491, - "name": "maxSSComitmentLength", + "expression": { + "id": 1711, + "name": "secretkeyMasks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "19983:20:0", + "referencedDeclaration": 1701, + "src": "22036:14:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "src": "19959:44:0", + "id": 1712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22036:21:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "19915:88:0", + "src": "22018:39:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1494, + "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365637265746b65794d61736b73206c656e677468", + "id": 1714, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "20017:48:0", + "src": "22071:54:0", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", + "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" }, - "value": "commitment length exceeds limit or it is empty" + "value": "senders length is not equal to secretkeyMasks length" } ], "expression": { @@ -39109,11 +44591,11 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", + "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" } ], - "id": 1484, + "id": 1708, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -39121,13 +44603,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "19894:7:0", + "src": "21997:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1495, + "id": 1715, "isConstant": false, "isLValue": false, "isPure": false, @@ -39135,80 +44617,481 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "19894:181:0", + "src": "21997:138:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1496, + "id": 1716, "nodeType": "ExpressionStatement", - "src": "19894:181:0" + "src": "21997:138:0" + }, + { + "body": { + "id": 1745, + "nodeType": "Block", + "src": "22197:230:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1729, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22236:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1731, + "indexExpression": { + "id": 1730, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22251:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22236:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22236:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1733, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22263:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22236:28:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1735, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22288:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1737, + "indexExpression": { + "id": 1736, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22303:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22288:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22288:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1739, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "22316:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "22288:48:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "22236:100:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1742, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22354:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1728, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "22211:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22211:205:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1744, + "nodeType": "ExpressionStatement", + "src": "22211:205:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1724, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1721, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22165:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1722, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22169:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22169:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "22165:25:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1746, + "initializationExpression": { + "assignments": [ + 1718 + ], + "declarations": [ + { + "constant": false, + "id": 1718, + "mutability": "mutable", + "name": "i", + "nameLocation": "22158:1:0", + "nodeType": "VariableDeclaration", + "scope": 1746, + "src": "22150:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1717, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22150:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1720, + "initialValue": { + "hexValue": "30", + "id": 1719, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22162:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "22150:13:0" + }, + "loopExpression": { + "expression": { + "id": 1726, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "22192:3:0", + "subExpression": { + "id": 1725, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22192:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1727, + "nodeType": "ExpressionStatement", + "src": "22192:3:0" + }, + "nodeType": "ForStatement", + "src": "22145:282:0" }, { "assignments": [ - 1499 + 1749 ], "declarations": [ { "constant": false, - "id": 1499, + "id": 1749, "mutability": "mutable", "name": "curRound", - "nameLocation": "20103:8:0", + "nameLocation": "22454:8:0", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20085:26:0", + "scope": 1858, + "src": "22436:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1498, + "id": 1748, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1497, + "id": 1747, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "20085:9:0" + "referencedDeclaration": 85, + "src": "22436:9:0" }, - "referencedDeclaration": 83, - "src": "20085:9:0", + "referencedDeclaration": 85, + "src": "22436:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1505, + "id": 1755, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1500, + "id": 1750, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "20114:10:0", + "src": "22465:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1502, + "id": 1752, "indexExpression": { - "id": 1501, + "id": 1751, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "20125:6:0", + "referencedDeclaration": 1693, + "src": "22476:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -39219,20 +45102,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20114:18:0", + "src": "22465:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1504, + "id": 1754, "indexExpression": { - "id": 1503, + "id": 1753, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "20133:5:0", + "referencedDeclaration": 1695, + "src": "22484:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -39243,14 +45126,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20114:25:0", + "src": "22465:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "20085:54:0" + "src": "22436:54:0" }, { "expression": { @@ -39258,56 +45141,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1511, + "id": 1761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1507, + "id": 1757, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1499, - "src": "20170:8:0", + "referencedDeclaration": 1749, + "src": "22521:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1508, + "id": 1758, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "20170:15:0", + "referencedDeclaration": 76, + "src": "22521:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1509, + "id": 1759, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "20189:11:0", + "src": "22540:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1510, + "id": 1760, "isConstant": false, "isLValue": false, "isPure": true, @@ -39315,13 +45198,13 @@ "memberName": "Aggregating", "nodeType": "MemberAccess", "referencedDeclaration": 12, - "src": "20189:23:0", + "src": "22540:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "20170:42:0", + "src": "22521:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -39329,14 +45212,14 @@ }, { "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1512, + "id": 1762, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "20226:24:0", + "src": "22577:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", "typeString": "literal_string \"not in upload ss phase\"" @@ -39355,7 +45238,7 @@ "typeString": "literal_string \"not in upload ss phase\"" } ], - "id": 1506, + "id": 1756, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -39363,13 +45246,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "20149:7:0", + "src": "22500:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1513, + "id": 1763, "isConstant": false, "isLValue": false, "isPure": false, @@ -39377,88 +45260,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "20149:111:0", + "src": "22500:111:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1514, + "id": 1764, "nodeType": "ExpressionStatement", - "src": "20149:111:0" + "src": "22500:111:0" }, { "assignments": [ - 1519 + 1769 ], "declarations": [ { "constant": false, - "id": 1519, + "id": 1769, "mutability": "mutable", "name": "commitments", - "nameLocation": "20302:11:0", + "nameLocation": "22653:11:0", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20270:43:0", + "scope": 1858, + "src": "22621:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1517, + "id": 1767, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1516, + "id": 1766, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "20270:21:0" + "src": "22621:21:0" }, "referencedDeclaration": 49, - "src": "20270:21:0", + "src": "22621:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1518, + "id": 1768, "nodeType": "ArrayTypeName", - "src": "20270:23:0", + "src": "22621:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1523, + "id": 1773, "initialValue": { "baseExpression": { - "id": 1520, + "id": 1770, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "20316:21:0", + "src": "22667:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1522, + "id": 1772, "indexExpression": { - "id": 1521, + "id": 1771, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "20351:6:0", + "referencedDeclaration": 1693, + "src": "22702:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -39469,244 +45352,612 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20316:51:0", + "src": "22667:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "20270:97:0" + "src": "22621:97:0" }, { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "assignments": [ + 1776 + ], + "declarations": [ + { + "constant": false, + "id": 1776, + "mutability": "mutable", + "name": "commitment", + "nameLocation": "22758:10:0", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "22728:40:0", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments" + }, + "typeName": { + "id": 1775, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1774, + "name": "RoundModelCommitments", + "nodeType": "IdentifierPath", + "referencedDeclaration": 49, + "src": "22728:21:0" + }, + "referencedDeclaration": 49, + "src": "22728:21:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments" + } + }, + "visibility": "internal" + } + ], + "id": 1780, + "initialValue": { + "baseExpression": { + "id": 1777, + "name": "commitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1769, + "src": "22771:11:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" + } + }, + "id": 1779, + "indexExpression": { + "id": 1778, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1695, + "src": "22783:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } }, - "id": 1527, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1524, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "20381:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } + "nodeType": "IndexAccess", + "src": "22771:18:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", + "typeString": "struct HFLContract.RoundModelCommitments storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22728:61:0" + }, + { + "body": { + "id": 1856, + "nodeType": "Block", + "src": "22851:803:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1805, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1793, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1776, + "src": "22890:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1794, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "22890:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1798, + "indexExpression": { + "baseExpression": { + "id": 1795, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "22929:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1797, + "indexExpression": { + "id": 1796, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "22937:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22929:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22890:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1801, + "indexExpression": { + "expression": { + "id": 1799, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "22941:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "22941:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22890:62:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1802, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "secretKeyMaskCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 105, + "src": "22890:107:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22890:135:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23028:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22890:139:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", + "id": 1806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23047:30:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + }, + "value": "must upload commitment first" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + } + ], + "id": 1792, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "22865:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1807, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22865:226:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1808, + "nodeType": "ExpressionStatement", + "src": "22865:226:0" }, - "id": 1525, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20381:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1526, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "20403:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "20381:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1534, - "nodeType": "IfStatement", - "src": "20377:76:0", - "trueBody": { - "id": 1533, - "nodeType": "Block", - "src": "20410:43:0", - "statements": [ { "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1528, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "20424:11:0", + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1810, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1776, + "src": "23130:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1811, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "23130:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1815, + "indexExpression": { + "baseExpression": { + "id": 1812, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "23169:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1814, + "indexExpression": { + "id": 1813, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23177:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23169:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23130:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1818, + "indexExpression": { + "expression": { + "id": 1816, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "23181:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "23181:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23130:62:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1819, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "secretKeyPiece", + "nodeType": "MemberAccess", + "referencedDeclaration": 103, + "src": "23130:98:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23130:126:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23260:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "23130:131:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "20424:16:0", + { + "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", + "id": 1823, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23279:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" + }, + "value": "cannot upload seed multiple times" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" + } + ], + "id": 1809, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "23105:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.RoundModelCommitments storage ref[] storage pointer) returns (struct DeltaContract.RoundModelCommitments storage ref)" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "id": 1531, + "id": 1824, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "20424:18:0", + "src": "23105:223:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "id": 1532, + "id": 1825, "nodeType": "ExpressionStatement", - "src": "20424:18:0" - } - ] - } - }, - { - "assignments": [ - 1537 - ], - "declarations": [ - { - "constant": false, - "id": 1537, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "20492:10:0", - "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20462:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" - }, - "typeName": { - "id": 1536, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1535, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "20462:21:0" - }, - "referencedDeclaration": 49, - "src": "20462:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" - } + "src": "23105:223:0" }, - "visibility": "internal" - } - ], - "id": 1541, - "initialValue": { - "baseExpression": { - "id": 1538, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "20505:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1540, - "indexExpression": { - "id": 1539, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "20517:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20505:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20462:61:0" - }, - { - "expression": { - "arguments": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { + "expression": { + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1543, + "id": 1826, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "20554:10:0", + "referencedDeclaration": 1776, + "src": "23342:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1544, + "id": 1833, "isConstant": false, "isLValue": true, "isPure": false, @@ -39714,20 +45965,45 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "20554:34:0", + "src": "23342:30:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1546, + "id": 1834, "indexExpression": { - "id": 1545, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "20589:6:0", + "baseExpression": { + "id": 1828, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "23373:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1830, + "indexExpression": { + "id": 1829, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23381:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23373:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -39738,34 +46014,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20554:42:0", + "src": "23342:42:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" } }, - "id": 1549, + "id": 1835, "indexExpression": { "expression": { - "id": 1547, + "id": 1831, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "20597:3:0", + "src": "23385:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1548, + "id": 1832, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "20597:10:0", + "src": "23385:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -39776,699 +46052,492 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20554:54:0", + "src": "23342:54:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1550, + "id": 1836, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", + "lValueRequested": true, + "memberName": "secretKeyPiece", "nodeType": "MemberAccess", "referencedDeclaration": 103, - "src": "20554:95:0", + "src": "23342:69:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20554:119:0", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1837, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "23414:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1839, + "indexExpression": { + "id": 1838, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23429:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23414:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "23342:89:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1552, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20676:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20554:123:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + "id": 1841, + "nodeType": "ExpressionStatement", + "src": "23342:89:0" }, { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1554, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20691:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1542, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20533:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20533:198:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1556, - "nodeType": "ExpressionStatement", - "src": "20533:198:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { + "eventCall": { + "arguments": [ + { + "id": 1843, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "23483:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1844, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1695, + "src": "23507:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { "baseExpression": { - "baseExpression": { - "expression": { - "id": 1558, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "20762:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } - }, - "id": 1559, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "20762:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1561, - "indexExpression": { - "id": 1560, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "20780:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20762:25:0", + "id": 1845, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "23530:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1847, + "indexExpression": { + "id": 1846, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23538:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23530:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1848, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "23558:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "23558:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "534b4d41534b", + "id": 1850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23586:8:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", + "typeString": "literal_string \"SKMASK\"" + }, + "value": "SKMASK" + }, + { + "baseExpression": { + "id": 1851, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "23612:14:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "id": 1564, + "id": 1853, "indexExpression": { - "expression": { - "id": 1562, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20788:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1563, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20788:10:0", + "id": 1852, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23627:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20762:37:0", + "src": "23612:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "id": 1565, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "20762:52:0", + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", + "typeString": "literal_string \"SKMASK\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1842, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "23450:15:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, - "id": 1566, + "id": 1854, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20762:59:0", + "names": [], + "nodeType": "FunctionCall", + "src": "23450:193:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1567, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20825:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20762:64:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f616420736b6d61736b206d756c7469706c652074696d6573", - "id": 1569, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20840:37:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1bbb835911f9c5ad7d1a17e2a5a40140e5ee2a0491fd530884b7d1c65d711da9", - "typeString": "literal_string \"cannot upload skmask multiple times\"" - }, - "value": "cannot upload skmask multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1bbb835911f9c5ad7d1a17e2a5a40140e5ee2a0491fd530884b7d1c65d711da9", - "typeString": "literal_string \"cannot upload skmask multiple times\"" - } - ], - "id": 1557, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20741:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "id": 1855, + "nodeType": "EmitStatement", + "src": "23445:198:0" } - }, - "id": 1570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20741:146:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ] }, - "id": 1571, - "nodeType": "ExpressionStatement", - "src": "20741:146:0" - }, - { - "expression": { - "id": 1582, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1788, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { + "leftExpression": { + "id": 1785, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "22819:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1572, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "20897:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } - }, - "id": 1577, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "20897:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1578, - "indexExpression": { - "id": 1574, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "20915:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20897:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1579, - "indexExpression": { - "expression": { - "id": 1575, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20923:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20923:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20897:37:0", + "id": 1786, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22823:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "id": 1580, + "id": 1787, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyPiece", + "lValueRequested": false, + "memberName": "length", "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "20897:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1581, - "name": "secretkeyMask", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "20952:13:0", + "src": "22823:21:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "20897:68:0", + "src": "22819:25:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1583, - "nodeType": "ExpressionStatement", - "src": "20897:68:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1585, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "21009:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1586, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "21029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, + "id": 1857, + "initializationExpression": { + "assignments": [ + 1782 + ], + "declarations": [ { - "id": 1587, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "21048:6:0", + "constant": false, + "id": 1782, + "mutability": "mutable", + "name": "i", + "nameLocation": "22812:1:0", + "nodeType": "VariableDeclaration", + "scope": 1857, + "src": "22804:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1588, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "21068:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1781, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22804:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "21068:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "534b4d41534b", - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21092:8:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - "value": "SKMASK" + "visibility": "internal" + } + ], + "id": 1784, + "initialValue": { + "hexValue": "30", + "id": 1783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22816:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1591, - "name": "secretkeyMask", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "22804:13:0" + }, + "loopExpression": { + "expression": { + "id": 1790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "22846:3:0", + "subExpression": { + "id": 1789, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "21114:13:0", + "referencedDeclaration": 1782, + "src": "22846:1:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 1584, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "20980:15:0", + }, "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20980:157:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1791, + "nodeType": "ExpressionStatement", + "src": "22846:3:0" }, - "id": 1593, - "nodeType": "EmitStatement", - "src": "20975:162:0" + "nodeType": "ForStatement", + "src": "22799:855:0" } ] }, "documentation": { - "id": 1469, + "id": 1691, "nodeType": "StructuredDocumentation", - "src": "19475:227:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param secretkeyMask the crypted skmask\n @param sender the sender address" + "src": "21525:265:0", + "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i]" }, - "functionSelector": "f9dd18a7", - "id": 1595, + "functionSelector": "c96525ac", + "id": 1859, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1480, + "id": 1704, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "19869:6:0", + "referencedDeclaration": 1693, + "src": "21972:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1481, + "id": 1705, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "19877:5:0", + "referencedDeclaration": 1695, + "src": "21980:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1482, + "id": 1706, "kind": "modifierInvocation", "modifierName": { - "id": 1479, + "id": 1703, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "19857:11:0" + "referencedDeclaration": 240, + "src": "21960:11:0" }, "nodeType": "ModifierInvocation", - "src": "19857:26:0" + "src": "21960:26:0" } ], "name": "uploadSecretkeyMask", - "nameLocation": "19716:19:0", + "nameLocation": "21804:19:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1478, + "id": 1702, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1471, + "id": 1693, "mutability": "mutable", "name": "taskId", - "nameLocation": "19753:6:0", + "nameLocation": "21841:6:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19745:14:0", + "scope": 1859, + "src": "21833:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -40476,10 +46545,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1470, + "id": 1692, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "19745:7:0", + "src": "21833:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -40489,13 +46558,13 @@ }, { "constant": false, - "id": 1473, + "id": 1695, "mutability": "mutable", "name": "round", - "nameLocation": "19776:5:0", + "nameLocation": "21864:5:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19769:12:0", + "scope": 1859, + "src": "21857:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -40503,10 +46572,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1472, + "id": 1694, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "19769:6:0", + "src": "21857:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40516,94 +46585,112 @@ }, { "constant": false, - "id": 1475, + "id": 1698, "mutability": "mutable", - "name": "sender", - "nameLocation": "19799:6:0", + "name": "senders", + "nameLocation": "21898:7:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19791:14:0", + "scope": 1859, + "src": "21879:26:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1474, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19791:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1696, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21879:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1697, + "nodeType": "ArrayTypeName", + "src": "21879:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1477, + "id": 1701, "mutability": "mutable", - "name": "secretkeyMask", - "nameLocation": "19830:13:0", + "name": "secretkeyMasks", + "nameLocation": "21932:14:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19815:28:0", + "scope": 1859, + "src": "21915:31:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1476, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "19815:5:0", + "baseType": { + "id": 1699, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21915:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1700, + "nodeType": "ArrayTypeName", + "src": "21915:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "19735:114:0" + "src": "21823:129:0" }, "returnParameters": { - "id": 1483, + "id": 1707, "nodeType": "ParameterList", "parameters": [], - "src": "19884:0:0" + "src": "21987:0:0" }, - "scope": 1663, - "src": "19707:1503:0", + "scope": 1927, + "src": "21795:1865:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1606, + "id": 1870, "nodeType": "Block", - "src": "21287:54:0", + "src": "23737:54:0", "statements": [ { "expression": { - "id": 1604, + "id": 1868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1602, + "id": 1866, "name": "maxWeightCommitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 34, - "src": "21297:25:0", + "src": "23747:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40612,64 +46699,64 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1603, + "id": 1867, "name": "maxLength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1597, - "src": "21325:9:0", + "referencedDeclaration": 1861, + "src": "23775:9:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21297:37:0", + "src": "23747:37:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1605, + "id": 1869, "nodeType": "ExpressionStatement", - "src": "21297:37:0" + "src": "23747:37:0" } ] }, "functionSelector": "b71b768d", - "id": 1607, + "id": 1871, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1600, + "id": 1864, "kind": "modifierInvocation", "modifierName": { - "id": 1599, + "id": 1863, "name": "isOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 187, - "src": "21279:7:0" + "referencedDeclaration": 191, + "src": "23729:7:0" }, "nodeType": "ModifierInvocation", - "src": "21279:7:0" + "src": "23729:7:0" } ], "name": "setMaxWeightCommitmentLength", - "nameLocation": "21225:28:0", + "nameLocation": "23675:28:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1598, + "id": 1862, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1597, + "id": 1861, "mutability": "mutable", "name": "maxLength", - "nameLocation": "21261:9:0", + "nameLocation": "23711:9:0", "nodeType": "VariableDeclaration", - "scope": 1607, - "src": "21254:16:0", + "scope": 1871, + "src": "23704:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -40677,10 +46764,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1596, + "id": 1860, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21254:6:0", + "src": "23704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40689,40 +46776,40 @@ "visibility": "internal" } ], - "src": "21253:18:0" + "src": "23703:18:0" }, "returnParameters": { - "id": 1601, + "id": 1865, "nodeType": "ParameterList", "parameters": [], - "src": "21287:0:0" + "src": "23737:0:0" }, - "scope": 1663, - "src": "21216:125:0", + "scope": 1927, + "src": "23666:125:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1618, + "id": 1882, "nodeType": "Block", - "src": "21414:49:0", + "src": "23864:49:0", "statements": [ { "expression": { - "id": 1616, + "id": 1880, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1614, + "id": 1878, "name": "maxSSComitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37, - "src": "21424:20:0", + "src": "23874:20:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40731,64 +46818,64 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1615, + "id": 1879, "name": "maxLength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1609, - "src": "21447:9:0", + "referencedDeclaration": 1873, + "src": "23897:9:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21424:32:0", + "src": "23874:32:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1617, + "id": 1881, "nodeType": "ExpressionStatement", - "src": "21424:32:0" + "src": "23874:32:0" } ] }, "functionSelector": "d6f02142", - "id": 1619, + "id": 1883, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1612, + "id": 1876, "kind": "modifierInvocation", "modifierName": { - "id": 1611, + "id": 1875, "name": "isOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 187, - "src": "21406:7:0" + "referencedDeclaration": 191, + "src": "23856:7:0" }, "nodeType": "ModifierInvocation", - "src": "21406:7:0" + "src": "23856:7:0" } ], "name": "setMaxSSCommitmentLength", - "nameLocation": "21356:24:0", + "nameLocation": "23806:24:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1610, + "id": 1874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1609, + "id": 1873, "mutability": "mutable", "name": "maxLength", - "nameLocation": "21388:9:0", + "nameLocation": "23838:9:0", "nodeType": "VariableDeclaration", - "scope": 1619, - "src": "21381:16:0", + "scope": 1883, + "src": "23831:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -40796,10 +46883,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1608, + "id": 1872, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21381:6:0", + "src": "23831:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40808,40 +46895,40 @@ "visibility": "internal" } ], - "src": "21380:18:0" + "src": "23830:18:0" }, "returnParameters": { - "id": 1613, + "id": 1877, "nodeType": "ParameterList", "parameters": [], - "src": "21414:0:0" + "src": "23864:0:0" }, - "scope": 1663, - "src": "21347:116:0", + "scope": 1927, + "src": "23797:116:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1634, + "id": 1898, "nodeType": "Block", - "src": "21591:98:0", + "src": "24041:98:0", "statements": [ { "expression": { - "id": 1628, + "id": 1892, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1626, + "id": 1890, "name": "sslength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1622, - "src": "21601:8:0", + "referencedDeclaration": 1886, + "src": "24051:8:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40850,41 +46937,41 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1627, + "id": 1891, "name": "maxSSComitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37, - "src": "21612:20:0", + "src": "24062:20:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21601:31:0", + "src": "24051:31:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1629, + "id": 1893, "nodeType": "ExpressionStatement", - "src": "21601:31:0" + "src": "24051:31:0" }, { "expression": { - "id": 1632, + "id": 1896, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1630, + "id": 1894, "name": "weightLength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1624, - "src": "21642:12:0", + "referencedDeclaration": 1888, + "src": "24092:12:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40893,56 +46980,56 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1631, + "id": 1895, "name": "maxWeightCommitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 34, - "src": "21657:25:0", + "src": "24107:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21642:40:0", + "src": "24092:40:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1633, + "id": 1897, "nodeType": "ExpressionStatement", - "src": "21642:40:0" + "src": "24092:40:0" } ] }, "functionSelector": "5d3d7e63", - "id": 1635, + "id": 1899, "implemented": true, "kind": "function", "modifiers": [], "name": "getMaxCommitmentsLength", - "nameLocation": "21478:23:0", + "nameLocation": "23928:23:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1620, + "id": 1884, "nodeType": "ParameterList", "parameters": [], - "src": "21501:2:0" + "src": "23951:2:0" }, "returnParameters": { - "id": 1625, + "id": 1889, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1622, + "id": 1886, "mutability": "mutable", "name": "sslength", - "nameLocation": "21556:8:0", + "nameLocation": "24006:8:0", "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "21549:15:0", + "scope": 1899, + "src": "23999:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -40950,10 +47037,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1621, + "id": 1885, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21549:6:0", + "src": "23999:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40963,13 +47050,13 @@ }, { "constant": false, - "id": 1624, + "id": 1888, "mutability": "mutable", "name": "weightLength", - "nameLocation": "21573:12:0", + "nameLocation": "24023:12:0", "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "21566:19:0", + "scope": 1899, + "src": "24016:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -40977,10 +47064,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1623, + "id": 1887, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21566:6:0", + "src": "24016:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -40989,42 +47076,42 @@ "visibility": "internal" } ], - "src": "21548:38:0" + "src": "23998:38:0" }, - "scope": 1663, - "src": "21469:220:0", + "scope": 1927, + "src": "23919:220:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 1652, + "id": 1916, "nodeType": "Block", - "src": "21834:73:0", + "src": "24284:73:0", "statements": [ { "eventCall": { "arguments": [ { - "id": 1644, + "id": 1908, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "21858:5:0", + "src": "24308:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1645, + "id": 1909, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1638, - "src": "21865:8:0", + "referencedDeclaration": 1902, + "src": "24315:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -41042,18 +47129,18 @@ "typeString": "address" } ], - "id": 1643, + "id": 1907, "name": "OwnerSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 110, - "src": "21849:8:0", + "referencedDeclaration": 112, + "src": "24299:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1646, + "id": 1910, "isConstant": false, "isLValue": false, "isPure": false, @@ -41061,31 +47148,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "21849:25:0", + "src": "24299:25:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1647, + "id": 1911, "nodeType": "EmitStatement", - "src": "21844:30:0" + "src": "24294:30:0" }, { "expression": { - "id": 1650, + "id": 1914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1648, + "id": 1912, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "21884:5:0", + "src": "24334:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -41094,70 +47181,70 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1649, + "id": 1913, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1638, - "src": "21892:8:0", + "referencedDeclaration": 1902, + "src": "24342:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "21884:16:0", + "src": "24334:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1651, + "id": 1915, "nodeType": "ExpressionStatement", - "src": "21884:16:0" + "src": "24334:16:0" } ] }, "documentation": { - "id": 1636, + "id": 1900, "nodeType": "StructuredDocumentation", - "src": "21695:80:0", + "src": "24145:80:0", "text": " @dev Change owner\n @param newOwner address of new owner" }, "functionSelector": "a6f9dae1", - "id": 1653, + "id": 1917, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1641, + "id": 1905, "kind": "modifierInvocation", "modifierName": { - "id": 1640, + "id": 1904, "name": "isOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 187, - "src": "21826:7:0" + "referencedDeclaration": 191, + "src": "24276:7:0" }, "nodeType": "ModifierInvocation", - "src": "21826:7:0" + "src": "24276:7:0" } ], "name": "changeOwner", - "nameLocation": "21789:11:0", + "nameLocation": "24239:11:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1639, + "id": 1903, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1638, + "id": 1902, "mutability": "mutable", "name": "newOwner", - "nameLocation": "21809:8:0", + "nameLocation": "24259:8:0", "nodeType": "VariableDeclaration", - "scope": 1653, - "src": "21801:16:0", + "scope": 1917, + "src": "24251:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41165,10 +47252,10 @@ "typeString": "address" }, "typeName": { - "id": 1637, + "id": 1901, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21801:7:0", + "src": "24251:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -41178,79 +47265,79 @@ "visibility": "internal" } ], - "src": "21800:18:0" + "src": "24250:18:0" }, "returnParameters": { - "id": 1642, + "id": 1906, "nodeType": "ParameterList", "parameters": [], - "src": "21834:0:0" + "src": "24284:0:0" }, - "scope": 1663, - "src": "21780:127:0", + "scope": 1927, + "src": "24230:127:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1661, + "id": 1925, "nodeType": "Block", - "src": "22046:29:0", + "src": "24496:29:0", "statements": [ { "expression": { - "id": 1659, + "id": 1923, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "22063:5:0", + "src": "24513:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 1658, - "id": 1660, + "functionReturnParameters": 1922, + "id": 1924, "nodeType": "Return", - "src": "22056:12:0" + "src": "24506:12:0" } ] }, "documentation": { - "id": 1654, + "id": 1918, "nodeType": "StructuredDocumentation", - "src": "21913:76:0", + "src": "24363:76:0", "text": " @dev Return owner address\n @return address of owner" }, "functionSelector": "893d20e8", - "id": 1662, + "id": 1926, "implemented": true, "kind": "function", "modifiers": [], "name": "getOwner", - "nameLocation": "22003:8:0", + "nameLocation": "24453:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1655, + "id": 1919, "nodeType": "ParameterList", "parameters": [], - "src": "22011:2:0" + "src": "24461:2:0" }, "returnParameters": { - "id": 1658, + "id": 1922, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1657, + "id": 1921, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1662, - "src": "22037:7:0", + "scope": 1926, + "src": "24487:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41258,10 +47345,10 @@ "typeString": "address" }, "typeName": { - "id": 1656, + "id": 1920, "name": "address", "nodeType": "ElementaryTypeName", - "src": "22037:7:0", + "src": "24487:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -41271,33 +47358,33 @@ "visibility": "internal" } ], - "src": "22036:9:0" + "src": "24486:9:0" }, - "scope": 1663, - "src": "21994:81:0", + "scope": 1927, + "src": "24444:81:0", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 1664, - "src": "160:21917:0", + "scope": 1928, + "src": "160:24367:0", "usedErrors": [] } ], - "src": "37:22041:0" + "src": "37:24491:0" }, "legacyAST": { - "absolutePath": "project:/contracts/DeltaContract.sol", + "absolutePath": "project:/contracts/HFLContract.sol", "exportedSymbols": { - "DeltaContract": [ - 1663 + "HFLContract": [ + 1927 ], "IdentityContract": [ - 1929 + 2193 ] }, - "id": 1664, + "id": 1928, "license": "GPL-3.0", "nodeType": "SourceUnit", "nodes": [ @@ -41321,8 +47408,8 @@ "id": 2, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1664, - "sourceUnit": 1930, + "scope": 1928, + "sourceUnit": 2194, "src": "70:24:0", "symbolAliases": [], "unitAlias": "" @@ -41330,7 +47417,7 @@ { "abstract": false, "baseContracts": [], - "canonicalName": "DeltaContract", + "canonicalName": "HFLContract", "contractDependencies": [], "contractKind": "contract", "documentation": { @@ -41340,12 +47427,12 @@ "text": " @title Delta Contract\n @dev Delta Contract For Mpc" }, "fullyImplemented": true, - "id": 1663, + "id": 1927, "linearizedBaseContracts": [ - 1663 + 1927 ], - "name": "DeltaContract", - "nameLocation": "169:13:0", + "name": "HFLContract", + "nameLocation": "169:11:0", "nodeType": "ContractDefinition", "nodes": [ { @@ -41354,14 +47441,14 @@ "id": 6, "mutability": "mutable", "name": "idContract", - "nameLocation": "213:10:0", + "nameLocation": "211:10:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "189:34:0", + "scope": 1927, + "src": "187:34:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" }, "typeName": { @@ -41371,13 +47458,13 @@ "id": 4, "name": "IdentityContract", "nodeType": "IdentifierPath", - "referencedDeclaration": 1929, - "src": "189:16:0" + "referencedDeclaration": 2193, + "src": "187:16:0" }, - "referencedDeclaration": 1929, - "src": "189:16:0", + "referencedDeclaration": 2193, + "src": "187:16:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, @@ -41388,10 +47475,10 @@ "id": 8, "mutability": "mutable", "name": "owner", - "nameLocation": "246:5:0", + "nameLocation": "244:5:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "230:21:0", + "scope": 1927, + "src": "228:21:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -41402,7 +47489,7 @@ "id": 7, "name": "address", "nodeType": "ElementaryTypeName", - "src": "230:7:0", + "src": "228:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -41412,64 +47499,64 @@ "visibility": "private" }, { - "canonicalName": "DeltaContract.RoundStatus", + "canonicalName": "HFLContract.RoundStatus", "id": 14, "members": [ { "id": 9, "name": "Started", - "nameLocation": "284:7:0", + "nameLocation": "282:7:0", "nodeType": "EnumValue", - "src": "284:7:0" + "src": "282:7:0" }, { "id": 10, "name": "Running", - "nameLocation": "301:7:0", + "nameLocation": "299:7:0", "nodeType": "EnumValue", - "src": "301:7:0" + "src": "299:7:0" }, { "id": 11, "name": "Calculating", - "nameLocation": "318:11:0", + "nameLocation": "316:11:0", "nodeType": "EnumValue", - "src": "318:11:0" + "src": "316:11:0" }, { "id": 12, "name": "Aggregating", - "nameLocation": "339:11:0", + "nameLocation": "337:11:0", "nodeType": "EnumValue", - "src": "339:11:0" + "src": "337:11:0" }, { "id": 13, "name": "Finished", - "nameLocation": "360:8:0", + "nameLocation": "358:8:0", "nodeType": "EnumValue", - "src": "360:8:0" + "src": "358:8:0" } ], "name": "RoundStatus", - "nameLocation": "262:11:0", + "nameLocation": "260:11:0", "nodeType": "EnumDefinition", - "src": "257:117:0" + "src": "255:117:0" }, { "constant": false, "id": 19, "mutability": "mutable", "name": "createdTasks", - "nameLocation": "404:12:0", + "nameLocation": "402:12:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "379:37:0", + "scope": 1927, + "src": "377:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task)" }, "typeName": { "id": 18, @@ -41477,17 +47564,17 @@ "id": 15, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "387:7:0", + "src": "385:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "379:24:0", + "src": "377:24:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task)" }, "valueType": { "id": 17, @@ -41496,14 +47583,14 @@ "id": 16, "name": "Task", "nodeType": "IdentifierPath", - "referencedDeclaration": 60, - "src": "398:4:0" + "referencedDeclaration": 62, + "src": "396:4:0" }, - "referencedDeclaration": 60, - "src": "398:4:0", + "referencedDeclaration": 62, + "src": "396:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" } } }, @@ -41514,15 +47601,15 @@ "id": 25, "mutability": "mutable", "name": "taskRounds", - "nameLocation": "454:10:0", + "nameLocation": "452:10:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "422:42:0", + "scope": 1927, + "src": "420:42:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound[])" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" }, "typeName": { "id": 24, @@ -41530,17 +47617,17 @@ "id": 20, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "430:7:0", + "src": "428:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "422:31:0", + "src": "420:31:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound[])" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" }, "valueType": { "baseType": { @@ -41550,22 +47637,22 @@ "id": 21, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "441:9:0" + "referencedDeclaration": 85, + "src": "439:9:0" }, - "referencedDeclaration": 83, - "src": "441:9:0", + "referencedDeclaration": 85, + "src": "439:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "id": 23, "nodeType": "ArrayTypeName", - "src": "441:11:0", + "src": "439:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } } }, @@ -41576,15 +47663,15 @@ "id": 31, "mutability": "mutable", "name": "roundModelCommitments", - "nameLocation": "514:21:0", + "nameLocation": "512:21:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "470:65:0", + "scope": 1927, + "src": "468:65:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments[])" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" }, "typeName": { "id": 30, @@ -41592,17 +47679,17 @@ "id": 26, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "478:7:0", + "src": "476:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "470:43:0", + "src": "468:43:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments[])" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" }, "valueType": { "baseType": { @@ -41613,21 +47700,21 @@ "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "489:21:0" + "src": "487:21:0" }, "referencedDeclaration": 49, - "src": "489:21:0", + "src": "487:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "id": 29, "nodeType": "ArrayTypeName", - "src": "489:23:0", + "src": "487:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } } }, @@ -41638,10 +47725,10 @@ "id": 34, "mutability": "mutable", "name": "maxWeightCommitmentLength", - "nameLocation": "556:25:0", + "nameLocation": "554:25:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "541:51:0", + "scope": 1927, + "src": "539:51:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -41652,7 +47739,7 @@ "id": 32, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "541:6:0", + "src": "539:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -41667,7 +47754,7 @@ "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "584:8:0", + "src": "582:8:0", "typeDescriptions": { "typeIdentifier": "t_rational_10485760_by_1", "typeString": "int_const 10485760" @@ -41681,10 +47768,10 @@ "id": 37, "mutability": "mutable", "name": "maxSSComitmentLength", - "nameLocation": "613:20:0", + "nameLocation": "611:20:0", "nodeType": "VariableDeclaration", - "scope": 1663, - "src": "598:41:0", + "scope": 1927, + "src": "596:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -41695,7 +47782,7 @@ "id": 35, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "598:6:0", + "src": "596:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -41710,7 +47797,7 @@ "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "636:3:0", + "src": "634:3:0", "typeDescriptions": { "typeIdentifier": "t_rational_256_by_1", "typeString": "int_const 256" @@ -41720,7 +47807,7 @@ "visibility": "private" }, { - "canonicalName": "DeltaContract.RoundModelCommitments", + "canonicalName": "HFLContract.RoundModelCommitments", "id": 49, "members": [ { @@ -41728,10 +47815,10 @@ "id": 41, "mutability": "mutable", "name": "weightCommitment", - "nameLocation": "710:16:0", + "nameLocation": "708:16:0", "nodeType": "VariableDeclaration", "scope": 49, - "src": "684:42:0", + "src": "682:42:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41744,14 +47831,14 @@ "id": 38, "name": "address", "nodeType": "ElementaryTypeName", - "src": "692:7:0", + "src": "690:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "684:25:0", + "src": "682:25:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes)" @@ -41760,7 +47847,7 @@ "id": 39, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "703:5:0", + "src": "701:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -41774,15 +47861,15 @@ "id": 48, "mutability": "mutable", "name": "ssdata", - "nameLocation": "783:6:0", + "nameLocation": "781:6:0", "nodeType": "VariableDeclaration", "scope": 49, - "src": "736:53:0", + "src": "734:53:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" }, "typeName": { "id": 47, @@ -41790,17 +47877,17 @@ "id": 42, "name": "address", "nodeType": "ElementaryTypeName", - "src": "744:7:0", + "src": "742:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "736:46:0", + "src": "734:46:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" }, "valueType": { "id": 46, @@ -41808,17 +47895,17 @@ "id": 43, "name": "address", "nodeType": "ElementaryTypeName", - "src": "763:7:0", + "src": "761:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "755:26:0", + "src": "753:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData)" }, "valueType": { "id": 45, @@ -41827,14 +47914,14 @@ "id": 44, "name": "SSData", "nodeType": "IdentifierPath", - "referencedDeclaration": 104, - "src": "774:6:0" + "referencedDeclaration": 106, + "src": "772:6:0" }, - "referencedDeclaration": 104, - "src": "774:6:0", + "referencedDeclaration": 106, + "src": "772:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage_ptr", - "typeString": "struct DeltaContract.SSData" + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" } } } @@ -41843,25 +47930,25 @@ } ], "name": "RoundModelCommitments", - "nameLocation": "652:21:0", + "nameLocation": "650:21:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "645:151:0", + "scope": 1927, + "src": "643:151:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.Task", - "id": 60, + "canonicalName": "HFLContract.Task", + "id": 62, "members": [ { "constant": false, "id": 51, "mutability": "mutable", "name": "creator", - "nameLocation": "831:7:0", + "nameLocation": "829:7:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "823:15:0", + "scope": 62, + "src": "821:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41872,7 +47959,7 @@ "id": 50, "name": "address", "nodeType": "ElementaryTypeName", - "src": "823:7:0", + "src": "821:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -41886,10 +47973,10 @@ "id": 53, "mutability": "mutable", "name": "creatorUrl", - "nameLocation": "855:10:0", + "nameLocation": "853:10:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "848:17:0", + "scope": 62, + "src": "846:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41900,7 +47987,7 @@ "id": 52, "name": "string", "nodeType": "ElementaryTypeName", - "src": "848:6:0", + "src": "846:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -41913,10 +48000,10 @@ "id": 55, "mutability": "mutable", "name": "dataSet", - "nameLocation": "882:7:0", + "nameLocation": "880:7:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "875:14:0", + "scope": 62, + "src": "873:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41927,7 +48014,7 @@ "id": 54, "name": "string", "nodeType": "ElementaryTypeName", - "src": "875:6:0", + "src": "873:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -41940,10 +48027,10 @@ "id": 57, "mutability": "mutable", "name": "commitment", - "nameLocation": "907:10:0", + "nameLocation": "905:10:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "899:18:0", + "scope": 62, + "src": "897:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41954,7 +48041,7 @@ "id": 56, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "899:7:0", + "src": "897:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -41966,11 +48053,38 @@ "constant": false, "id": 59, "mutability": "mutable", + "name": "taskType", + "nameLocation": "932:8:0", + "nodeType": "VariableDeclaration", + "scope": 62, + "src": "925:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 58, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "925:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 61, + "mutability": "mutable", "name": "currentRound", - "nameLocation": "934:12:0", + "nameLocation": "957:12:0", "nodeType": "VariableDeclaration", - "scope": 60, - "src": "927:19:0", + "scope": 62, + "src": "950:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -41978,10 +48092,10 @@ "typeString": "uint64" }, "typeName": { - "id": 58, + "id": 60, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "927:6:0", + "src": "950:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -41991,25 +48105,25 @@ } ], "name": "Task", - "nameLocation": "808:4:0", + "nameLocation": "806:4:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "801:152:0", + "scope": 1927, + "src": "799:177:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.Candidate", - "id": 65, + "canonicalName": "HFLContract.Candidate", + "id": 67, "members": [ { "constant": false, - "id": 62, + "id": 64, "mutability": "mutable", "name": "pk1", - "nameLocation": "992:3:0", + "nameLocation": "1015:3:0", "nodeType": "VariableDeclaration", - "scope": 65, - "src": "986:9:0", + "scope": 67, + "src": "1009:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42017,10 +48131,10 @@ "typeString": "bytes" }, "typeName": { - "id": 61, + "id": 63, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "986:5:0", + "src": "1009:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -42030,13 +48144,13 @@ }, { "constant": false, - "id": 64, + "id": 66, "mutability": "mutable", "name": "pk2", - "nameLocation": "1011:3:0", + "nameLocation": "1034:3:0", "nodeType": "VariableDeclaration", - "scope": 65, - "src": "1005:9:0", + "scope": 67, + "src": "1028:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42044,10 +48158,10 @@ "typeString": "bytes" }, "typeName": { - "id": 63, + "id": 65, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1005:5:0", + "src": "1028:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -42057,25 +48171,25 @@ } ], "name": "Candidate", - "nameLocation": "966:9:0", + "nameLocation": "989:9:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "959:62:0", + "scope": 1927, + "src": "982:62:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.TaskRound", - "id": 83, + "canonicalName": "HFLContract.TaskRound", + "id": 85, "members": [ { "constant": false, - "id": 67, + "id": 69, "mutability": "mutable", "name": "currentRound", - "nameLocation": "1061:12:0", + "nameLocation": "1084:12:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1054:19:0", + "scope": 85, + "src": "1077:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42083,10 +48197,10 @@ "typeString": "uint64" }, "typeName": { - "id": 66, + "id": 68, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "1054:6:0", + "src": "1077:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -42096,13 +48210,13 @@ }, { "constant": false, - "id": 69, + "id": 71, "mutability": "mutable", "name": "maxSample", - "nameLocation": "1090:9:0", + "nameLocation": "1113:9:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1083:16:0", + "scope": 85, + "src": "1106:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42110,10 +48224,10 @@ "typeString": "uint32" }, "typeName": { - "id": 68, + "id": 70, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1083:6:0", + "src": "1106:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -42123,13 +48237,13 @@ }, { "constant": false, - "id": 71, + "id": 73, "mutability": "mutable", "name": "minSample", - "nameLocation": "1116:9:0", + "nameLocation": "1139:9:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1109:16:0", + "scope": 85, + "src": "1132:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42137,10 +48251,10 @@ "typeString": "uint32" }, "typeName": { - "id": 70, + "id": 72, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1109:6:0", + "src": "1132:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -42150,86 +48264,86 @@ }, { "constant": false, - "id": 74, + "id": 76, "mutability": "mutable", "name": "status", - "nameLocation": "1147:6:0", + "nameLocation": "1170:6:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1135:18:0", + "scope": 85, + "src": "1158:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, "typeName": { - "id": 73, + "id": 75, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 72, + "id": 74, "name": "RoundStatus", "nodeType": "IdentifierPath", "referencedDeclaration": 14, - "src": "1135:11:0" + "src": "1158:11:0" }, "referencedDeclaration": 14, - "src": "1135:11:0", + "src": "1158:11:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "visibility": "internal" }, { "constant": false, - "id": 79, + "id": 81, "mutability": "mutable", "name": "candidates", - "nameLocation": "1193:10:0", + "nameLocation": "1216:10:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1163:40:0", + "scope": 85, + "src": "1186:40:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate)" }, "typeName": { - "id": 78, + "id": 80, "keyType": { - "id": 75, + "id": 77, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1171:7:0", + "src": "1194:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1163:29:0", + "src": "1186:29:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate)" }, "valueType": { - "id": 77, + "id": 79, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 76, + "id": 78, "name": "Candidate", "nodeType": "IdentifierPath", - "referencedDeclaration": 65, - "src": "1182:9:0" + "referencedDeclaration": 67, + "src": "1205:9:0" }, - "referencedDeclaration": 65, - "src": "1182:9:0", + "referencedDeclaration": 67, + "src": "1205:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage_ptr", - "typeString": "struct DeltaContract.Candidate" + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" } } }, @@ -42237,13 +48351,13 @@ }, { "constant": false, - "id": 82, + "id": 84, "mutability": "mutable", "name": "joinedAddrs", - "nameLocation": "1223:11:0", + "nameLocation": "1246:11:0", "nodeType": "VariableDeclaration", - "scope": 83, - "src": "1213:21:0", + "scope": 85, + "src": "1236:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42252,19 +48366,19 @@ }, "typeName": { "baseType": { - "id": 80, + "id": 82, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1213:7:0", + "src": "1236:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 81, + "id": 83, "nodeType": "ArrayTypeName", - "src": "1213:9:0", + "src": "1236:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -42274,25 +48388,25 @@ } ], "name": "TaskRound", - "nameLocation": "1034:9:0", + "nameLocation": "1057:9:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "1027:214:0", + "scope": 1927, + "src": "1050:214:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.ExtCallTaskRoundStruct", - "id": 95, + "canonicalName": "HFLContract.ExtCallTaskRoundStruct", + "id": 97, "members": [ { "constant": false, - "id": 85, + "id": 87, "mutability": "mutable", "name": "currentRound", - "nameLocation": "1294:12:0", + "nameLocation": "1317:12:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1287:19:0", + "scope": 97, + "src": "1310:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42300,10 +48414,10 @@ "typeString": "uint64" }, "typeName": { - "id": 84, + "id": 86, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "1287:6:0", + "src": "1310:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -42313,13 +48427,13 @@ }, { "constant": false, - "id": 87, + "id": 89, "mutability": "mutable", "name": "maxSample", - "nameLocation": "1323:9:0", + "nameLocation": "1346:9:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1316:16:0", + "scope": 97, + "src": "1339:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42327,10 +48441,10 @@ "typeString": "uint32" }, "typeName": { - "id": 86, + "id": 88, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1316:6:0", + "src": "1339:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -42340,13 +48454,13 @@ }, { "constant": false, - "id": 89, + "id": 91, "mutability": "mutable", "name": "minSample", - "nameLocation": "1349:9:0", + "nameLocation": "1372:9:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1342:16:0", + "scope": 97, + "src": "1365:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42354,10 +48468,10 @@ "typeString": "uint32" }, "typeName": { - "id": 88, + "id": 90, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1342:6:0", + "src": "1365:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -42367,13 +48481,13 @@ }, { "constant": false, - "id": 91, + "id": 93, "mutability": "mutable", "name": "status", - "nameLocation": "1374:6:0", + "nameLocation": "1397:6:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1368:12:0", + "scope": 97, + "src": "1391:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42381,10 +48495,10 @@ "typeString": "uint8" }, "typeName": { - "id": 90, + "id": 92, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1368:5:0", + "src": "1391:5:0", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -42394,13 +48508,13 @@ }, { "constant": false, - "id": 94, + "id": 96, "mutability": "mutable", "name": "joinedAddrs", - "nameLocation": "1400:11:0", + "nameLocation": "1423:11:0", "nodeType": "VariableDeclaration", - "scope": 95, - "src": "1390:21:0", + "scope": 97, + "src": "1413:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42409,19 +48523,19 @@ }, "typeName": { "baseType": { - "id": 92, + "id": 94, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1390:7:0", + "src": "1413:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 93, + "id": 95, "nodeType": "ArrayTypeName", - "src": "1390:9:0", + "src": "1413:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -42431,25 +48545,25 @@ } ], "name": "ExtCallTaskRoundStruct", - "nameLocation": "1254:22:0", + "nameLocation": "1277:22:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "1247:171:0", + "scope": 1927, + "src": "1270:171:0", "visibility": "public" }, { - "canonicalName": "DeltaContract.SSData", - "id": 104, + "canonicalName": "HFLContract.SSData", + "id": 106, "members": [ { "constant": false, - "id": 97, + "id": 99, "mutability": "mutable", "name": "seedPiece", - "nameLocation": "1454:9:0", + "nameLocation": "1477:9:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1448:15:0", + "scope": 106, + "src": "1471:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42457,10 +48571,10 @@ "typeString": "bytes" }, "typeName": { - "id": 96, + "id": 98, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1448:5:0", + "src": "1471:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -42470,13 +48584,13 @@ }, { "constant": false, - "id": 99, + "id": 101, "mutability": "mutable", "name": "seedCommitment", - "nameLocation": "1479:14:0", + "nameLocation": "1502:14:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1473:20:0", + "scope": 106, + "src": "1496:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42484,10 +48598,10 @@ "typeString": "bytes" }, "typeName": { - "id": 98, + "id": 100, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1473:5:0", + "src": "1496:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -42497,13 +48611,13 @@ }, { "constant": false, - "id": 101, + "id": 103, "mutability": "mutable", "name": "secretKeyPiece", - "nameLocation": "1509:14:0", + "nameLocation": "1532:14:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1503:20:0", + "scope": 106, + "src": "1526:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42511,10 +48625,10 @@ "typeString": "bytes" }, "typeName": { - "id": 100, + "id": 102, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1503:5:0", + "src": "1526:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -42524,13 +48638,13 @@ }, { "constant": false, - "id": 103, + "id": 105, "mutability": "mutable", "name": "secretKeyMaskCommitment", - "nameLocation": "1539:23:0", + "nameLocation": "1562:23:0", "nodeType": "VariableDeclaration", - "scope": 104, - "src": "1533:29:0", + "scope": 106, + "src": "1556:29:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42538,10 +48652,10 @@ "typeString": "bytes" }, "typeName": { - "id": 102, + "id": 104, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1533:5:0", + "src": "1556:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -42551,32 +48665,32 @@ } ], "name": "SSData", - "nameLocation": "1431:6:0", + "nameLocation": "1454:6:0", "nodeType": "StructDefinition", - "scope": 1663, - "src": "1424:145:0", + "scope": 1927, + "src": "1447:145:0", "visibility": "public" }, { "anonymous": false, - "id": 110, + "id": 112, "name": "OwnerSet", - "nameLocation": "1610:8:0", + "nameLocation": "1633:8:0", "nodeType": "EventDefinition", "parameters": { - "id": 109, + "id": 111, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 106, + "id": 108, "indexed": true, "mutability": "mutable", "name": "oldOwner", - "nameLocation": "1635:8:0", + "nameLocation": "1658:8:0", "nodeType": "VariableDeclaration", - "scope": 110, - "src": "1619:24:0", + "scope": 112, + "src": "1642:24:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42584,10 +48698,10 @@ "typeString": "address" }, "typeName": { - "id": 105, + "id": 107, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1619:7:0", + "src": "1642:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -42598,14 +48712,14 @@ }, { "constant": false, - "id": 108, + "id": 110, "indexed": true, "mutability": "mutable", "name": "newOwner", - "nameLocation": "1661:8:0", + "nameLocation": "1684:8:0", "nodeType": "VariableDeclaration", - "scope": 110, - "src": "1645:24:0", + "scope": 112, + "src": "1668:24:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42613,10 +48727,10 @@ "typeString": "address" }, "typeName": { - "id": 107, + "id": 109, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1645:7:0", + "src": "1668:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -42626,30 +48740,30 @@ "visibility": "internal" } ], - "src": "1618:52:0" + "src": "1641:52:0" }, - "src": "1604:67:0" + "src": "1627:67:0" }, { "anonymous": false, - "id": 122, + "id": 126, "name": "TaskCreated", - "nameLocation": "1717:11:0", + "nameLocation": "1740:11:0", "nodeType": "EventDefinition", "parameters": { - "id": 121, + "id": 125, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 112, + "id": 114, "indexed": true, "mutability": "mutable", "name": "creator", - "nameLocation": "1754:7:0", + "nameLocation": "1777:7:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1738:23:0", + "scope": 126, + "src": "1761:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42657,10 +48771,10 @@ "typeString": "address" }, "typeName": { - "id": 111, + "id": 113, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1738:7:0", + "src": "1761:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -42671,14 +48785,14 @@ }, { "constant": false, - "id": 114, + "id": 116, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "1779:6:0", + "nameLocation": "1802:6:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1771:14:0", + "scope": 126, + "src": "1794:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42686,10 +48800,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 113, + "id": 115, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1771:7:0", + "src": "1794:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -42699,14 +48813,14 @@ }, { "constant": false, - "id": 116, + "id": 118, "indexed": false, "mutability": "mutable", "name": "dataSet", - "nameLocation": "1802:7:0", + "nameLocation": "1825:7:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1795:14:0", + "scope": 126, + "src": "1818:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42714,10 +48828,10 @@ "typeString": "string" }, "typeName": { - "id": 115, + "id": 117, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1795:6:0", + "src": "1818:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -42727,14 +48841,14 @@ }, { "constant": false, - "id": 118, + "id": 120, "indexed": false, "mutability": "mutable", "name": "creatorUrl", - "nameLocation": "1826:10:0", + "nameLocation": "1849:10:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1819:17:0", + "scope": 126, + "src": "1842:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42742,10 +48856,10 @@ "typeString": "string" }, "typeName": { - "id": 117, + "id": 119, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1819:6:0", + "src": "1842:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -42755,14 +48869,14 @@ }, { "constant": false, - "id": 120, + "id": 122, "indexed": false, "mutability": "mutable", "name": "commitment", - "nameLocation": "1854:10:0", + "nameLocation": "1877:10:0", "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1846:18:0", + "scope": 126, + "src": "1869:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42770,42 +48884,70 @@ "typeString": "bytes32" }, "typeName": { - "id": 119, + "id": 121, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1846:7:0", + "src": "1869:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" + }, + { + "constant": false, + "id": 124, + "indexed": false, + "mutability": "mutable", + "name": "taskType", + "nameLocation": "1904:8:0", + "nodeType": "VariableDeclaration", + "scope": 126, + "src": "1897:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 123, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1897:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" } ], - "src": "1728:142:0" + "src": "1751:167:0" }, - "src": "1711:160:0" + "src": "1734:185:0" }, { "anonymous": false, - "id": 128, + "id": 132, "name": "RoundStart", - "nameLocation": "1935:10:0", + "nameLocation": "1983:10:0", "nodeType": "EventDefinition", "parameters": { - "id": 127, + "id": 131, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 124, + "id": 128, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "1954:6:0", + "nameLocation": "2002:6:0", "nodeType": "VariableDeclaration", - "scope": 128, - "src": "1946:14:0", + "scope": 132, + "src": "1994:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42813,10 +48955,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 123, + "id": 127, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1946:7:0", + "src": "1994:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -42826,14 +48968,14 @@ }, { "constant": false, - "id": 126, + "id": 130, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "1969:5:0", + "nameLocation": "2017:5:0", "nodeType": "VariableDeclaration", - "scope": 128, - "src": "1962:12:0", + "scope": 132, + "src": "2010:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42841,10 +48983,10 @@ "typeString": "uint64" }, "typeName": { - "id": 125, + "id": 129, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "1962:6:0", + "src": "2010:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -42853,30 +48995,30 @@ "visibility": "internal" } ], - "src": "1945:30:0" + "src": "1993:30:0" }, - "src": "1929:47:0" + "src": "1977:47:0" }, { "anonymous": false, - "id": 134, + "id": 138, "name": "RoundEnd", - "nameLocation": "2041:8:0", + "nameLocation": "2089:8:0", "nodeType": "EventDefinition", "parameters": { - "id": 133, + "id": 137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 130, + "id": 134, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2058:6:0", + "nameLocation": "2106:6:0", "nodeType": "VariableDeclaration", - "scope": 134, - "src": "2050:14:0", + "scope": 138, + "src": "2098:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42884,10 +49026,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 129, + "id": 133, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2050:7:0", + "src": "2098:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -42897,14 +49039,14 @@ }, { "constant": false, - "id": 132, + "id": 136, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2073:5:0", + "nameLocation": "2121:5:0", "nodeType": "VariableDeclaration", - "scope": 134, - "src": "2066:12:0", + "scope": 138, + "src": "2114:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42912,10 +49054,10 @@ "typeString": "uint64" }, "typeName": { - "id": 131, + "id": 135, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2066:6:0", + "src": "2114:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -42924,30 +49066,30 @@ "visibility": "internal" } ], - "src": "2049:30:0" + "src": "2097:30:0" }, - "src": "2035:45:0" + "src": "2083:45:0" }, { "anonymous": false, - "id": 143, + "id": 147, "name": "PartnerSelected", - "nameLocation": "2151:15:0", + "nameLocation": "2199:15:0", "nodeType": "EventDefinition", "parameters": { - "id": 142, + "id": 146, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 136, + "id": 140, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2175:6:0", + "nameLocation": "2223:6:0", "nodeType": "VariableDeclaration", - "scope": 143, - "src": "2167:14:0", + "scope": 147, + "src": "2215:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42955,10 +49097,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 135, + "id": 139, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2167:7:0", + "src": "2215:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -42968,14 +49110,14 @@ }, { "constant": false, - "id": 138, + "id": 142, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2190:5:0", + "nameLocation": "2238:5:0", "nodeType": "VariableDeclaration", - "scope": 143, - "src": "2183:12:0", + "scope": 147, + "src": "2231:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -42983,10 +49125,10 @@ "typeString": "uint64" }, "typeName": { - "id": 137, + "id": 141, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2183:6:0", + "src": "2231:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -42996,14 +49138,14 @@ }, { "constant": false, - "id": 141, + "id": 145, "indexed": false, "mutability": "mutable", "name": "addrs", - "nameLocation": "2207:5:0", + "nameLocation": "2255:5:0", "nodeType": "VariableDeclaration", - "scope": 143, - "src": "2197:15:0", + "scope": 147, + "src": "2245:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43012,19 +49154,19 @@ }, "typeName": { "baseType": { - "id": 139, + "id": 143, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2197:7:0", + "src": "2245:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 140, + "id": 144, "nodeType": "ArrayTypeName", - "src": "2197:9:0", + "src": "2245:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -43033,30 +49175,30 @@ "visibility": "internal" } ], - "src": "2166:47:0" + "src": "2214:47:0" }, - "src": "2145:69:0" + "src": "2193:69:0" }, { "anonymous": false, - "id": 152, + "id": 156, "name": "AggregateStarted", - "nameLocation": "2289:16:0", + "nameLocation": "2337:16:0", "nodeType": "EventDefinition", "parameters": { - "id": 151, + "id": 155, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 145, + "id": 149, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2314:6:0", + "nameLocation": "2362:6:0", "nodeType": "VariableDeclaration", - "scope": 152, - "src": "2306:14:0", + "scope": 156, + "src": "2354:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43064,10 +49206,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 144, + "id": 148, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2306:7:0", + "src": "2354:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -43077,14 +49219,14 @@ }, { "constant": false, - "id": 147, + "id": 151, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2329:5:0", + "nameLocation": "2377:5:0", "nodeType": "VariableDeclaration", - "scope": 152, - "src": "2322:12:0", + "scope": 156, + "src": "2370:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43092,10 +49234,10 @@ "typeString": "uint64" }, "typeName": { - "id": 146, + "id": 150, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2322:6:0", + "src": "2370:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -43105,14 +49247,14 @@ }, { "constant": false, - "id": 150, + "id": 154, "indexed": false, "mutability": "mutable", "name": "addrs", - "nameLocation": "2346:5:0", + "nameLocation": "2394:5:0", "nodeType": "VariableDeclaration", - "scope": 152, - "src": "2336:15:0", + "scope": 156, + "src": "2384:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43121,19 +49263,19 @@ }, "typeName": { "baseType": { - "id": 148, + "id": 152, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2336:7:0", + "src": "2384:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 149, + "id": 153, "nodeType": "ArrayTypeName", - "src": "2336:9:0", + "src": "2384:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -43142,30 +49284,30 @@ "visibility": "internal" } ], - "src": "2305:47:0" + "src": "2353:47:0" }, - "src": "2283:70:0" + "src": "2331:70:0" }, { "anonymous": false, - "id": 161, + "id": 165, "name": "CalculateStarted", - "nameLocation": "2422:16:0", + "nameLocation": "2470:16:0", "nodeType": "EventDefinition", "parameters": { - "id": 160, + "id": 164, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 154, + "id": 158, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2447:6:0", + "nameLocation": "2495:6:0", "nodeType": "VariableDeclaration", - "scope": 161, - "src": "2439:14:0", + "scope": 165, + "src": "2487:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43173,10 +49315,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 153, + "id": 157, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2439:7:0", + "src": "2487:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -43186,14 +49328,14 @@ }, { "constant": false, - "id": 156, + "id": 160, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2462:5:0", + "nameLocation": "2510:5:0", "nodeType": "VariableDeclaration", - "scope": 161, - "src": "2455:12:0", + "scope": 165, + "src": "2503:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43201,10 +49343,10 @@ "typeString": "uint64" }, "typeName": { - "id": 155, + "id": 159, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2455:6:0", + "src": "2503:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -43214,14 +49356,14 @@ }, { "constant": false, - "id": 159, + "id": 163, "indexed": false, "mutability": "mutable", "name": "addrs", - "nameLocation": "2479:5:0", + "nameLocation": "2527:5:0", "nodeType": "VariableDeclaration", - "scope": 161, - "src": "2469:15:0", + "scope": 165, + "src": "2517:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43230,19 +49372,19 @@ }, "typeName": { "baseType": { - "id": 157, + "id": 161, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2469:7:0", + "src": "2517:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 158, + "id": 162, "nodeType": "ArrayTypeName", - "src": "2469:9:0", + "src": "2517:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -43251,30 +49393,30 @@ "visibility": "internal" } ], - "src": "2438:47:0" + "src": "2486:47:0" }, - "src": "2416:70:0" + "src": "2464:70:0" }, { "anonymous": false, - "id": 175, + "id": 179, "name": "ContentUploaded", - "nameLocation": "2602:15:0", + "nameLocation": "2650:15:0", "nodeType": "EventDefinition", "parameters": { - "id": 174, + "id": 178, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 163, + "id": 167, "indexed": false, "mutability": "mutable", "name": "taskId", - "nameLocation": "2635:6:0", + "nameLocation": "2683:6:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2627:14:0", + "scope": 179, + "src": "2675:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43282,10 +49424,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 162, + "id": 166, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2627:7:0", + "src": "2675:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -43295,14 +49437,14 @@ }, { "constant": false, - "id": 165, + "id": 169, "indexed": false, "mutability": "mutable", "name": "round", - "nameLocation": "2658:5:0", + "nameLocation": "2706:5:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2651:12:0", + "scope": 179, + "src": "2699:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43310,10 +49452,10 @@ "typeString": "uint64" }, "typeName": { - "id": 164, + "id": 168, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2651:6:0", + "src": "2699:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -43323,14 +49465,14 @@ }, { "constant": false, - "id": 167, + "id": 171, "indexed": false, "mutability": "mutable", - "name": "owner", - "nameLocation": "2681:5:0", + "name": "sender", + "nameLocation": "2729:6:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2673:13:0", + "scope": 179, + "src": "2721:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43338,10 +49480,10 @@ "typeString": "address" }, "typeName": { - "id": 166, + "id": 170, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2673:7:0", + "src": "2721:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -43352,14 +49494,14 @@ }, { "constant": false, - "id": 169, + "id": 173, "indexed": false, "mutability": "mutable", - "name": "sharer", - "nameLocation": "2704:6:0", + "name": "reciver", + "nameLocation": "2753:7:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2696:14:0", + "scope": 179, + "src": "2745:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43367,10 +49509,10 @@ "typeString": "address" }, "typeName": { - "id": 168, + "id": 172, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2696:7:0", + "src": "2745:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -43381,14 +49523,14 @@ }, { "constant": false, - "id": 171, + "id": 175, "indexed": false, "mutability": "mutable", "name": "contentType", - "nameLocation": "2727:11:0", + "nameLocation": "2777:11:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2720:18:0", + "scope": 179, + "src": "2770:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43396,10 +49538,10 @@ "typeString": "string" }, "typeName": { - "id": 170, + "id": 174, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2720:6:0", + "src": "2770:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -43409,14 +49551,14 @@ }, { "constant": false, - "id": 173, + "id": 177, "indexed": false, "mutability": "mutable", "name": "content", - "nameLocation": "2754:7:0", + "nameLocation": "2804:7:0", "nodeType": "VariableDeclaration", - "scope": 175, - "src": "2748:13:0", + "scope": 179, + "src": "2798:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43424,10 +49566,10 @@ "typeString": "bytes" }, "typeName": { - "id": 172, + "id": 176, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2748:5:0", + "src": "2798:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -43436,15 +49578,15 @@ "visibility": "internal" } ], - "src": "2617:150:0" + "src": "2665:152:0" }, - "src": "2596:172:0" + "src": "2644:174:0" }, { "body": { - "id": 186, + "id": 190, "nodeType": "Block", - "src": "2837:510:0", + "src": "2887:510:0", "statements": [ { "expression": { @@ -43454,32 +49596,32 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 181, + "id": 185, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 178, + "id": 182, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "3286:3:0", + "src": "3336:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 179, + "id": 183, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "3286:10:0", + "src": "3336:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -43488,18 +49630,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 180, + "id": 184, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "3300:5:0", + "src": "3350:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3286:19:0", + "src": "3336:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -43507,14 +49649,14 @@ }, { "hexValue": "43616c6c6572206973206e6f74206f776e6572", - "id": 182, + "id": 186, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3307:21:0", + "src": "3357:21:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d", "typeString": "literal_string \"Caller is not owner\"" @@ -43533,7 +49675,7 @@ "typeString": "literal_string \"Caller is not owner\"" } ], - "id": 177, + "id": 181, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -43541,13 +49683,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3278:7:0", + "src": "3328:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 183, + "id": 187, "isConstant": false, "isLValue": false, "isPure": false, @@ -43555,43 +49697,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3278:51:0", + "src": "3328:51:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 184, + "id": 188, "nodeType": "ExpressionStatement", - "src": "3278:51:0" + "src": "3328:51:0" }, { - "id": 185, + "id": 189, "nodeType": "PlaceholderStatement", - "src": "3339:1:0" + "src": "3389:1:0" } ] }, - "id": 187, + "id": 191, "name": "isOwner", - "nameLocation": "2827:7:0", + "nameLocation": "2877:7:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 176, + "id": 180, "nodeType": "ParameterList", "parameters": [], - "src": "2834:2:0" + "src": "2884:2:0" }, - "src": "2818:529:0", + "src": "2868:529:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 205, + "id": 209, "nodeType": "Block", - "src": "3390:99:0", + "src": "3440:99:0", "statements": [ { "expression": { @@ -43601,7 +49743,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 200, + "id": 204, "isConstant": false, "isLValue": false, "isPure": false, @@ -43609,25 +49751,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 192, + "id": 196, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "3408:12:0", + "src": "3458:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 194, + "id": 198, "indexExpression": { - "id": 193, + "id": 197, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 189, - "src": "3421:7:0", + "referencedDeclaration": 193, + "src": "3471:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -43638,13 +49780,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3408:21:0", + "src": "3458:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "id": 195, + "id": 199, "isConstant": false, "isLValue": true, "isPure": false, @@ -43652,7 +49794,7 @@ "memberName": "creator", "nodeType": "MemberAccess", "referencedDeclaration": 51, - "src": "3408:29:0", + "src": "3458:29:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -43664,14 +49806,14 @@ "arguments": [ { "hexValue": "30", - "id": 198, + "id": 202, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3449:1:0", + "src": "3499:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -43686,26 +49828,26 @@ "typeString": "int_const 0" } ], - "id": 197, + "id": 201, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3441:7:0", + "src": "3491:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 196, + "id": 200, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3441:7:0", + "src": "3491:7:0", "typeDescriptions": {} } }, - "id": 199, + "id": 203, "isConstant": false, "isLValue": false, "isPure": true, @@ -43713,14 +49855,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3441:10:0", + "src": "3491:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3408:43:0", + "src": "3458:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -43728,14 +49870,14 @@ }, { "hexValue": "5461736b206e6f7420657869737473", - "id": 201, + "id": 205, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3453:17:0", + "src": "3503:17:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210", "typeString": "literal_string \"Task not exists\"" @@ -43754,7 +49896,7 @@ "typeString": "literal_string \"Task not exists\"" } ], - "id": 191, + "id": 195, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -43762,13 +49904,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3400:7:0", + "src": "3450:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 202, + "id": 206, "isConstant": false, "isLValue": false, "isPure": false, @@ -43776,41 +49918,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3400:71:0", + "src": "3450:71:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 203, + "id": 207, "nodeType": "ExpressionStatement", - "src": "3400:71:0" + "src": "3450:71:0" }, { - "id": 204, + "id": 208, "nodeType": "PlaceholderStatement", - "src": "3481:1:0" + "src": "3531:1:0" } ] }, - "id": 206, + "id": 210, "name": "taskExists", - "nameLocation": "3362:10:0", + "nameLocation": "3412:10:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 190, + "id": 194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 189, + "id": 193, "mutability": "mutable", "name": "task_id", - "nameLocation": "3381:7:0", + "nameLocation": "3431:7:0", "nodeType": "VariableDeclaration", - "scope": 206, - "src": "3373:15:0", + "scope": 210, + "src": "3423:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -43818,10 +49960,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 188, + "id": 192, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3373:7:0", + "src": "3423:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -43830,89 +49972,89 @@ "visibility": "internal" } ], - "src": "3372:17:0" + "src": "3422:17:0" }, - "src": "3353:136:0", + "src": "3403:136:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 235, + "id": 239, "nodeType": "Block", - "src": "3547:200:0", + "src": "3597:200:0", "statements": [ { "assignments": [ - 216 + 220 ], "declarations": [ { "constant": false, - "id": 216, + "id": 220, "mutability": "mutable", "name": "rounds", - "nameLocation": "3577:6:0", + "nameLocation": "3627:6:0", "nodeType": "VariableDeclaration", - "scope": 235, - "src": "3557:26:0", + "scope": 239, + "src": "3607:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 214, + "id": 218, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 213, + "id": 217, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "3557:9:0" + "referencedDeclaration": 85, + "src": "3607:9:0" }, - "referencedDeclaration": 83, - "src": "3557:9:0", + "referencedDeclaration": 85, + "src": "3607:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 215, + "id": 219, "nodeType": "ArrayTypeName", - "src": "3557:11:0", + "src": "3607:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 220, + "id": 224, "initialValue": { "baseExpression": { - "id": 217, + "id": 221, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "3586:10:0", + "src": "3636:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 219, + "id": 223, "indexExpression": { - "id": 218, + "id": 222, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 208, - "src": "3597:7:0", + "referencedDeclaration": 212, + "src": "3647:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -43923,14 +50065,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3586:19:0", + "src": "3636:19:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3557:48:0" + "src": "3607:48:0" }, { "expression": { @@ -43940,7 +50082,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 230, + "id": 234, "isConstant": false, "isLValue": false, "isPure": false, @@ -43950,32 +50092,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 225, + "id": 229, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 222, + "id": 226, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "3636:6:0", + "referencedDeclaration": 220, + "src": "3686:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 223, + "id": 227, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3636:13:0", + "src": "3686:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -43985,21 +50127,21 @@ "operator": ">", "rightExpression": { "hexValue": "31", - "id": 224, + "id": 228, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3652:1:0", + "src": "3702:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "3636:17:0", + "src": "3686:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -44012,32 +50154,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 229, + "id": 233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 226, + "id": 230, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "3657:6:0", + "referencedDeclaration": 220, + "src": "3707:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 227, + "id": 231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3657:13:0", + "src": "3707:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -44046,24 +50188,24 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 228, + "id": 232, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 210, - "src": "3673:5:0", + "referencedDeclaration": 214, + "src": "3723:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "3657:21:0", + "src": "3707:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "3636:42:0", + "src": "3686:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -44071,14 +50213,14 @@ }, { "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", - "id": 231, + "id": 235, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3692:27:0", + "src": "3742:27:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf", "typeString": "literal_string \"this round does not exist\"" @@ -44097,7 +50239,7 @@ "typeString": "literal_string \"this round does not exist\"" } ], - "id": 221, + "id": 225, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -44105,13 +50247,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3615:7:0", + "src": "3665:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 232, + "id": 236, "isConstant": false, "isLValue": false, "isPure": false, @@ -44119,41 +50261,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3615:114:0", + "src": "3665:114:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 233, + "id": 237, "nodeType": "ExpressionStatement", - "src": "3615:114:0" + "src": "3665:114:0" }, { - "id": 234, + "id": 238, "nodeType": "PlaceholderStatement", - "src": "3739:1:0" + "src": "3789:1:0" } ] }, - "id": 236, + "id": 240, "name": "roundExists", - "nameLocation": "3504:11:0", + "nameLocation": "3554:11:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 211, + "id": 215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 208, + "id": 212, "mutability": "mutable", "name": "task_id", - "nameLocation": "3524:7:0", + "nameLocation": "3574:7:0", "nodeType": "VariableDeclaration", - "scope": 236, - "src": "3516:15:0", + "scope": 240, + "src": "3566:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -44161,10 +50303,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 207, + "id": 211, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3516:7:0", + "src": "3566:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -44174,13 +50316,13 @@ }, { "constant": false, - "id": 210, + "id": 214, "mutability": "mutable", "name": "round", - "nameLocation": "3540:5:0", + "nameLocation": "3590:5:0", "nodeType": "VariableDeclaration", - "scope": 236, - "src": "3533:12:0", + "scope": 240, + "src": "3583:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -44188,10 +50330,10 @@ "typeString": "uint64" }, "typeName": { - "id": 209, + "id": 213, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "3533:6:0", + "src": "3583:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -44200,89 +50342,89 @@ "visibility": "internal" } ], - "src": "3515:31:0" + "src": "3565:31:0" }, - "src": "3495:252:0", + "src": "3545:252:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 260, + "id": 264, "nodeType": "Block", - "src": "3809:167:0", + "src": "3859:167:0", "statements": [ { "assignments": [ - 246 + 250 ], "declarations": [ { "constant": false, - "id": 246, + "id": 250, "mutability": "mutable", "name": "cmmts", - "nameLocation": "3851:5:0", + "nameLocation": "3901:5:0", "nodeType": "VariableDeclaration", - "scope": 260, - "src": "3819:37:0", + "scope": 264, + "src": "3869:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 244, + "id": 248, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 243, + "id": 247, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "3819:21:0" + "src": "3869:21:0" }, "referencedDeclaration": 49, - "src": "3819:21:0", + "src": "3869:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 245, + "id": 249, "nodeType": "ArrayTypeName", - "src": "3819:23:0", + "src": "3869:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 250, + "id": 254, "initialValue": { "baseExpression": { - "id": 247, + "id": 251, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "3859:21:0", + "src": "3909:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 249, + "id": 253, "indexExpression": { - "id": 248, + "id": 252, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "3881:7:0", + "referencedDeclaration": 242, + "src": "3931:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -44293,14 +50435,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3859:30:0", + "src": "3909:30:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3819:70:0" + "src": "3869:70:0" }, { "expression": { @@ -44310,32 +50452,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 255, + "id": 259, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 252, + "id": 256, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 246, - "src": "3907:5:0", + "referencedDeclaration": 250, + "src": "3957:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 253, + "id": 257, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3907:12:0", + "src": "3957:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -44344,18 +50486,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 254, + "id": 258, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 240, - "src": "3922:5:0", + "referencedDeclaration": 244, + "src": "3972:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "3907:20:0", + "src": "3957:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -44363,14 +50505,14 @@ }, { "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 256, + "id": 260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3929:28:0", + "src": "3979:28:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", "typeString": "literal_string \"The Task Round Must exists\"" @@ -44389,7 +50531,7 @@ "typeString": "literal_string \"The Task Round Must exists\"" } ], - "id": 251, + "id": 255, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -44397,13 +50539,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3899:7:0", + "src": "3949:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 257, + "id": 261, "isConstant": false, "isLValue": false, "isPure": false, @@ -44411,41 +50553,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3899:59:0", + "src": "3949:59:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 258, + "id": 262, "nodeType": "ExpressionStatement", - "src": "3899:59:0" + "src": "3949:59:0" }, { - "id": 259, + "id": 263, "nodeType": "PlaceholderStatement", - "src": "3968:1:0" + "src": "4018:1:0" } ] }, - "id": 261, + "id": 265, "name": "roundcmmtExists", - "nameLocation": "3762:15:0", + "nameLocation": "3812:15:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 241, + "id": 245, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 238, + "id": 242, "mutability": "mutable", "name": "task_id", - "nameLocation": "3786:7:0", + "nameLocation": "3836:7:0", "nodeType": "VariableDeclaration", - "scope": 261, - "src": "3778:15:0", + "scope": 265, + "src": "3828:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -44453,10 +50595,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 237, + "id": 241, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3778:7:0", + "src": "3828:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -44466,13 +50608,13 @@ }, { "constant": false, - "id": 240, + "id": 244, "mutability": "mutable", "name": "round", - "nameLocation": "3802:5:0", + "nameLocation": "3852:5:0", "nodeType": "VariableDeclaration", - "scope": 261, - "src": "3795:12:0", + "scope": 265, + "src": "3845:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -44480,10 +50622,10 @@ "typeString": "uint64" }, "typeName": { - "id": 239, + "id": 243, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "3795:6:0", + "src": "3845:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -44492,17 +50634,17 @@ "visibility": "internal" } ], - "src": "3777:31:0" + "src": "3827:31:0" }, - "src": "3753:223:0", + "src": "3803:223:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 277, + "id": 281, "nodeType": "Block", - "src": "4018:147:0", + "src": "4068:147:0", "statements": [ { "expression": { @@ -44512,7 +50654,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 272, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -44520,25 +50662,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 266, + "id": 270, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "4049:12:0", + "src": "4099:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 268, + "id": 272, "indexExpression": { - "id": 267, + "id": 271, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 263, - "src": "4062:7:0", + "referencedDeclaration": 267, + "src": "4112:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -44549,13 +50691,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4049:21:0", + "src": "4099:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "id": 269, + "id": 273, "isConstant": false, "isLValue": true, "isPure": false, @@ -44563,7 +50705,7 @@ "memberName": "creator", "nodeType": "MemberAccess", "referencedDeclaration": 51, - "src": "4049:29:0", + "src": "4099:29:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -44573,31 +50715,31 @@ "operator": "==", "rightExpression": { "expression": { - "id": 270, + "id": 274, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "4082:3:0", + "src": "4132:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 271, + "id": 275, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "4082:10:0", + "src": "4132:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4049:43:0", + "src": "4099:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -44605,14 +50747,14 @@ }, { "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", - "id": 273, + "id": 277, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4106:31:0", + "src": "4156:31:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063", "typeString": "literal_string \"Must called by the task owner\"" @@ -44631,7 +50773,7 @@ "typeString": "literal_string \"Must called by the task owner\"" } ], - "id": 265, + "id": 269, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -44639,13 +50781,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "4028:7:0", + "src": "4078:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 274, + "id": 278, "isConstant": false, "isLValue": false, "isPure": false, @@ -44653,41 +50795,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4028:119:0", + "src": "4078:119:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 275, + "id": 279, "nodeType": "ExpressionStatement", - "src": "4028:119:0" + "src": "4078:119:0" }, { - "id": 276, + "id": 280, "nodeType": "PlaceholderStatement", - "src": "4157:1:0" + "src": "4207:1:0" } ] }, - "id": 278, + "id": 282, "name": "taskOwner", - "nameLocation": "3991:9:0", + "nameLocation": "4041:9:0", "nodeType": "ModifierDefinition", "parameters": { - "id": 264, + "id": 268, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 263, + "id": 267, "mutability": "mutable", "name": "task_id", - "nameLocation": "4009:7:0", + "nameLocation": "4059:7:0", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "4001:15:0", + "scope": 282, + "src": "4051:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -44695,10 +50837,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 262, + "id": 266, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4001:7:0", + "src": "4051:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -44707,75 +50849,75 @@ "visibility": "internal" } ], - "src": "4000:17:0" + "src": "4050:17:0" }, - "src": "3982:183:0", + "src": "4032:183:0", "virtual": false, "visibility": "internal" }, { "body": { - "id": 302, + "id": 306, "nodeType": "Block", - "src": "4266:184:0", + "src": "4316:184:0", "statements": [ { "expression": { - "id": 287, + "id": 291, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 285, + "id": 289, "name": "idContract", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6, - "src": "4276:10:0", + "src": "4326:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 286, + "id": 290, "name": "_addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 282, - "src": "4289:5:0", + "referencedDeclaration": 286, + "src": "4339:5:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, - "src": "4276:18:0", + "src": "4326:18:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, - "id": 288, + "id": 292, "nodeType": "ExpressionStatement", - "src": "4276:18:0" + "src": "4326:18:0" }, { "expression": { - "id": 292, + "id": 296, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 289, + "id": 293, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "4304:5:0", + "src": "4354:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -44785,39 +50927,39 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 290, + "id": 294, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "4312:3:0", + "src": "4362:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 291, + "id": 295, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "4312:10:0", + "src": "4362:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4304:18:0", + "src": "4354:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 293, + "id": 297, "nodeType": "ExpressionStatement", - "src": "4304:18:0" + "src": "4354:18:0" }, { "eventCall": { @@ -44826,14 +50968,14 @@ "arguments": [ { "hexValue": "30", - "id": 297, + "id": 301, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4433:1:0", + "src": "4483:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -44848,26 +50990,26 @@ "typeString": "int_const 0" } ], - "id": 296, + "id": 300, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4425:7:0", + "src": "4475:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 295, + "id": 299, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4425:7:0", + "src": "4475:7:0", "typeDescriptions": {} } }, - "id": 298, + "id": 302, "isConstant": false, "isLValue": false, "isPure": true, @@ -44875,7 +51017,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4425:10:0", + "src": "4475:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -44883,12 +51025,12 @@ } }, { - "id": 299, + "id": 303, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "4437:5:0", + "src": "4487:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -44906,18 +51048,18 @@ "typeString": "address" } ], - "id": 294, + "id": 298, "name": "OwnerSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 110, - "src": "4416:8:0", + "referencedDeclaration": 112, + "src": "4466:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 300, + "id": 304, "isConstant": false, "isLValue": false, "isPure": false, @@ -44925,26 +51067,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4416:27:0", + "src": "4466:27:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 301, + "id": 305, "nodeType": "EmitStatement", - "src": "4411:32:0" + "src": "4461:32:0" } ] }, "documentation": { - "id": 279, + "id": 283, "nodeType": "StructuredDocumentation", - "src": "4171:54:0", + "src": "4221:54:0", "text": " @dev Set contract deployer as owner" }, - "id": 303, + "id": 307, "implemented": true, "kind": "constructor", "modifiers": [], @@ -44952,106 +51094,106 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 283, + "id": 287, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 282, + "id": 286, "mutability": "mutable", "name": "_addr", - "nameLocation": "4259:5:0", + "nameLocation": "4309:5:0", "nodeType": "VariableDeclaration", - "scope": 303, - "src": "4242:22:0", + "scope": 307, + "src": "4292:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" }, "typeName": { - "id": 281, + "id": 285, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 280, + "id": 284, "name": "IdentityContract", "nodeType": "IdentifierPath", - "referencedDeclaration": 1929, - "src": "4242:16:0" + "referencedDeclaration": 2193, + "src": "4292:16:0" }, - "referencedDeclaration": 1929, - "src": "4242:16:0", + "referencedDeclaration": 2193, + "src": "4292:16:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, "visibility": "internal" } ], - "src": "4241:24:0" + "src": "4291:24:0" }, "returnParameters": { - "id": 284, + "id": 288, "nodeType": "ParameterList", "parameters": [], - "src": "4266:0:0" + "src": "4316:0:0" }, - "scope": 1663, - "src": "4230:220:0", + "scope": 1927, + "src": "4280:220:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 321, + "id": 325, "nodeType": "Block", - "src": "4662:44:0", + "src": "4712:44:0", "statements": [ { "expression": { - "id": 319, + "id": 323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 315, + "id": 319, "name": "task", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 313, - "src": "4672:4:0", + "referencedDeclaration": 317, + "src": "4722:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task memory" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "baseExpression": { - "id": 316, + "id": 320, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "4679:12:0", + "src": "4729:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 318, + "id": 322, "indexExpression": { - "id": 317, + "id": 321, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 306, - "src": "4692:6:0", + "referencedDeclaration": 310, + "src": "4742:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -45062,79 +51204,79 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4679:20:0", + "src": "4729:20:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "src": "4672:27:0", + "src": "4722:27:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task memory" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task memory" } }, - "id": 320, + "id": 324, "nodeType": "ExpressionStatement", - "src": "4672:27:0" + "src": "4722:27:0" } ] }, "documentation": { - "id": 304, + "id": 308, "nodeType": "StructuredDocumentation", - "src": "4456:70:0", + "src": "4506:70:0", "text": " @dev get task info data\n @param taskId taskId" }, "functionSelector": "58af9f73", - "id": 322, + "id": 326, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 309, + "id": 313, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 306, - "src": "4615:6:0", + "referencedDeclaration": 310, + "src": "4665:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 310, + "id": 314, "kind": "modifierInvocation", "modifierName": { - "id": 308, + "id": 312, "name": "taskExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 206, - "src": "4604:10:0" + "referencedDeclaration": 210, + "src": "4654:10:0" }, "nodeType": "ModifierInvocation", - "src": "4604:18:0" + "src": "4654:18:0" } ], "name": "getTaskData", - "nameLocation": "4540:11:0", + "nameLocation": "4590:11:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 307, + "id": 311, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 306, + "id": 310, "mutability": "mutable", "name": "taskId", - "nameLocation": "4560:6:0", + "nameLocation": "4610:6:0", "nodeType": "VariableDeclaration", - "scope": 322, - "src": "4552:14:0", + "scope": 326, + "src": "4602:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -45142,10 +51284,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 305, + "id": 309, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4552:7:0", + "src": "4602:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -45154,75 +51296,75 @@ "visibility": "internal" } ], - "src": "4551:16:0" + "src": "4601:16:0" }, "returnParameters": { - "id": 314, + "id": 318, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 313, + "id": 317, "mutability": "mutable", "name": "task", - "nameLocation": "4652:4:0", + "nameLocation": "4702:4:0", "nodeType": "VariableDeclaration", - "scope": 322, - "src": "4640:16:0", + "scope": 326, + "src": "4690:16:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task" }, "typeName": { - "id": 312, + "id": 316, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 311, + "id": 315, "name": "Task", "nodeType": "IdentifierPath", - "referencedDeclaration": 60, - "src": "4640:4:0" + "referencedDeclaration": 62, + "src": "4690:4:0" }, - "referencedDeclaration": 60, - "src": "4640:4:0", + "referencedDeclaration": 62, + "src": "4690:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" } }, "visibility": "internal" } ], - "src": "4639:18:0" + "src": "4689:18:0" }, - "scope": 1663, - "src": "4531:175:0", + "scope": 1927, + "src": "4581:175:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 399, + "id": 408, "nodeType": "Block", - "src": "5132:604:0", + "src": "5216:735:0", "statements": [ { "assignments": [ - 333 + 339 ], "declarations": [ { "constant": false, - "id": 333, + "id": 339, "mutability": "mutable", "name": "task_id", - "nameLocation": "5150:7:0", + "nameLocation": "5234:7:0", "nodeType": "VariableDeclaration", - "scope": 399, - "src": "5142:15:0", + "scope": 408, + "src": "5226:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -45230,10 +51372,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 332, + "id": 338, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5142:7:0", + "src": "5226:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -45242,32 +51384,32 @@ "visibility": "internal" } ], - "id": 345, + "id": 352, "initialValue": { "arguments": [ { "arguments": [ { "expression": { - "id": 337, + "id": 343, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "5194:5:0", + "src": "5278:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 338, + "id": 344, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "timestamp", + "memberName": "number", "nodeType": "MemberAccess", - "src": "5194:15:0", + "src": "5278:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -45275,53 +51417,65 @@ }, { "expression": { - "id": 339, + "id": 345, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5211:3:0", + "src": "5292:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 340, + "id": 346, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5211:10:0", + "src": "5292:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 341, + "id": 347, "name": "dataSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 325, - "src": "5223:7:0", + "referencedDeclaration": 329, + "src": "5304:7:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" } }, { - "id": 342, + "id": 348, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 327, - "src": "5232:10:0", + "referencedDeclaration": 331, + "src": "5313:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } + }, + { + "id": 349, + "name": "taskType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 333, + "src": "5325:8:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } } ], "expression": { @@ -45341,34 +51495,38 @@ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" } ], "expression": { - "id": 335, + "id": 341, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "5183:3:0", + "src": "5267:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 336, + "id": 342, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "encode", "nodeType": "MemberAccess", - "src": "5183:10:0", + "src": "5267:10:0", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 343, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -45376,7 +51534,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5183:60:0", + "src": "5267:67:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -45391,18 +51549,18 @@ "typeString": "bytes memory" } ], - "id": 334, + "id": 340, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "5160:9:0", + "src": "5244:9:0", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 344, + "id": 351, "isConstant": false, "isLValue": false, "isPure": false, @@ -45410,7 +51568,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5160:93:0", + "src": "5244:100:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -45418,72 +51576,72 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5142:111:0" + "src": "5226:118:0" }, { "assignments": [ - 350 + 357 ], "declarations": [ { "constant": false, - "id": 350, + "id": 357, "mutability": "mutable", "name": "node", - "nameLocation": "5292:4:0", + "nameLocation": "5383:4:0", "nodeType": "VariableDeclaration", - "scope": 399, - "src": "5263:33:0", + "scope": 408, + "src": "5354:33:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node" }, "typeName": { - "id": 349, + "id": 356, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 348, + "id": 355, "name": "IdentityContract.Node", "nodeType": "IdentifierPath", - "referencedDeclaration": 1670, - "src": "5263:21:0" + "referencedDeclaration": 1934, + "src": "5354:21:0" }, - "referencedDeclaration": 1670, - "src": "5263:21:0", + "referencedDeclaration": 1934, + "src": "5354:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_storage_ptr", + "typeIdentifier": "t_struct$_Node_$1934_storage_ptr", "typeString": "struct IdentityContract.Node" } }, "visibility": "internal" } ], - "id": 356, + "id": 363, "initialValue": { "arguments": [ { "expression": { - "id": 353, + "id": 360, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5322:3:0", + "src": "5413:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 354, + "id": 361, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5322:10:0", + "src": "5413:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -45498,32 +51656,32 @@ } ], "expression": { - "id": 351, + "id": 358, "name": "idContract", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6, - "src": "5299:10:0", + "src": "5390:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$1929", + "typeIdentifier": "t_contract$_IdentityContract_$2193", "typeString": "contract IdentityContract" } }, - "id": 352, + "id": 359, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNodeInfo", "nodeType": "MemberAccess", - "referencedDeclaration": 1928, - "src": "5299:22:0", + "referencedDeclaration": 2192, + "src": "5390:22:0", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_Node_$1670_memory_ptr_$", + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_Node_$1934_memory_ptr_$", "typeString": "function (address) view external returns (struct IdentityContract.Node memory)" } }, - "id": 355, + "id": 362, "isConstant": false, "isLValue": false, "isPure": false, @@ -45531,44 +51689,44 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5299:34:0", + "src": "5390:34:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "5263:70:0" + "src": "5354:70:0" }, { "expression": { - "id": 369, + "id": 377, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 357, + "id": 364, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "5343:12:0", + "src": "5434:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 359, + "id": 366, "indexExpression": { - "id": 358, + "id": 365, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5356:7:0", + "referencedDeclaration": 339, + "src": "5447:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -45579,10 +51737,10 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5343:21:0", + "src": "5434:21:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, "nodeType": "Assignment", @@ -45591,26 +51749,26 @@ "arguments": [ { "expression": { - "id": 361, + "id": 368, "name": "node", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 350, - "src": "5398:4:0", + "referencedDeclaration": 357, + "src": "5489:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node memory" } }, - "id": 362, + "id": 369, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "url", "nodeType": "MemberAccess", - "referencedDeclaration": 1667, - "src": "5398:8:0", + "referencedDeclaration": 1931, + "src": "5489:8:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -45618,64 +51776,76 @@ }, { "expression": { - "id": 363, + "id": 370, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5429:3:0", + "src": "5520:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 364, + "id": 371, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5429:10:0", + "src": "5520:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 365, + "id": 372, "name": "dataSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 325, - "src": "5462:7:0", + "referencedDeclaration": 329, + "src": "5553:7:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" } }, { - "id": 366, + "id": 373, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 327, - "src": "5495:10:0", + "referencedDeclaration": 331, + "src": "5586:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, + { + "id": 374, + "name": "taskType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 333, + "src": "5620:8:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, { "hexValue": "30", - "id": 367, + "id": 375, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5533:1:0", + "src": "5656:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -45701,23 +51871,27 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], - "id": 360, + "id": 367, "name": "Task", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 60, - "src": "5367:4:0", + "referencedDeclaration": 62, + "src": "5458:4:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Task_$60_storage_ptr_$", - "typeString": "type(struct DeltaContract.Task storage pointer)" + "typeIdentifier": "t_type$_t_struct$_Task_$62_storage_ptr_$", + "typeString": "type(struct HFLContract.Task storage pointer)" } }, - "id": 368, + "id": 376, "isConstant": false, "isLValue": false, "isPure": false, @@ -45728,40 +51902,41 @@ "creator", "dataSet", "commitment", + "taskType", "currentRound" ], "nodeType": "FunctionCall", - "src": "5367:178:0", + "src": "5458:210:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_memory_ptr", - "typeString": "struct DeltaContract.Task memory" + "typeIdentifier": "t_struct$_Task_$62_memory_ptr", + "typeString": "struct HFLContract.Task memory" } }, - "src": "5343:202:0", + "src": "5434:234:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, - "id": 370, + "id": 378, "nodeType": "ExpressionStatement", - "src": "5343:202:0" + "src": "5434:234:0" }, { "expression": { - "id": 373, + "id": 381, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 371, + "id": 379, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 330, - "src": "5555:6:0", + "referencedDeclaration": 336, + "src": "5678:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -45770,98 +51945,98 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 372, + "id": 380, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5564:7:0", + "referencedDeclaration": 339, + "src": "5687:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "5555:16:0", + "src": "5678:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "id": 374, + "id": 382, "nodeType": "ExpressionStatement", - "src": "5555:16:0" + "src": "5678:16:0" }, { "assignments": [ - 379 + 387 ], "declarations": [ { "constant": false, - "id": 379, + "id": 387, "mutability": "mutable", "name": "rounds", - "nameLocation": "5601:6:0", + "nameLocation": "5724:6:0", "nodeType": "VariableDeclaration", - "scope": 399, - "src": "5581:26:0", + "scope": 408, + "src": "5704:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 377, + "id": 385, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 376, + "id": 384, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "5581:9:0" + "referencedDeclaration": 85, + "src": "5704:9:0" }, - "referencedDeclaration": 83, - "src": "5581:9:0", + "referencedDeclaration": 85, + "src": "5704:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 378, + "id": 386, "nodeType": "ArrayTypeName", - "src": "5581:11:0", + "src": "5704:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 383, + "id": 391, "initialValue": { "baseExpression": { - "id": 380, + "id": 388, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "5610:10:0", + "src": "5733:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 382, + "id": 390, "indexExpression": { - "id": 381, + "id": 389, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 330, - "src": "5621:6:0", + "referencedDeclaration": 336, + "src": "5744:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -45872,14 +52047,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5610:18:0", + "src": "5733:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5581:47:0" + "src": "5704:47:0" }, { "expression": { @@ -45887,31 +52062,31 @@ "expression": { "argumentTypes": [], "expression": { - "id": 384, + "id": 392, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 379, - "src": "5638:6:0", + "referencedDeclaration": 387, + "src": "5761:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 386, + "id": 394, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "5638:11:0", + "src": "5761:11:0", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$83_storage_$bound_to$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.TaskRound storage ref[] storage pointer) returns (struct DeltaContract.TaskRound storage ref)" + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", + "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" } }, - "id": 387, + "id": 395, "isConstant": false, "isLValue": true, "isPure": false, @@ -45919,65 +52094,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5638:13:0", + "src": "5761:13:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 388, + "id": 396, "nodeType": "ExpressionStatement", - "src": "5638:13:0" + "src": "5761:13:0" }, { "eventCall": { "arguments": [ { "expression": { - "id": 390, + "id": 398, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "5678:3:0", + "src": "5814:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 391, + "id": 399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "5678:10:0", + "src": "5814:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 392, + "id": 400, "name": "task_id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5690:7:0", + "referencedDeclaration": 339, + "src": "5838:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 393, + "id": 401, "name": "dataSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 325, - "src": "5699:7:0", + "referencedDeclaration": 329, + "src": "5859:7:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -45985,42 +52160,54 @@ }, { "expression": { - "id": 394, + "id": 402, "name": "node", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 350, - "src": "5708:4:0", + "referencedDeclaration": 357, + "src": "5880:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1670_memory_ptr", + "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", "typeString": "struct IdentityContract.Node memory" } }, - "id": 395, + "id": 403, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "url", "nodeType": "MemberAccess", - "referencedDeclaration": 1667, - "src": "5708:8:0", + "referencedDeclaration": 1931, + "src": "5880:8:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 396, + "id": 404, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 327, - "src": "5718:10:0", + "referencedDeclaration": 331, + "src": "5902:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } + }, + { + "id": 405, + "name": "taskType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 333, + "src": "5926:8:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } } ], "expression": { @@ -46044,20 +52231,24 @@ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" } ], - "id": 389, + "id": 397, "name": "TaskCreated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 122, - "src": "5666:11:0", + "referencedDeclaration": 126, + "src": "5789:11:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$returns$__$", - "typeString": "function (address,bytes32,string memory,string memory,bytes32)" + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,bytes32,string memory,string memory,bytes32,string memory)" } }, - "id": 397, + "id": 406, "isConstant": false, "isLValue": false, "isPure": false, @@ -46065,46 +52256,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5666:63:0", + "src": "5789:155:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 398, + "id": 407, "nodeType": "EmitStatement", - "src": "5661:68:0" + "src": "5784:160:0" } ] }, "documentation": { - "id": 323, + "id": 327, "nodeType": "StructuredDocumentation", - "src": "4712:288:0", + "src": "4762:288:0", "text": " @dev called by task developer, notifying all clients that a new learning task has been published\n @param dataSet data set name (file/folder name of training data)\n @param commitment training code hash (client validation purpose)\n @return taskId taskId" }, - "functionSelector": "75cb2a0e", - "id": 400, + "functionSelector": "9bd3a869", + "id": 409, "implemented": true, "kind": "function", "modifiers": [], "name": "createTask", - "nameLocation": "5014:10:0", + "nameLocation": "5064:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 328, + "id": 334, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 325, + "id": 329, "mutability": "mutable", "name": "dataSet", - "nameLocation": "5050:7:0", + "nameLocation": "5100:7:0", "nodeType": "VariableDeclaration", - "scope": 400, - "src": "5034:23:0", + "scope": 409, + "src": "5084:23:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -46112,10 +52303,10 @@ "typeString": "string" }, "typeName": { - "id": 324, + "id": 328, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5034:6:0", + "src": "5084:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -46125,13 +52316,13 @@ }, { "constant": false, - "id": 327, + "id": 331, "mutability": "mutable", "name": "commitment", - "nameLocation": "5075:10:0", + "nameLocation": "5125:10:0", "nodeType": "VariableDeclaration", - "scope": 400, - "src": "5067:18:0", + "scope": 409, + "src": "5117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -46139,33 +52330,60 @@ "typeString": "bytes32" }, "typeName": { - "id": 326, + "id": 330, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5067:7:0", + "src": "5117:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" + }, + { + "constant": false, + "id": 333, + "mutability": "mutable", + "name": "taskType", + "nameLocation": "5161:8:0", + "nodeType": "VariableDeclaration", + "scope": 409, + "src": "5145:24:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 332, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5145:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" } ], - "src": "5024:67:0" + "src": "5074:101:0" }, "returnParameters": { - "id": 331, + "id": 337, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 330, + "id": 336, "mutability": "mutable", "name": "taskId", - "nameLocation": "5124:6:0", + "nameLocation": "5208:6:0", "nodeType": "VariableDeclaration", - "scope": 400, - "src": "5116:14:0", + "scope": 409, + "src": "5200:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -46173,10 +52391,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 329, + "id": 335, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5116:7:0", + "src": "5200:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -46185,91 +52403,91 @@ "visibility": "internal" } ], - "src": "5115:16:0" + "src": "5199:16:0" }, - "scope": 1663, - "src": "5005:731:0", + "scope": 1927, + "src": "5055:896:0", "stateMutability": "payable", "virtual": false, "visibility": "public" }, { "body": { - "id": 527, + "id": 536, "nodeType": "Block", - "src": "6112:802:0", + "src": "6327:802:0", "statements": [ { "assignments": [ - 422 + 431 ], "declarations": [ { "constant": false, - "id": 422, + "id": 431, "mutability": "mutable", "name": "rounds", - "nameLocation": "6142:6:0", + "nameLocation": "6357:6:0", "nodeType": "VariableDeclaration", - "scope": 527, - "src": "6122:26:0", + "scope": 536, + "src": "6337:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 420, + "id": 429, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 419, + "id": 428, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "6122:9:0" + "referencedDeclaration": 85, + "src": "6337:9:0" }, - "referencedDeclaration": 83, - "src": "6122:9:0", + "referencedDeclaration": 85, + "src": "6337:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 421, + "id": 430, "nodeType": "ArrayTypeName", - "src": "6122:11:0", + "src": "6337:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 426, + "id": 435, "initialValue": { "baseExpression": { - "id": 423, + "id": 432, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "6151:10:0", + "src": "6366:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 425, + "id": 434, "indexExpression": { - "id": 424, + "id": 433, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6162:6:0", + "referencedDeclaration": 412, + "src": "6377:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -46280,14 +52498,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6151:18:0", + "src": "6366:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6122:47:0" + "src": "6337:47:0" }, { "expression": { @@ -46297,32 +52515,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 431, + "id": 440, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 428, + "id": 437, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6200:6:0", + "referencedDeclaration": 431, + "src": "6415:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 429, + "id": 438, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6200:13:0", + "src": "6415:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -46331,18 +52549,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 430, + "id": 439, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6217:5:0", + "referencedDeclaration": 414, + "src": "6432:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6200:22:0", + "src": "6415:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -46350,14 +52568,14 @@ }, { "hexValue": "74686520726f756e6420686173206265656e20616c72656164792073746172746564206f72207468652070726520726f756e6420646f6573206e6f74206578697374", - "id": 432, + "id": 441, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6236:68:0", + "src": "6451:68:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7", "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" @@ -46376,7 +52594,7 @@ "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" } ], - "id": 427, + "id": 436, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -46384,13 +52602,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "6179:7:0", + "src": "6394:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 433, + "id": 442, "isConstant": false, "isLValue": false, "isPure": false, @@ -46398,79 +52616,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6179:135:0", + "src": "6394:135:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 434, + "id": 443, "nodeType": "ExpressionStatement", - "src": "6179:135:0" + "src": "6394:135:0" }, { "assignments": [ - 437 + 446 ], "declarations": [ { "constant": false, - "id": 437, + "id": 446, "mutability": "mutable", "name": "task", - "nameLocation": "6337:4:0", + "nameLocation": "6552:4:0", "nodeType": "VariableDeclaration", - "scope": 527, - "src": "6324:17:0", + "scope": 536, + "src": "6539:17:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" }, "typeName": { - "id": 436, + "id": 445, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 435, + "id": 444, "name": "Task", "nodeType": "IdentifierPath", - "referencedDeclaration": 60, - "src": "6324:4:0" + "referencedDeclaration": 62, + "src": "6539:4:0" }, - "referencedDeclaration": 60, - "src": "6324:4:0", + "referencedDeclaration": 62, + "src": "6539:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task" } }, "visibility": "internal" } ], - "id": 441, + "id": 450, "initialValue": { "baseExpression": { - "id": 438, + "id": 447, "name": "createdTasks", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 19, - "src": "6344:12:0", + "src": "6559:12:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$60_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.Task storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" } }, - "id": 440, + "id": 449, "indexExpression": { - "id": 439, + "id": 448, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6357:6:0", + "referencedDeclaration": 412, + "src": "6572:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -46481,44 +52699,44 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6344:20:0", + "src": "6559:20:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage", - "typeString": "struct DeltaContract.Task storage ref" + "typeIdentifier": "t_struct$_Task_$62_storage", + "typeString": "struct HFLContract.Task storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6324:40:0" + "src": "6539:40:0" }, { "expression": { - "id": 446, + "id": 455, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 442, + "id": 451, "name": "task", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "6374:4:0", + "referencedDeclaration": 446, + "src": "6589:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$60_storage_ptr", - "typeString": "struct DeltaContract.Task storage pointer" + "typeIdentifier": "t_struct$_Task_$62_storage_ptr", + "typeString": "struct HFLContract.Task storage pointer" } }, - "id": 444, + "id": 453, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "currentRound", "nodeType": "MemberAccess", - "referencedDeclaration": 59, - "src": "6374:17:0", + "referencedDeclaration": 61, + "src": "6589:17:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -46527,32 +52745,32 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 445, + "id": 454, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6394:5:0", + "referencedDeclaration": 414, + "src": "6609:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6374:25:0", + "src": "6589:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 447, + "id": 456, "nodeType": "ExpressionStatement", - "src": "6374:25:0" + "src": "6589:25:0" }, { "body": { - "id": 464, + "id": 473, "nodeType": "Block", - "src": "6465:38:0", + "src": "6680:38:0", "statements": [ { "expression": { @@ -46560,31 +52778,31 @@ "expression": { "argumentTypes": [], "expression": { - "id": 459, + "id": 468, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6479:6:0", + "referencedDeclaration": 431, + "src": "6694:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 461, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "6479:11:0", + "src": "6694:11:0", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$83_storage_$bound_to$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.TaskRound storage ref[] storage pointer) returns (struct DeltaContract.TaskRound storage ref)" + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", + "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" } }, - "id": 462, + "id": 471, "isConstant": false, "isLValue": true, "isPure": false, @@ -46592,16 +52810,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6479:13:0", + "src": "6694:13:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 463, + "id": 472, "nodeType": "ExpressionStatement", - "src": "6479:13:0" + "src": "6694:13:0" } ] }, @@ -46610,7 +52828,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 458, + "id": 467, "isConstant": false, "isLValue": false, "isPure": false, @@ -46620,32 +52838,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 451, + "id": 460, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 448, + "id": 457, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6416:6:0", + "referencedDeclaration": 431, + "src": "6631:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 449, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6416:13:0", + "src": "6631:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -46655,21 +52873,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 450, + "id": 459, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6433:1:0", + "src": "6648:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6416:18:0", + "src": "6631:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -46682,7 +52900,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 457, + "id": 466, "isConstant": false, "isLValue": false, "isPure": false, @@ -46692,32 +52910,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 455, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 452, + "id": 461, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6438:6:0", + "referencedDeclaration": 431, + "src": "6653:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 453, + "id": 462, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6438:13:0", + "src": "6653:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -46727,21 +52945,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 454, + "id": 463, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6454:1:0", + "src": "6669:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "6438:17:0", + "src": "6653:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -46750,36 +52968,36 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 456, + "id": 465, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6458:5:0", + "referencedDeclaration": 414, + "src": "6673:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6438:25:0", + "src": "6653:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6416:47:0", + "src": "6631:47:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 465, + "id": 474, "nodeType": "WhileStatement", - "src": "6409:94:0" + "src": "6624:94:0" }, { "expression": { - "id": 471, + "id": 480, "isConstant": false, "isLValue": false, "isPure": false, @@ -46787,25 +53005,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 466, + "id": 475, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6512:6:0", + "referencedDeclaration": 431, + "src": "6727:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 468, + "id": 477, "indexExpression": { - "id": 467, + "id": 476, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6519:5:0", + "referencedDeclaration": 414, + "src": "6734:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -46816,21 +53034,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6512:13:0", + "src": "6727:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 469, + "id": 478, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "currentRound", "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "6512:26:0", + "referencedDeclaration": 69, + "src": "6727:26:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -46839,30 +53057,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 470, + "id": 479, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6541:5:0", + "referencedDeclaration": 414, + "src": "6756:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6512:34:0", + "src": "6727:34:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 472, + "id": 481, "nodeType": "ExpressionStatement", - "src": "6512:34:0" + "src": "6727:34:0" }, { "expression": { - "id": 478, + "id": 487, "isConstant": false, "isLValue": false, "isPure": false, @@ -46870,25 +53088,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 473, + "id": 482, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6556:6:0", + "referencedDeclaration": 431, + "src": "6771:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 475, + "id": 484, "indexExpression": { - "id": 474, + "id": 483, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6563:5:0", + "referencedDeclaration": 414, + "src": "6778:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -46899,21 +53117,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6556:13:0", + "src": "6771:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 476, + "id": 485, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "maxSample", "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "6556:23:0", + "referencedDeclaration": 71, + "src": "6771:23:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -46922,30 +53140,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 477, + "id": 486, "name": "maxSample", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 407, - "src": "6582:9:0", + "referencedDeclaration": 416, + "src": "6797:9:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "6556:35:0", + "src": "6771:35:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "id": 479, + "id": 488, "nodeType": "ExpressionStatement", - "src": "6556:35:0" + "src": "6771:35:0" }, { "expression": { - "id": 485, + "id": 494, "isConstant": false, "isLValue": false, "isPure": false, @@ -46953,25 +53171,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 480, + "id": 489, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6601:6:0", + "referencedDeclaration": 431, + "src": "6816:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 482, + "id": 491, "indexExpression": { - "id": 481, + "id": 490, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6608:5:0", + "referencedDeclaration": 414, + "src": "6823:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -46982,21 +53200,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6601:13:0", + "src": "6816:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 483, + "id": 492, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "minSample", "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "6601:23:0", + "referencedDeclaration": 73, + "src": "6816:23:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -47005,30 +53223,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 484, + "id": 493, "name": "minSample", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 409, - "src": "6627:9:0", + "referencedDeclaration": 418, + "src": "6842:9:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "6601:35:0", + "src": "6816:35:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "id": 486, + "id": 495, "nodeType": "ExpressionStatement", - "src": "6601:35:0" + "src": "6816:35:0" }, { "expression": { - "id": 493, + "id": 502, "isConstant": false, "isLValue": false, "isPure": false, @@ -47036,25 +53254,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 487, + "id": 496, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 422, - "src": "6646:6:0", + "referencedDeclaration": 431, + "src": "6861:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 489, + "id": 498, "indexExpression": { - "id": 488, + "id": 497, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6653:5:0", + "referencedDeclaration": 414, + "src": "6868:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -47065,42 +53283,42 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6646:13:0", + "src": "6861:13:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, - "id": 490, + "id": 499, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "6646:20:0", + "referencedDeclaration": 76, + "src": "6861:20:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 491, + "id": 500, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "6669:11:0", + "src": "6884:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 492, + "id": 501, "isConstant": false, "isLValue": false, "isPure": true, @@ -47108,93 +53326,93 @@ "memberName": "Started", "nodeType": "MemberAccess", "referencedDeclaration": 9, - "src": "6669:19:0", + "src": "6884:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "6646:42:0", + "src": "6861:42:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 494, + "id": 503, "nodeType": "ExpressionStatement", - "src": "6646:42:0" + "src": "6861:42:0" }, { "assignments": [ - 499 + 508 ], "declarations": [ { "constant": false, - "id": 499, + "id": 508, "mutability": "mutable", "name": "cmmts", - "nameLocation": "6730:5:0", + "nameLocation": "6945:5:0", "nodeType": "VariableDeclaration", - "scope": 527, - "src": "6698:37:0", + "scope": 536, + "src": "6913:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 497, + "id": 506, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 496, + "id": 505, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "6698:21:0" + "src": "6913:21:0" }, "referencedDeclaration": 49, - "src": "6698:21:0", + "src": "6913:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 498, + "id": 507, "nodeType": "ArrayTypeName", - "src": "6698:23:0", + "src": "6913:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 503, + "id": 512, "initialValue": { "baseExpression": { - "id": 500, + "id": 509, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "6738:21:0", + "src": "6953:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 502, + "id": 511, "indexExpression": { - "id": 501, + "id": 510, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6760:6:0", + "referencedDeclaration": 412, + "src": "6975:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -47205,20 +53423,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6738:29:0", + "src": "6953:29:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6698:69:0" + "src": "6913:69:0" }, { "body": { - "id": 520, + "id": 529, "nodeType": "Block", - "src": "6831:37:0", + "src": "7046:37:0", "statements": [ { "expression": { @@ -47226,31 +53444,31 @@ "expression": { "argumentTypes": [], "expression": { - "id": 515, + "id": 524, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "6845:5:0", + "referencedDeclaration": 508, + "src": "7060:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 517, + "id": 526, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "6845:10:0", + "src": "7060:10:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.RoundModelCommitments storage ref[] storage pointer) returns (struct DeltaContract.RoundModelCommitments storage ref)" + "typeString": "function (struct HFLContract.RoundModelCommitments storage ref[] storage pointer) returns (struct HFLContract.RoundModelCommitments storage ref)" } }, - "id": 518, + "id": 527, "isConstant": false, "isLValue": true, "isPure": false, @@ -47258,16 +53476,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6845:12:0", + "src": "7060:12:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, - "id": 519, + "id": 528, "nodeType": "ExpressionStatement", - "src": "6845:12:0" + "src": "7060:12:0" } ] }, @@ -47276,7 +53494,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 514, + "id": 523, "isConstant": false, "isLValue": false, "isPure": false, @@ -47286,32 +53504,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 507, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 504, + "id": 513, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "6784:5:0", + "referencedDeclaration": 508, + "src": "6999:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 505, + "id": 514, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6784:12:0", + "src": "6999:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -47321,21 +53539,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 506, + "id": 515, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6800:1:0", + "src": "7015:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6784:17:0", + "src": "6999:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -47348,7 +53566,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 513, + "id": 522, "isConstant": false, "isLValue": false, "isPure": false, @@ -47358,32 +53576,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 511, + "id": 520, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 508, + "id": 517, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "6805:5:0", + "referencedDeclaration": 508, + "src": "7020:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 509, + "id": 518, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "6805:12:0", + "src": "7020:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -47393,21 +53611,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 510, + "id": 519, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6820:1:0", + "src": "7035:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "6805:16:0", + "src": "7020:16:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -47416,55 +53634,55 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 512, + "id": 521, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6824:5:0", + "referencedDeclaration": 414, + "src": "7039:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "6805:24:0", + "src": "7020:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6784:45:0", + "src": "6999:45:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 521, + "id": 530, "nodeType": "WhileStatement", - "src": "6777:91:0" + "src": "6992:91:0" }, { "eventCall": { "arguments": [ { - "id": 523, + "id": 532, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6893:6:0", + "referencedDeclaration": 412, + "src": "7108:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 524, + "id": 533, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "6901:5:0", + "referencedDeclaration": 414, + "src": "7116:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -47482,18 +53700,18 @@ "typeString": "uint64" } ], - "id": 522, + "id": 531, "name": "RoundStart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 128, - "src": "6882:10:0", + "referencedDeclaration": 132, + "src": "7097:10:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", "typeString": "function (bytes32,uint64)" } }, - "id": 525, + "id": 534, "isConstant": false, "isLValue": false, "isPure": false, @@ -47501,101 +53719,101 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6882:25:0", + "src": "7097:25:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 526, + "id": 535, "nodeType": "EmitStatement", - "src": "6877:30:0" + "src": "7092:30:0" } ] }, "documentation": { - "id": 401, + "id": 410, "nodeType": "StructuredDocumentation", - "src": "5742:197:0", + "src": "5957:197:0", "text": " @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n @param taskId taskId\n @param round the round to start" }, "functionSelector": "07dcfa8e", - "id": 528, + "id": 537, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 412, + "id": 421, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6086:6:0", + "referencedDeclaration": 412, + "src": "6301:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 413, + "id": 422, "kind": "modifierInvocation", "modifierName": { - "id": 411, + "id": 420, "name": "taskExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 206, - "src": "6075:10:0" + "referencedDeclaration": 210, + "src": "6290:10:0" }, "nodeType": "ModifierInvocation", - "src": "6075:18:0" + "src": "6290:18:0" }, { "arguments": [ { - "id": 415, + "id": 424, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 403, - "src": "6104:6:0", + "referencedDeclaration": 412, + "src": "6319:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 416, + "id": 425, "kind": "modifierInvocation", "modifierName": { - "id": 414, + "id": 423, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "6094:9:0" + "referencedDeclaration": 282, + "src": "6309:9:0" }, "nodeType": "ModifierInvocation", - "src": "6094:17:0" + "src": "6309:17:0" } ], "name": "startRound", - "nameLocation": "5953:10:0", + "nameLocation": "6168:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 410, + "id": 419, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 403, + "id": 412, "mutability": "mutable", "name": "taskId", - "nameLocation": "5981:6:0", + "nameLocation": "6196:6:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "5973:14:0", + "scope": 537, + "src": "6188:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -47603,10 +53821,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 402, + "id": 411, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5973:7:0", + "src": "6188:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -47616,13 +53834,13 @@ }, { "constant": false, - "id": 405, + "id": 414, "mutability": "mutable", "name": "round", - "nameLocation": "6004:5:0", + "nameLocation": "6219:5:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "5997:12:0", + "scope": 537, + "src": "6212:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -47630,10 +53848,10 @@ "typeString": "uint64" }, "typeName": { - "id": 404, + "id": 413, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "5997:6:0", + "src": "6212:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -47643,13 +53861,13 @@ }, { "constant": false, - "id": 407, + "id": 416, "mutability": "mutable", "name": "maxSample", - "nameLocation": "6026:9:0", + "nameLocation": "6241:9:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "6019:16:0", + "scope": 537, + "src": "6234:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -47657,10 +53875,10 @@ "typeString": "uint32" }, "typeName": { - "id": 406, + "id": 415, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "6019:6:0", + "src": "6234:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -47670,13 +53888,13 @@ }, { "constant": false, - "id": 409, + "id": 418, "mutability": "mutable", "name": "minSample", - "nameLocation": "6052:9:0", + "nameLocation": "6267:9:0", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "6045:16:0", + "scope": 537, + "src": "6260:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -47684,10 +53902,10 @@ "typeString": "uint32" }, "typeName": { - "id": 408, + "id": 417, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "6045:6:0", + "src": "6260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -47696,97 +53914,97 @@ "visibility": "internal" } ], - "src": "5963:104:0" + "src": "6178:104:0" }, "returnParameters": { - "id": 417, + "id": 426, "nodeType": "ParameterList", "parameters": [], - "src": "6112:0:0" + "src": "6327:0:0" }, - "scope": 1663, - "src": "5944:970:0", + "scope": 1927, + "src": "6159:970:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 620, + "id": 629, "nodeType": "Block", - "src": "7375:583:0", + "src": "7590:583:0", "statements": [ { "assignments": [ - 553 + 562 ], "declarations": [ { "constant": false, - "id": 553, + "id": 562, "mutability": "mutable", "name": "rounds", - "nameLocation": "7405:6:0", + "nameLocation": "7620:6:0", "nodeType": "VariableDeclaration", - "scope": 620, - "src": "7385:26:0", + "scope": 629, + "src": "7600:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" }, "typeName": { "baseType": { - "id": 551, + "id": 560, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 550, + "id": 559, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "7385:9:0" + "referencedDeclaration": 85, + "src": "7600:9:0" }, - "referencedDeclaration": 83, - "src": "7385:9:0", + "referencedDeclaration": 85, + "src": "7600:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, - "id": 552, + "id": 561, "nodeType": "ArrayTypeName", - "src": "7385:11:0", + "src": "7600:11:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound[]" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound[]" } }, "visibility": "internal" } ], - "id": 557, + "id": 566, "initialValue": { "baseExpression": { - "id": 554, + "id": 563, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "7414:10:0", + "src": "7629:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 556, + "id": 565, "indexExpression": { - "id": 555, + "id": 564, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 531, - "src": "7425:6:0", + "referencedDeclaration": 540, + "src": "7640:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -47797,101 +54015,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7414:18:0", + "src": "7629:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7385:47:0" + "src": "7600:47:0" }, { "assignments": [ - 560 + 569 ], "declarations": [ { "constant": false, - "id": 560, + "id": 569, "mutability": "mutable", "name": "thisRound", - "nameLocation": "7460:9:0", + "nameLocation": "7675:9:0", "nodeType": "VariableDeclaration", - "scope": 620, - "src": "7442:27:0", + "scope": 629, + "src": "7657:27:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 559, + "id": 568, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 558, + "id": 567, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "7442:9:0" + "referencedDeclaration": 85, + "src": "7657:9:0" }, - "referencedDeclaration": 83, - "src": "7442:9:0", + "referencedDeclaration": 85, + "src": "7657:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 567, + "id": 576, "initialValue": { "baseExpression": { - "id": 561, + "id": 570, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "7472:6:0", + "referencedDeclaration": 562, + "src": "7687:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 566, + "id": 575, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 565, + "id": 574, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 562, + "id": 571, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "7479:6:0", + "referencedDeclaration": 562, + "src": "7694:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 563, + "id": 572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7479:13:0", + "src": "7694:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -47901,21 +54119,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 564, + "id": 573, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7495:1:0", + "src": "7710:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7479:17:0", + "src": "7694:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -47926,14 +54144,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7472:25:0", + "src": "7687:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7442:55:0" + "src": "7657:55:0" }, { "expression": { @@ -47943,7 +54161,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 580, + "id": 589, "isConstant": false, "isLValue": false, "isPure": false, @@ -47953,7 +54171,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 574, + "id": 583, "isConstant": false, "isLValue": false, "isPure": false, @@ -47963,32 +54181,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 572, + "id": 581, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 569, + "id": 578, "name": "rounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "7528:6:0", + "referencedDeclaration": 562, + "src": "7743:6:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage pointer" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" } }, - "id": 570, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7528:13:0", + "src": "7743:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -47998,21 +54216,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 571, + "id": 580, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7544:1:0", + "src": "7759:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7528:17:0", + "src": "7743:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -48021,18 +54239,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 573, + "id": 582, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 533, - "src": "7549:5:0", + "referencedDeclaration": 542, + "src": "7764:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "7528:26:0", + "src": "7743:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -48043,56 +54261,56 @@ "rightExpression": { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 579, + "id": 588, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 575, + "id": 584, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7574:9:0", + "referencedDeclaration": 569, + "src": "7789:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 576, + "id": 585, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "7574:16:0", + "referencedDeclaration": 76, + "src": "7789:16:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 577, + "id": 586, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "7594:11:0", + "src": "7809:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 578, + "id": 587, "isConstant": false, "isLValue": false, "isPure": true, @@ -48100,19 +54318,19 @@ "memberName": "Started", "nodeType": "MemberAccess", "referencedDeclaration": 9, - "src": "7594:19:0", + "src": "7809:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "7574:39:0", + "src": "7789:39:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7528:85:0", + "src": "7743:85:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -48120,14 +54338,14 @@ }, { "hexValue": "6a6f696e2070686173652068617320706173736564", - "id": 581, + "id": 590, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7627:23:0", + "src": "7842:23:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2", "typeString": "literal_string \"join phase has passed\"" @@ -48146,7 +54364,7 @@ "typeString": "literal_string \"join phase has passed\"" } ], - "id": 568, + "id": 577, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -48154,13 +54372,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7507:7:0", + "src": "7722:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 582, + "id": 591, "isConstant": false, "isLValue": false, "isPure": false, @@ -48168,16 +54386,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7507:153:0", + "src": "7722:153:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 583, + "id": 592, "nodeType": "ExpressionStatement", - "src": "7507:153:0" + "src": "7722:153:0" }, { "expression": { @@ -48187,7 +54405,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 593, + "id": 602, "isConstant": false, "isLValue": false, "isPure": false, @@ -48197,53 +54415,53 @@ "expression": { "baseExpression": { "expression": { - "id": 585, + "id": 594, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7691:9:0", + "referencedDeclaration": 569, + "src": "7906:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 586, + "id": 595, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "7691:20:0", + "referencedDeclaration": 81, + "src": "7906:20:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 589, + "id": 598, "indexExpression": { "expression": { - "id": 587, + "id": 596, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7712:3:0", + "src": "7927:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 588, + "id": 597, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7712:10:0", + "src": "7927:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -48254,34 +54472,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7691:32:0", + "src": "7906:32:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 590, + "id": 599, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "pk1", "nodeType": "MemberAccess", - "referencedDeclaration": 62, - "src": "7691:36:0", + "referencedDeclaration": 64, + "src": "7906:36:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 591, + "id": 600, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7691:43:0", + "src": "7906:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -48291,21 +54509,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 592, + "id": 601, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7738:1:0", + "src": "7953:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7691:48:0", + "src": "7906:48:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -48313,14 +54531,14 @@ }, { "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469706c652074696d6573", - "id": 594, + "id": 603, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7753:43:0", + "src": "7968:43:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172", "typeString": "literal_string \"Cannot join the same round multiple times\"" @@ -48339,7 +54557,7 @@ "typeString": "literal_string \"Cannot join the same round multiple times\"" } ], - "id": 584, + "id": 593, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -48347,13 +54565,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7670:7:0", + "src": "7885:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 595, + "id": 604, "isConstant": false, "isLValue": false, "isPure": false, @@ -48361,20 +54579,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7670:136:0", + "src": "7885:136:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 596, + "id": 605, "nodeType": "ExpressionStatement", - "src": "7670:136:0" + "src": "7885:136:0" }, { "expression": { - "id": 607, + "id": 616, "isConstant": false, "isLValue": false, "isPure": false, @@ -48382,53 +54600,53 @@ "leftHandSide": { "baseExpression": { "expression": { - "id": 597, + "id": 606, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7816:9:0", + "referencedDeclaration": 569, + "src": "8031:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 601, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "7816:20:0", + "referencedDeclaration": 81, + "src": "8031:20:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 602, + "id": 611, "indexExpression": { "expression": { - "id": 599, + "id": 608, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7837:3:0", + "src": "8052:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 600, + "id": 609, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7837:10:0", + "src": "8052:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -48439,10 +54657,10 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7816:32:0", + "src": "8031:32:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, "nodeType": "Assignment", @@ -48450,24 +54668,24 @@ "rightHandSide": { "arguments": [ { - "id": 604, + "id": 613, "name": "pk1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 535, - "src": "7867:3:0", + "referencedDeclaration": 544, + "src": "8082:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, { - "id": 605, + "id": 614, "name": "pk2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 537, - "src": "7877:3:0", + "referencedDeclaration": 546, + "src": "8092:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -48485,18 +54703,18 @@ "typeString": "bytes calldata" } ], - "id": 603, + "id": 612, "name": "Candidate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "7851:9:0", + "referencedDeclaration": 67, + "src": "8066:9:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Candidate_$65_storage_ptr_$", - "typeString": "type(struct DeltaContract.Candidate storage pointer)" + "typeIdentifier": "t_type$_t_struct$_Candidate_$67_storage_ptr_$", + "typeString": "type(struct HFLContract.Candidate storage pointer)" } }, - "id": 606, + "id": 615, "isConstant": false, "isLValue": false, "isPure": false, @@ -48507,47 +54725,47 @@ "pk2" ], "nodeType": "FunctionCall", - "src": "7851:31:0", + "src": "8066:31:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate memory" + "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", + "typeString": "struct HFLContract.Candidate memory" } }, - "src": "7816:66:0", + "src": "8031:66:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 608, + "id": 617, "nodeType": "ExpressionStatement", - "src": "7816:66:0" + "src": "8031:66:0" }, { "expression": { "arguments": [ { "expression": { - "id": 614, + "id": 623, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7919:3:0", + "src": "8134:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 615, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7919:10:0", + "src": "8134:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -48563,45 +54781,45 @@ ], "expression": { "expression": { - "id": 609, + "id": 618, "name": "thisRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "7892:9:0", + "referencedDeclaration": 569, + "src": "8107:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 612, + "id": 621, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "joinedAddrs", "nodeType": "MemberAccess", - "referencedDeclaration": 82, - "src": "7892:21:0", + "referencedDeclaration": 84, + "src": "8107:21:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 613, + "id": 622, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "7892:26:0", + "src": "8107:26:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", "typeString": "function (address[] storage pointer,address)" } }, - "id": 616, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -48609,135 +54827,848 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7892:38:0", + "src": "8107:38:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 617, + "id": 626, "nodeType": "ExpressionStatement", - "src": "7892:38:0" + "src": "8107:38:0" }, { "expression": { "hexValue": "74727565", - "id": 618, + "id": 627, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7947:4:0", + "src": "8162:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 548, - "id": 619, + "functionReturnParameters": 557, + "id": 628, "nodeType": "Return", - "src": "7940:11:0" + "src": "8155:11:0" } ] }, "documentation": { - "id": 529, + "id": 538, "nodeType": "StructuredDocumentation", - "src": "6920:255:0", + "src": "7135:255:0", "text": " @dev called by client, join for that round of computation\n @param taskId taskId\n @param round the round to join\n @param pk1 used for secure communication channel establishment\n @param pk2 used for mask generation" }, "functionSelector": "91d48f52", - "id": 621, + "id": 630, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 540, + "id": 549, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 531, - "src": "7325:6:0", + "referencedDeclaration": 540, + "src": "7540:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 541, + "id": 550, "kind": "modifierInvocation", "modifierName": { - "id": 539, + "id": 548, "name": "taskExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 206, - "src": "7314:10:0" + "referencedDeclaration": 210, + "src": "7529:10:0" }, "nodeType": "ModifierInvocation", - "src": "7314:18:0" + "src": "7529:18:0" }, { "arguments": [ { - "id": 543, + "id": 552, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 531, - "src": "7345:6:0", + "referencedDeclaration": 540, + "src": "7560:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 544, + "id": 553, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 533, - "src": "7353:5:0", + "referencedDeclaration": 542, + "src": "7568:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 545, + "id": 554, "kind": "modifierInvocation", "modifierName": { - "id": 542, + "id": 551, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "7333:11:0" + "referencedDeclaration": 240, + "src": "7548:11:0" }, "nodeType": "ModifierInvocation", - "src": "7333:26:0" + "src": "7548:26:0" } ], "name": "joinRound", - "nameLocation": "7189:9:0", + "nameLocation": "7404:9:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 538, + "id": 547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 540, + "mutability": "mutable", + "name": "taskId", + "nameLocation": "7431:6:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7423:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 539, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7423:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 542, + "mutability": "mutable", + "name": "round", + "nameLocation": "7454:5:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7447:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 541, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7447:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 544, + "mutability": "mutable", + "name": "pk1", + "nameLocation": "7484:3:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7469:18:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 543, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7469:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 546, + "mutability": "mutable", + "name": "pk2", + "nameLocation": "7512:3:0", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7497:18:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 545, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7497:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7413:108:0" + }, + "returnParameters": { + "id": 557, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 556, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 630, + "src": "7584:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 555, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7584:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7583:6:0" + }, + "scope": 1927, + "src": "7395:778:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 692, + "nodeType": "Block", + "src": "8468:301:0", + "statements": [ + { + "assignments": [ + 653 + ], + "declarations": [ + { + "constant": false, + "id": 653, + "mutability": "mutable", + "name": "candidates", + "nameLocation": "8497:10:0", + "nodeType": "VariableDeclaration", + "scope": 692, + "src": "8478:29:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate[]" + }, + "typeName": { + "baseType": { + "id": 651, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 650, + "name": "Candidate", + "nodeType": "IdentifierPath", + "referencedDeclaration": 67, + "src": "8478:9:0" + }, + "referencedDeclaration": 67, + "src": "8478:9:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" + } + }, + "id": 652, + "nodeType": "ArrayTypeName", + "src": "8478:11:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.Candidate[]" + } + }, + "visibility": "internal" + } + ], + "id": 661, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 658, + "name": "candidateAddrs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 638, + "src": "8526:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8526:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 657, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "8510:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct HFLContract.Candidate memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 655, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 654, + "name": "Candidate", + "nodeType": "IdentifierPath", + "referencedDeclaration": 67, + "src": "8514:9:0" + }, + "referencedDeclaration": 67, + "src": "8514:9:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" + } + }, + "id": 656, + "nodeType": "ArrayTypeName", + "src": "8514:11:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.Candidate[]" + } + } + }, + "id": 660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8510:38:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8478:70:0" + }, + { + "body": { + "id": 688, + "nodeType": "Block", + "src": "8610:126:0", + "statements": [ + { + "expression": { + "id": 686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 673, + "name": "candidates", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 653, + "src": "8624:10:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate memory[] memory" + } + }, + "id": 675, + "indexExpression": { + "id": 674, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8635:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8624:13:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", + "typeString": "struct HFLContract.Candidate memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 676, + "name": "taskRounds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25, + "src": "8640:10:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" + } + }, + "id": 678, + "indexExpression": { + "id": 677, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 633, + "src": "8651:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8640:18:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" + } + }, + "id": 680, + "indexExpression": { + "id": 679, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 635, + "src": "8659:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8640:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" + } + }, + "id": 681, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "candidates", + "nodeType": "MemberAccess", + "referencedDeclaration": 81, + "src": "8640:36:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" + } + }, + "id": 685, + "indexExpression": { + "baseExpression": { + "id": 682, + "name": "candidateAddrs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 638, + "src": "8694:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 684, + "indexExpression": { + "id": 683, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8709:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8694:17:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8640:85:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" + } + }, + "src": "8624:101:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", + "typeString": "struct HFLContract.Candidate memory" + } + }, + "id": 687, + "nodeType": "ExpressionStatement", + "src": "8624:101:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 666, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8578:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 667, + "name": "candidateAddrs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 638, + "src": "8582:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8582:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8578:25:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 689, + "initializationExpression": { + "assignments": [ + 663 + ], + "declarations": [ + { + "constant": false, + "id": 663, + "mutability": "mutable", + "name": "i", + "nameLocation": "8571:1:0", + "nodeType": "VariableDeclaration", + "scope": 689, + "src": "8563:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 662, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8563:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 665, + "initialValue": { + "hexValue": "30", + "id": 664, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8575:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8563:13:0" + }, + "loopExpression": { + "expression": { + "id": 671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8605:3:0", + "subExpression": { + "id": 670, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 663, + "src": "8605:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 672, + "nodeType": "ExpressionStatement", + "src": "8605:3:0" + }, + "nodeType": "ForStatement", + "src": "8558:178:0" + }, + { + "expression": { + "id": 690, + "name": "candidates", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 653, + "src": "8752:10:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate memory[] memory" + } + }, + "functionReturnParameters": 648, + "id": 691, + "nodeType": "Return", + "src": "8745:17:0" + } + ] + }, + "documentation": { + "id": 631, + "nodeType": "StructuredDocumentation", + "src": "8179:92:0", + "text": " @dev called by anyone, get Client Pks\n @return candidate (pk1,pk2)" + }, + "functionSelector": "e26e8871", + "id": 693, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 641, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 633, + "src": "8424:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 642, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 635, + "src": "8432:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "id": 643, + "kind": "modifierInvocation", + "modifierName": { + "id": 640, + "name": "roundExists", + "nodeType": "IdentifierPath", + "referencedDeclaration": 240, + "src": "8412:11:0" + }, + "nodeType": "ModifierInvocation", + "src": "8412:26:0" + } + ], + "name": "getClientPublickeys", + "nameLocation": "8285:19:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 639, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 531, + "id": 633, "mutability": "mutable", "name": "taskId", - "nameLocation": "7216:6:0", + "nameLocation": "8322:6:0", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7208:14:0", + "scope": 693, + "src": "8314:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -48745,10 +55676,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 530, + "id": 632, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "7208:7:0", + "src": "8314:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -48758,13 +55689,13 @@ }, { "constant": false, - "id": 533, + "id": 635, "mutability": "mutable", "name": "round", - "nameLocation": "7239:5:0", + "nameLocation": "8345:5:0", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7232:12:0", + "scope": 693, + "src": "8338:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -48772,10 +55703,10 @@ "typeString": "uint64" }, "typeName": { - "id": 532, + "id": 634, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "7232:6:0", + "src": "8338:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -48785,501 +55716,169 @@ }, { "constant": false, - "id": 535, + "id": 638, "mutability": "mutable", - "name": "pk1", - "nameLocation": "7269:3:0", + "name": "candidateAddrs", + "nameLocation": "8379:14:0", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7254:18:0", + "scope": 693, + "src": "8360:33:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 534, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7254:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 537, - "mutability": "mutable", - "name": "pk2", - "nameLocation": "7297:3:0", - "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7282:18:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 536, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7282:5:0", + "baseType": { + "id": 636, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8360:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 637, + "nodeType": "ArrayTypeName", + "src": "8360:9:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" } ], - "src": "7198:108:0" + "src": "8304:95:0" }, "returnParameters": { - "id": 548, + "id": 648, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 547, + "id": 647, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 621, - "src": "7369:4:0", + "scope": 693, + "src": "8448:18:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.Candidate[]" }, "typeName": { - "id": 546, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7369:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7368:6:0" - }, - "scope": 1663, - "src": "7180:778:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 649, - "nodeType": "Block", - "src": "8285:80:0", - "statements": [ - { - "expression": { - "id": 647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 638, - "name": "candidate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 636, - "src": "8295:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 639, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "8307:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 641, - "indexExpression": { - "id": 640, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 624, - "src": "8318:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8307:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" - } - }, - "id": 643, - "indexExpression": { - "id": 642, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "8326:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8307:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" - } - }, + "baseType": { + "id": 645, + "nodeType": "UserDefinedTypeName", + "pathNode": { "id": 644, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "8307:36:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" - } - }, - "id": 646, - "indexExpression": { - "id": 645, - "name": "candidateAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 628, - "src": "8344:13:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "name": "Candidate", + "nodeType": "IdentifierPath", + "referencedDeclaration": 67, + "src": "8448:9:0" }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8307:51:0", + "referencedDeclaration": 67, + "src": "8448:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", + "typeString": "struct HFLContract.Candidate" } }, - "src": "8295:63:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate memory" - } - }, - "id": 648, - "nodeType": "ExpressionStatement", - "src": "8295:63:0" - } - ] - }, - "documentation": { - "id": 622, - "nodeType": "StructuredDocumentation", - "src": "7964:92:0", - "text": " @dev called by anyone, get Client Pks\n @return candidate (pk1,pk2)" - }, - "functionSelector": "da0fe898", - "id": 650, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 631, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 624, - "src": "8221:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 632, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "8229:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 633, - "kind": "modifierInvocation", - "modifierName": { - "id": 630, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "8209:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "8209:26:0" - } - ], - "name": "getClientPublickeys", - "nameLocation": "8070:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 629, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 624, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "8107:6:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8099:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 623, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8099:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 626, - "mutability": "mutable", - "name": "round", - "nameLocation": "8130:5:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8123:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 625, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "8123:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 628, - "mutability": "mutable", - "name": "candidateAddr", - "nameLocation": "8153:13:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8145:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 627, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8145:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "8089:83:0" - }, - "returnParameters": { - "id": 637, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 636, - "mutability": "mutable", - "name": "candidate", - "nameLocation": "8270:9:0", - "nodeType": "VariableDeclaration", - "scope": 650, - "src": "8253:26:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_memory_ptr", - "typeString": "struct DeltaContract.Candidate" - }, - "typeName": { - "id": 635, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 634, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 65, - "src": "8253:9:0" - }, - "referencedDeclaration": 65, - "src": "8253:9:0", + "id": 646, + "nodeType": "ArrayTypeName", + "src": "8448:11:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage_ptr", - "typeString": "struct DeltaContract.Candidate" + "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.Candidate[]" } }, "visibility": "internal" } ], - "src": "8252:28:0" + "src": "8447:20:0" }, - "scope": 1663, - "src": "8061:304:0", + "scope": 1927, + "src": "8276:493:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 693, + "id": 736, "nodeType": "Block", - "src": "8714:331:0", + "src": "9118:331:0", "statements": [ { "assignments": [ - 667 + 710 ], "declarations": [ { "constant": false, - "id": 667, + "id": 710, "mutability": "mutable", "name": "temp", - "nameLocation": "8742:4:0", + "nameLocation": "9146:4:0", "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8724:22:0", + "scope": 736, + "src": "9128:22:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 666, + "id": 709, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 665, + "id": 708, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "8724:9:0" + "referencedDeclaration": 85, + "src": "9128:9:0" }, - "referencedDeclaration": 83, - "src": "8724:9:0", + "referencedDeclaration": 85, + "src": "9128:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 673, + "id": 716, "initialValue": { "baseExpression": { "baseExpression": { - "id": 668, + "id": 711, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "8749:10:0", + "src": "9153:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 670, + "id": 713, "indexExpression": { - "id": 669, + "id": 712, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8760:6:0", + "referencedDeclaration": 696, + "src": "9164:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -49290,20 +55889,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8749:18:0", + "src": "9153:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 672, + "id": 715, "indexExpression": { - "id": 671, + "id": 714, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "8768:5:0", + "referencedDeclaration": 698, + "src": "9172:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -49314,32 +55913,32 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8749:25:0", + "src": "9153:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "8724:50:0" + "src": "9128:50:0" }, { "expression": { - "id": 691, + "id": 734, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 674, + "id": 717, "name": "taskround", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8784:9:0", + "referencedDeclaration": 706, + "src": "9188:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct memory" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" } }, "nodeType": "Assignment", @@ -49348,26 +55947,26 @@ "arguments": [ { "expression": { - "id": 676, + "id": 719, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8847:4:0", + "referencedDeclaration": 710, + "src": "9251:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 677, + "id": 720, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currentRound", "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "8847:17:0", + "referencedDeclaration": 69, + "src": "9251:17:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -49375,26 +55974,26 @@ }, { "expression": { - "id": 678, + "id": 721, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8889:4:0", + "referencedDeclaration": 710, + "src": "9293:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 679, + "id": 722, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "maxSample", "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "8889:14:0", + "referencedDeclaration": 71, + "src": "9293:14:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -49402,26 +56001,26 @@ }, { "expression": { - "id": 680, + "id": 723, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8928:4:0", + "referencedDeclaration": 710, + "src": "9332:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 681, + "id": 724, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "minSample", "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "8928:14:0", + "referencedDeclaration": 73, + "src": "9332:14:0", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -49431,29 +56030,29 @@ "arguments": [ { "expression": { - "id": 685, + "id": 728, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "8972:4:0", + "referencedDeclaration": 710, + "src": "9376:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 686, + "id": 729, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "8972:11:0", + "referencedDeclaration": 76, + "src": "9376:11:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } } ], @@ -49461,45 +56060,45 @@ "argumentTypes": [ { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } ], "components": [ { - "id": 683, + "id": 726, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8965:5:0", + "src": "9369:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { - "id": 682, + "id": 725, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "8965:5:0", + "src": "9369:5:0", "typeDescriptions": {} } } ], - "id": 684, + "id": 727, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8964:7:0", + "src": "9368:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" } }, - "id": 687, + "id": 730, "isConstant": false, "isLValue": false, "isPure": false, @@ -49507,7 +56106,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8964:20:0", + "src": "9368:20:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -49516,26 +56115,26 @@ }, { "expression": { - "id": 688, + "id": 731, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "9011:4:0", + "referencedDeclaration": 710, + "src": "9415:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 689, + "id": 732, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "joinedAddrs", "nodeType": "MemberAccess", - "referencedDeclaration": 82, - "src": "9011:16:0", + "referencedDeclaration": 84, + "src": "9415:16:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" @@ -49565,18 +56164,18 @@ "typeString": "address[] storage ref" } ], - "id": 675, + "id": 718, "name": "ExtCallTaskRoundStruct", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 95, - "src": "8796:22:0", + "referencedDeclaration": 97, + "src": "9200:22:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_ExtCallTaskRoundStruct_$95_storage_ptr_$", - "typeString": "type(struct DeltaContract.ExtCallTaskRoundStruct storage pointer)" + "typeIdentifier": "t_type$_t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr_$", + "typeString": "type(struct HFLContract.ExtCallTaskRoundStruct storage pointer)" } }, - "id": 690, + "id": 733, "isConstant": false, "isLValue": false, "isPure": false, @@ -49590,92 +56189,92 @@ "joinedAddrs" ], "nodeType": "FunctionCall", - "src": "8796:242:0", + "src": "9200:242:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct memory" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" } }, - "src": "8784:254:0", + "src": "9188:254:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct memory" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" } }, - "id": 692, + "id": 735, "nodeType": "ExpressionStatement", - "src": "8784:254:0" + "src": "9188:254:0" } ] }, "documentation": { - "id": 651, + "id": 694, "nodeType": "StructuredDocumentation", - "src": "8371:161:0", + "src": "8775:161:0", "text": " @dev getting task round infos\n @param taskId taskId\n @param round the round to fetch\n @return taskround the task round infos" }, "functionSelector": "4893b362", - "id": 694, + "id": 737, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 658, + "id": 701, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8637:6:0", + "referencedDeclaration": 696, + "src": "9041:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 659, + "id": 702, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "8645:5:0", + "referencedDeclaration": 698, + "src": "9049:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 660, + "id": 703, "kind": "modifierInvocation", "modifierName": { - "id": 657, + "id": 700, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "8625:11:0" + "referencedDeclaration": 240, + "src": "9029:11:0" }, "nodeType": "ModifierInvocation", - "src": "8625:26:0" + "src": "9029:26:0" } ], "name": "getTaskRound", - "nameLocation": "8546:12:0", + "nameLocation": "8950:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 656, + "id": 699, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 653, + "id": 696, "mutability": "mutable", "name": "taskId", - "nameLocation": "8567:6:0", + "nameLocation": "8971:6:0", "nodeType": "VariableDeclaration", - "scope": 694, - "src": "8559:14:0", + "scope": 737, + "src": "8963:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -49683,10 +56282,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 652, + "id": 695, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8559:7:0", + "src": "8963:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -49696,13 +56295,13 @@ }, { "constant": false, - "id": 655, + "id": 698, "mutability": "mutable", "name": "round", - "nameLocation": "8582:5:0", + "nameLocation": "8986:5:0", "nodeType": "VariableDeclaration", - "scope": 694, - "src": "8575:12:0", + "scope": 737, + "src": "8979:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -49710,10 +56309,10 @@ "typeString": "uint64" }, "typeName": { - "id": 654, + "id": 697, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "8575:6:0", + "src": "8979:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -49722,60 +56321,60 @@ "visibility": "internal" } ], - "src": "8558:30:0" + "src": "8962:30:0" }, "returnParameters": { - "id": 664, + "id": 707, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 663, + "id": 706, "mutability": "mutable", "name": "taskround", - "nameLocation": "8699:9:0", + "nameLocation": "9103:9:0", "nodeType": "VariableDeclaration", - "scope": 694, - "src": "8669:39:0", + "scope": 737, + "src": "9073:39:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_memory_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct" }, "typeName": { - "id": 662, + "id": 705, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 661, + "id": 704, "name": "ExtCallTaskRoundStruct", "nodeType": "IdentifierPath", - "referencedDeclaration": 95, - "src": "8669:22:0" + "referencedDeclaration": 97, + "src": "9073:22:0" }, - "referencedDeclaration": 95, - "src": "8669:22:0", + "referencedDeclaration": 97, + "src": "9073:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$95_storage_ptr", - "typeString": "struct DeltaContract.ExtCallTaskRoundStruct" + "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr", + "typeString": "struct HFLContract.ExtCallTaskRoundStruct" } }, "visibility": "internal" } ], - "src": "8668:41:0" + "src": "9072:41:0" }, - "scope": 1663, - "src": "8537:508:0", + "scope": 1927, + "src": "8941:508:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 769, + "id": 812, "nodeType": "Block", - "src": "9424:431:0", + "src": "9828:431:0", "statements": [ { "expression": { @@ -49785,32 +56384,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 716, + "id": 759, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 713, + "id": 756, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9442:5:0", + "referencedDeclaration": 745, + "src": "9846:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 714, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "9442:12:0", + "src": "9846:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -49820,21 +56419,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 715, + "id": 758, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9457:1:0", + "src": "9861:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "9442:16:0", + "src": "9846:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -49842,14 +56441,14 @@ }, { "hexValue": "4d7573742070726f7669646520616464726573736573", - "id": 717, + "id": 760, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9460:24:0", + "src": "9864:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171", "typeString": "literal_string \"Must provide addresses\"" @@ -49868,7 +56467,7 @@ "typeString": "literal_string \"Must provide addresses\"" } ], - "id": 712, + "id": 755, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -49876,13 +56475,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "9434:7:0", + "src": "9838:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 718, + "id": 761, "isConstant": false, "isLValue": false, "isPure": false, @@ -49890,80 +56489,80 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9434:51:0", + "src": "9838:51:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 719, + "id": 762, "nodeType": "ExpressionStatement", - "src": "9434:51:0" + "src": "9838:51:0" }, { "assignments": [ - 722 + 765 ], "declarations": [ { "constant": false, - "id": 722, + "id": 765, "mutability": "mutable", "name": "curRound", - "nameLocation": "9513:8:0", + "nameLocation": "9917:8:0", "nodeType": "VariableDeclaration", - "scope": 769, - "src": "9495:26:0", + "scope": 812, + "src": "9899:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 721, + "id": 764, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 720, + "id": 763, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "9495:9:0" + "referencedDeclaration": 85, + "src": "9899:9:0" }, - "referencedDeclaration": 83, - "src": "9495:9:0", + "referencedDeclaration": 85, + "src": "9899:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 728, + "id": 771, "initialValue": { "baseExpression": { "baseExpression": { - "id": 723, + "id": 766, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "9524:10:0", + "src": "9928:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 725, + "id": 768, "indexExpression": { - "id": 724, + "id": 767, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9535:6:0", + "referencedDeclaration": 740, + "src": "9939:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -49974,20 +56573,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9524:18:0", + "src": "9928:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 727, + "id": 770, "indexExpression": { - "id": 726, + "id": 769, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9543:5:0", + "referencedDeclaration": 742, + "src": "9947:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -49998,20 +56597,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9524:25:0", + "src": "9928:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "9495:54:0" + "src": "9899:54:0" }, { "body": { - "id": 754, + "id": 797, "nodeType": "Block", - "src": "9602:148:0", + "src": "10006:148:0", "statements": [ { "expression": { @@ -50021,7 +56620,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 750, + "id": 793, "isConstant": false, "isLValue": false, "isPure": false, @@ -50031,53 +56630,53 @@ "expression": { "baseExpression": { "expression": { - "id": 741, + "id": 784, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 722, - "src": "9641:8:0", + "referencedDeclaration": 765, + "src": "10045:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 742, + "id": 785, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "9641:19:0", + "referencedDeclaration": 81, + "src": "10045:19:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 746, + "id": 789, "indexExpression": { "baseExpression": { - "id": 743, + "id": 786, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9661:5:0", + "referencedDeclaration": 745, + "src": "10065:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 745, + "id": 788, "indexExpression": { - "id": 744, + "id": 787, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "9667:1:0", + "referencedDeclaration": 773, + "src": "10071:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -50088,7 +56687,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9661:8:0", + "src": "10065:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -50099,34 +56698,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9641:29:0", + "src": "10045:29:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 747, + "id": 790, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "pk1", "nodeType": "MemberAccess", - "referencedDeclaration": 62, - "src": "9641:33:0", + "referencedDeclaration": 64, + "src": "10045:33:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 748, + "id": 791, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "9641:40:0", + "src": "10045:40:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -50136,21 +56735,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 749, + "id": 792, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9684:1:0", + "src": "10088:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "9641:44:0", + "src": "10045:44:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -50158,14 +56757,14 @@ }, { "hexValue": "43616e646964617465206d757374206578697374", - "id": 751, + "id": 794, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9703:22:0", + "src": "10107:22:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", "typeString": "literal_string \"Candidate must exist\"" @@ -50184,7 +56783,7 @@ "typeString": "literal_string \"Candidate must exist\"" } ], - "id": 740, + "id": 783, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -50192,13 +56791,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "9616:7:0", + "src": "10020:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 752, + "id": 795, "isConstant": false, "isLValue": false, "isPure": false, @@ -50206,16 +56805,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9616:123:0", + "src": "10020:123:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 753, + "id": 796, "nodeType": "ExpressionStatement", - "src": "9616:123:0" + "src": "10020:123:0" } ] }, @@ -50224,18 +56823,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 736, + "id": 779, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 733, + "id": 776, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "9579:1:0", + "referencedDeclaration": 773, + "src": "9983:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -50245,51 +56844,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 734, + "id": 777, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9583:5:0", + "referencedDeclaration": 745, + "src": "9987:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 735, + "id": 778, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "9583:12:0", + "src": "9987:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9579:16:0", + "src": "9983:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 755, + "id": 798, "initializationExpression": { "assignments": [ - 730 + 773 ], "declarations": [ { "constant": false, - "id": 730, + "id": 773, "mutability": "mutable", "name": "i", - "nameLocation": "9572:1:0", + "nameLocation": "9976:1:0", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "9564:9:0", + "scope": 798, + "src": "9968:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -50297,10 +56896,10 @@ "typeString": "uint256" }, "typeName": { - "id": 729, + "id": 772, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9564:7:0", + "src": "9968:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -50309,17 +56908,17 @@ "visibility": "internal" } ], - "id": 732, + "id": 775, "initialValue": { "hexValue": "30", - "id": 731, + "id": 774, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9576:1:0", + "src": "9980:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -50327,11 +56926,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "9564:13:0" + "src": "9968:13:0" }, "loopExpression": { "expression": { - "id": 738, + "id": 781, "isConstant": false, "isLValue": false, "isPure": false, @@ -50339,14 +56938,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "9597:3:0", + "src": "10001:3:0", "subExpression": { - "id": 737, + "id": 780, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "9597:1:0", + "referencedDeclaration": 773, + "src": "10001:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -50357,63 +56956,63 @@ "typeString": "uint256" } }, - "id": 739, + "id": 782, "nodeType": "ExpressionStatement", - "src": "9597:3:0" + "src": "10001:3:0" }, "nodeType": "ForStatement", - "src": "9559:191:0" + "src": "9963:191:0" }, { "expression": { - "id": 761, + "id": 804, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 756, + "id": 799, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 722, - "src": "9759:8:0", + "referencedDeclaration": 765, + "src": "10163:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 758, + "id": 801, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "9759:15:0", + "referencedDeclaration": 76, + "src": "10163:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 759, + "id": 802, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "9777:11:0", + "src": "10181:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 760, + "id": 803, "isConstant": false, "isLValue": false, "isPure": true, @@ -50421,56 +57020,56 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "9777:19:0", + "src": "10181:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "9759:37:0", + "src": "10163:37:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 762, + "id": 805, "nodeType": "ExpressionStatement", - "src": "9759:37:0" + "src": "10163:37:0" }, { "eventCall": { "arguments": [ { - "id": 764, + "id": 807, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9827:6:0", + "referencedDeclaration": 740, + "src": "10231:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 765, + "id": 808, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9835:5:0", + "referencedDeclaration": 742, + "src": "10239:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 766, + "id": 809, "name": "addrs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "9842:5:0", + "referencedDeclaration": 745, + "src": "10246:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" @@ -50492,18 +57091,18 @@ "typeString": "address[] calldata" } ], - "id": 763, + "id": 806, "name": "PartnerSelected", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "9811:15:0", + "referencedDeclaration": 147, + "src": "10215:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address[] memory)" } }, - "id": 767, + "id": 810, "isConstant": false, "isLValue": false, "isPure": false, @@ -50511,113 +57110,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9811:37:0", + "src": "10215:37:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 811, "nodeType": "EmitStatement", - "src": "9806:42:0" + "src": "10210:42:0" } ] }, "documentation": { - "id": 695, + "id": 738, "nodeType": "StructuredDocumentation", - "src": "9051:204:0", + "src": "9455:204:0", "text": " @dev called by task developer, randomly choose candidates to be computation nodes\n @dev clients now should start secret sharing phase\n @param addrs selected client addresses" }, "functionSelector": "41e865cb", - "id": 770, + "id": 813, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 705, + "id": 748, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9389:6:0", + "referencedDeclaration": 740, + "src": "9793:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 706, + "id": 749, "kind": "modifierInvocation", "modifierName": { - "id": 704, + "id": 747, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "9379:9:0" + "referencedDeclaration": 282, + "src": "9783:9:0" }, "nodeType": "ModifierInvocation", - "src": "9379:17:0" + "src": "9783:17:0" }, { "arguments": [ { - "id": 708, + "id": 751, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "9409:6:0", + "referencedDeclaration": 740, + "src": "9813:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 709, + "id": 752, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9417:5:0", + "referencedDeclaration": 742, + "src": "9821:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 710, + "id": 753, "kind": "modifierInvocation", "modifierName": { - "id": 707, + "id": 750, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "9397:11:0" + "referencedDeclaration": 240, + "src": "9801:11:0" }, "nodeType": "ModifierInvocation", - "src": "9397:26:0" + "src": "9801:26:0" } ], "name": "selectCandidates", - "nameLocation": "9269:16:0", + "nameLocation": "9673:16:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 703, + "id": 746, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 697, + "id": 740, "mutability": "mutable", "name": "taskId", - "nameLocation": "9303:6:0", + "nameLocation": "9707:6:0", "nodeType": "VariableDeclaration", - "scope": 770, - "src": "9295:14:0", + "scope": 813, + "src": "9699:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -50625,10 +57224,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 696, + "id": 739, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "9295:7:0", + "src": "9699:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -50638,13 +57237,13 @@ }, { "constant": false, - "id": 699, + "id": 742, "mutability": "mutable", "name": "round", - "nameLocation": "9326:5:0", + "nameLocation": "9730:5:0", "nodeType": "VariableDeclaration", - "scope": 770, - "src": "9319:12:0", + "scope": 813, + "src": "9723:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -50652,10 +57251,10 @@ "typeString": "uint64" }, "typeName": { - "id": 698, + "id": 741, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "9319:6:0", + "src": "9723:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -50665,13 +57264,13 @@ }, { "constant": false, - "id": 702, + "id": 745, "mutability": "mutable", "name": "addrs", - "nameLocation": "9360:5:0", + "nameLocation": "9764:5:0", "nodeType": "VariableDeclaration", - "scope": 770, - "src": "9341:24:0", + "scope": 813, + "src": "9745:24:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -50680,19 +57279,19 @@ }, "typeName": { "baseType": { - "id": 700, + "id": 743, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9341:7:0", + "src": "9745:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 701, + "id": 744, "nodeType": "ArrayTypeName", - "src": "9341:9:0", + "src": "9745:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -50701,97 +57300,97 @@ "visibility": "internal" } ], - "src": "9285:86:0" + "src": "9689:86:0" }, "returnParameters": { - "id": 711, + "id": 754, "nodeType": "ParameterList", "parameters": [], - "src": "9424:0:0" + "src": "9828:0:0" }, - "scope": 1663, - "src": "9260:595:0", + "scope": 1927, + "src": "9664:595:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 821, + "id": 864, "nodeType": "Block", - "src": "10552:274:0", + "src": "10956:274:0", "statements": [ { "assignments": [ - 794 + 837 ], "declarations": [ { "constant": false, - "id": 794, + "id": 837, "mutability": "mutable", "name": "cmmts", - "nameLocation": "10594:5:0", + "nameLocation": "10998:5:0", "nodeType": "VariableDeclaration", - "scope": 821, - "src": "10562:37:0", + "scope": 864, + "src": "10966:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 792, + "id": 835, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 791, + "id": 834, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "10562:21:0" + "src": "10966:21:0" }, "referencedDeclaration": 49, - "src": "10562:21:0", + "src": "10966:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 793, + "id": 836, "nodeType": "ArrayTypeName", - "src": "10562:23:0", + "src": "10966:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 798, + "id": 841, "initialValue": { "baseExpression": { - "id": 795, + "id": 838, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "10602:21:0", + "src": "11006:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 797, + "id": 840, "indexExpression": { - "id": 796, + "id": 839, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10624:6:0", + "referencedDeclaration": 816, + "src": "11028:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -50802,14 +57401,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10602:29:0", + "src": "11006:29:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10562:69:0" + "src": "10966:69:0" }, { "expression": { @@ -50819,32 +57418,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 803, + "id": 846, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 800, + "id": 843, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 794, - "src": "10649:5:0", + "referencedDeclaration": 837, + "src": "11053:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 801, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "10649:12:0", + "src": "11053:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -50853,18 +57452,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 802, + "id": 845, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10665:5:0", + "referencedDeclaration": 820, + "src": "11069:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "10649:21:0", + "src": "11053:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -50872,14 +57471,14 @@ }, { "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 804, + "id": 847, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10672:28:0", + "src": "11076:28:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", "typeString": "literal_string \"The Task Round Must exists\"" @@ -50898,7 +57497,7 @@ "typeString": "literal_string \"The Task Round Must exists\"" } ], - "id": 799, + "id": 842, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -50906,13 +57505,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "10641:7:0", + "src": "11045:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 805, + "id": 848, "isConstant": false, "isLValue": false, "isPure": false, @@ -50920,79 +57519,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10641:60:0", + "src": "11045:60:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 806, + "id": 849, "nodeType": "ExpressionStatement", - "src": "10641:60:0" + "src": "11045:60:0" }, { "assignments": [ - 809 + 852 ], "declarations": [ { "constant": false, - "id": 809, + "id": 852, "mutability": "mutable", "name": "cmmt", - "nameLocation": "10741:4:0", + "nameLocation": "11145:4:0", "nodeType": "VariableDeclaration", - "scope": 821, - "src": "10711:34:0", + "scope": 864, + "src": "11115:34:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 808, + "id": 851, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 807, + "id": 850, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "10711:21:0" + "src": "11115:21:0" }, "referencedDeclaration": 49, - "src": "10711:21:0", + "src": "11115:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 813, + "id": 856, "initialValue": { "baseExpression": { - "id": 810, + "id": 853, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 794, - "src": "10748:5:0", + "referencedDeclaration": 837, + "src": "11152:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 812, + "id": 855, "indexExpression": { - "id": 811, + "id": 854, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10754:5:0", + "referencedDeclaration": 820, + "src": "11158:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -51003,29 +57602,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10748:12:0", + "src": "11152:12:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10711:49:0" + "src": "11115:49:0" }, { "expression": { - "id": 819, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 814, + "id": 857, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "10770:10:0", + "referencedDeclaration": 831, + "src": "11174:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -51036,18 +57635,18 @@ "rightHandSide": { "baseExpression": { "expression": { - "id": 815, + "id": 858, "name": "cmmt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 809, - "src": "10783:4:0", + "referencedDeclaration": 852, + "src": "11187:4:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 816, + "id": 859, "isConstant": false, "isLValue": true, "isPure": false, @@ -51055,20 +57654,20 @@ "memberName": "weightCommitment", "nodeType": "MemberAccess", "referencedDeclaration": 41, - "src": "10783:21:0", + "src": "11187:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes storage ref)" } }, - "id": 818, + "id": 861, "indexExpression": { - "id": 817, + "id": 860, "name": "clientaddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "10805:13:0", + "referencedDeclaration": 818, + "src": "11209:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -51079,130 +57678,130 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10783:36:0", + "src": "11187:36:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "src": "10770:49:0", + "src": "11174:49:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 820, + "id": 863, "nodeType": "ExpressionStatement", - "src": "10770:49:0" + "src": "11174:49:0" } ] }, "documentation": { - "id": 771, + "id": 814, "nodeType": "StructuredDocumentation", - "src": "9861:426:0", + "src": "10265:426:0", "text": " @dev called by task developer, get commitments from blockchain\n @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n @param taskId taskId\n @param clientaddress the client that publish the commitments\n @param round the round of that commitment\n @return commitment commitment data" }, "functionSelector": "e36bb28c", - "id": 822, + "id": 865, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 780, + "id": 823, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10452:6:0", + "referencedDeclaration": 816, + "src": "10856:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 781, + "id": 824, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10460:5:0", + "referencedDeclaration": 820, + "src": "10864:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 782, + "id": 825, "kind": "modifierInvocation", "modifierName": { - "id": 779, + "id": 822, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "10440:11:0" + "referencedDeclaration": 240, + "src": "10844:11:0" }, "nodeType": "ModifierInvocation", - "src": "10440:26:0" + "src": "10844:26:0" }, { "arguments": [ { - "id": 784, + "id": 827, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10491:6:0", + "referencedDeclaration": 816, + "src": "10895:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 785, + "id": 828, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "10499:5:0", + "referencedDeclaration": 820, + "src": "10903:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 786, + "id": 829, "kind": "modifierInvocation", "modifierName": { - "id": 783, + "id": 826, "name": "roundcmmtExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 261, - "src": "10475:15:0" + "referencedDeclaration": 265, + "src": "10879:15:0" }, "nodeType": "ModifierInvocation", - "src": "10475:30:0" + "src": "10879:30:0" } ], "name": "getResultCommitment", - "nameLocation": "10301:19:0", + "nameLocation": "10705:19:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 778, + "id": 821, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 773, + "id": 816, "mutability": "mutable", "name": "taskId", - "nameLocation": "10338:6:0", + "nameLocation": "10742:6:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10330:14:0", + "scope": 865, + "src": "10734:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -51210,10 +57809,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 772, + "id": 815, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "10330:7:0", + "src": "10734:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -51223,13 +57822,13 @@ }, { "constant": false, - "id": 775, + "id": 818, "mutability": "mutable", "name": "clientaddress", - "nameLocation": "10362:13:0", + "nameLocation": "10766:13:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10354:21:0", + "scope": 865, + "src": "10758:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -51237,10 +57836,10 @@ "typeString": "address" }, "typeName": { - "id": 774, + "id": 817, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10354:7:0", + "src": "10758:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -51251,13 +57850,13 @@ }, { "constant": false, - "id": 777, + "id": 820, "mutability": "mutable", "name": "round", - "nameLocation": "10392:5:0", + "nameLocation": "10796:5:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10385:12:0", + "scope": 865, + "src": "10789:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -51265,10 +57864,10 @@ "typeString": "uint64" }, "typeName": { - "id": 776, + "id": 819, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "10385:6:0", + "src": "10789:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -51277,21 +57876,21 @@ "visibility": "internal" } ], - "src": "10320:83:0" + "src": "10724:83:0" }, "returnParameters": { - "id": 789, + "id": 832, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 788, + "id": 831, "mutability": "mutable", "name": "commitment", - "nameLocation": "10536:10:0", + "nameLocation": "10940:10:0", "nodeType": "VariableDeclaration", - "scope": 822, - "src": "10523:23:0", + "scope": 865, + "src": "10927:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -51299,10 +57898,10 @@ "typeString": "bytes" }, "typeName": { - "id": 787, + "id": 830, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "10523:5:0", + "src": "10927:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -51311,91 +57910,91 @@ "visibility": "internal" } ], - "src": "10522:25:0" + "src": "10926:25:0" }, - "scope": 1663, - "src": "10292:534:0", + "scope": 1927, + "src": "10696:534:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 878, + "id": 956, "nodeType": "Block", - "src": "11164:263:0", + "src": "11576:430:0", "statements": [ { "assignments": [ - 849 + 894 ], "declarations": [ { "constant": false, - "id": 849, + "id": 894, "mutability": "mutable", "name": "cmmts", - "nameLocation": "11206:5:0", + "nameLocation": "11618:5:0", "nodeType": "VariableDeclaration", - "scope": 878, - "src": "11174:37:0", + "scope": 956, + "src": "11586:37:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 847, + "id": 892, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 846, + "id": 891, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "11174:21:0" + "src": "11586:21:0" }, "referencedDeclaration": 49, - "src": "11174:21:0", + "src": "11586:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 848, + "id": 893, "nodeType": "ArrayTypeName", - "src": "11174:23:0", + "src": "11586:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 853, + "id": 898, "initialValue": { "baseExpression": { - "id": 850, + "id": 895, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "11214:21:0", + "src": "11626:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 852, + "id": 897, "indexExpression": { - "id": 851, + "id": 896, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 825, - "src": "11236:6:0", + "referencedDeclaration": 868, + "src": "11648:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -51406,14 +58005,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11214:29:0", + "src": "11626:29:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11174:69:0" + "src": "11586:69:0" }, { "expression": { @@ -51423,32 +58022,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 858, + "id": 903, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 855, + "id": 900, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 849, - "src": "11261:5:0", + "referencedDeclaration": 894, + "src": "11673:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 856, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "11261:12:0", + "src": "11673:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -51457,18 +58056,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 857, + "id": 902, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11277:5:0", + "referencedDeclaration": 870, + "src": "11689:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "11261:21:0", + "src": "11673:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -51476,14 +58075,14 @@ }, { "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 859, + "id": 904, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "11284:28:0", + "src": "11696:28:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", "typeString": "literal_string \"The Task Round Must exists\"" @@ -51502,7 +58101,7 @@ "typeString": "literal_string \"The Task Round Must exists\"" } ], - "id": 854, + "id": 899, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -51510,13 +58109,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "11253:7:0", + "src": "11665:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 860, + "id": 905, "isConstant": false, "isLValue": false, "isPure": false, @@ -51524,79 +58123,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11253:60:0", + "src": "11665:60:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 861, + "id": 906, "nodeType": "ExpressionStatement", - "src": "11253:60:0" + "src": "11665:60:0" }, { "assignments": [ - 864 + 909 ], "declarations": [ { "constant": false, - "id": 864, + "id": 909, "mutability": "mutable", "name": "cmmt", - "nameLocation": "11353:4:0", + "nameLocation": "11765:4:0", "nodeType": "VariableDeclaration", - "scope": 878, - "src": "11323:34:0", + "scope": 956, + "src": "11735:34:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 863, + "id": 908, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 862, + "id": 907, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "11323:21:0" + "src": "11735:21:0" }, "referencedDeclaration": 49, - "src": "11323:21:0", + "src": "11735:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 868, + "id": 913, "initialValue": { "baseExpression": { - "id": 865, + "id": 910, "name": "cmmts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 849, - "src": "11360:5:0", + "referencedDeclaration": 894, + "src": "11772:5:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 867, + "id": 912, "indexExpression": { - "id": 866, + "id": 911, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11366:5:0", + "referencedDeclaration": 870, + "src": "11778:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -51607,231 +58206,610 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11360:12:0", + "src": "11772:12:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11323:49:0" + "src": "11735:49:0" }, { - "expression": { - "id": 876, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 869, - "name": "ssdata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 843, - "src": "11382:6:0", + "assignments": [ + 918 + ], + "declarations": [ + { + "constant": false, + "id": 918, + "mutability": "mutable", + "name": "ssdatas", + "nameLocation": "11810:7:0", + "nodeType": "VariableDeclaration", + "scope": 956, + "src": "11794:23:0", + "stateVariable": false, + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_memory_ptr", - "typeString": "struct DeltaContract.SSData memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 870, - "name": "cmmt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "11391:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData[]" + }, + "typeName": { + "baseType": { + "id": 916, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 915, + "name": "SSData", + "nodeType": "IdentifierPath", + "referencedDeclaration": 106, + "src": "11794:6:0" }, - "id": 871, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "11391:11:0", + "referencedDeclaration": 106, + "src": "11794:6:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" } }, - "id": 873, - "indexExpression": { - "id": 872, - "name": "sender", + "id": 917, + "nodeType": "ArrayTypeName", + "src": "11794:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.SSData[]" + } + }, + "visibility": "internal" + } + ], + "id": 926, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 923, + "name": "senders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 829, - "src": "11403:6:0", + "referencedDeclaration": 873, + "src": "11833:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, + "id": 924, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11391:19:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11833:14:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 922, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "11820:12:0", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct HFLContract.SSData memory[] memory)" }, - "id": 875, - "indexExpression": { - "id": 874, - "name": "receiver", + "typeName": { + "baseType": { + "id": 920, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 919, + "name": "SSData", + "nodeType": "IdentifierPath", + "referencedDeclaration": 106, + "src": "11824:6:0" + }, + "referencedDeclaration": 106, + "src": "11824:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" + } + }, + "id": 921, + "nodeType": "ArrayTypeName", + "src": "11824:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.SSData[]" + } + } + }, + "id": 925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11820:28:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11794:54:0" + }, + { + "body": { + "id": 952, + "nodeType": "Block", + "src": "11903:73:0", + "statements": [ + { + "expression": { + "id": 950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 938, + "name": "ssdatas", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 918, + "src": "11917:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData memory[] memory" + } + }, + "id": 940, + "indexExpression": { + "id": 939, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11925:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "11917:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", + "typeString": "struct HFLContract.SSData memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "components": [ + { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 941, + "name": "cmmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 909, + "src": "11931:4:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 942, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "11931:11:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 946, + "indexExpression": { + "baseExpression": { + "id": 943, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 873, + "src": "11943:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 945, + "indexExpression": { + "id": 944, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11951:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11943:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11931:23:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 948, + "indexExpression": { + "id": 947, + "name": "receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 875, + "src": "11955:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11931:33:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + } + ], + "id": 949, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "11930:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "src": "11917:48:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", + "typeString": "struct HFLContract.SSData memory" + } + }, + "id": 951, + "nodeType": "ExpressionStatement", + "src": "11917:48:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 931, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11878:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 932, + "name": "senders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 831, - "src": "11411:8:0", + "referencedDeclaration": 873, + "src": "11882:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, + "id": 933, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11391:29:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11882:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "11382:38:0", + "src": "11878:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_memory_ptr", - "typeString": "struct DeltaContract.SSData memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 877, - "nodeType": "ExpressionStatement", - "src": "11382:38:0" + "id": 953, + "initializationExpression": { + "assignments": [ + 928 + ], + "declarations": [ + { + "constant": false, + "id": 928, + "mutability": "mutable", + "name": "i", + "nameLocation": "11871:1:0", + "nodeType": "VariableDeclaration", + "scope": 953, + "src": "11863:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 927, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11863:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 930, + "initialValue": { + "hexValue": "30", + "id": 929, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11875:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "11863:13:0" + }, + "loopExpression": { + "expression": { + "id": 936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "11898:3:0", + "subExpression": { + "id": 935, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 928, + "src": "11898:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 937, + "nodeType": "ExpressionStatement", + "src": "11898:3:0" + }, + "nodeType": "ForStatement", + "src": "11858:118:0" + }, + { + "expression": { + "id": 954, + "name": "ssdatas", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 918, + "src": "11992:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData memory[] memory" + } + }, + "functionReturnParameters": 889, + "id": 955, + "nodeType": "Return", + "src": "11985:14:0" } ] }, "documentation": { - "id": 823, + "id": 866, "nodeType": "StructuredDocumentation", - "src": "10832:50:0", + "src": "11236:50:0", "text": " @dev called by any participants" }, - "functionSelector": "589e2338", - "id": 879, + "functionSelector": "5ed14248", + "id": 957, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 834, + "id": 878, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 825, - "src": "11067:6:0", + "referencedDeclaration": 868, + "src": "11484:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 835, + "id": 879, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11075:5:0", + "referencedDeclaration": 870, + "src": "11492:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 836, + "id": 880, "kind": "modifierInvocation", "modifierName": { - "id": 833, + "id": 877, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "11055:11:0" + "referencedDeclaration": 240, + "src": "11472:11:0" }, "nodeType": "ModifierInvocation", - "src": "11055:26:0" + "src": "11472:26:0" }, { "arguments": [ { - "id": 838, + "id": 882, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 825, - "src": "11106:6:0", + "referencedDeclaration": 868, + "src": "11523:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 839, + "id": 883, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 827, - "src": "11114:5:0", + "referencedDeclaration": 870, + "src": "11531:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 840, + "id": 884, "kind": "modifierInvocation", "modifierName": { - "id": 837, + "id": 881, "name": "roundcmmtExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 261, - "src": "11090:15:0" + "referencedDeclaration": 265, + "src": "11507:15:0" }, "nodeType": "ModifierInvocation", - "src": "11090:30:0" + "src": "11507:30:0" } ], - "name": "getSecretSharingData", - "nameLocation": "10896:20:0", + "name": "getSecretSharingDatas", + "nameLocation": "11300:21:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 832, + "id": 876, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 825, + "id": 868, "mutability": "mutable", "name": "taskId", - "nameLocation": "10934:6:0", + "nameLocation": "11339:6:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10926:14:0", + "scope": 957, + "src": "11331:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -51839,10 +58817,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 824, + "id": 867, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "10926:7:0", + "src": "11331:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -51852,13 +58830,13 @@ }, { "constant": false, - "id": 827, + "id": 870, "mutability": "mutable", "name": "round", - "nameLocation": "10957:5:0", + "nameLocation": "11362:5:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10950:12:0", + "scope": 957, + "src": "11355:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -51866,10 +58844,10 @@ "typeString": "uint64" }, "typeName": { - "id": 826, + "id": 869, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "10950:6:0", + "src": "11355:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -51879,41 +58857,50 @@ }, { "constant": false, - "id": 829, + "id": 873, "mutability": "mutable", - "name": "sender", - "nameLocation": "10980:6:0", + "name": "senders", + "nameLocation": "11396:7:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10972:14:0", + "scope": 957, + "src": "11377:26:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 828, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10972:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 871, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11377:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 872, + "nodeType": "ArrayTypeName", + "src": "11377:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 831, + "id": 875, "mutability": "mutable", "name": "receiver", - "nameLocation": "11004:8:0", + "nameLocation": "11421:8:0", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "10996:16:0", + "scope": 957, + "src": "11413:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -51921,10 +58908,10 @@ "typeString": "address" }, "typeName": { - "id": 830, + "id": 874, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10996:7:0", + "src": "11413:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -51934,124 +58921,133 @@ "visibility": "internal" } ], - "src": "10916:102:0" + "src": "11321:114:0" }, "returnParameters": { - "id": 844, + "id": 889, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 843, + "id": 888, "mutability": "mutable", - "name": "ssdata", - "nameLocation": "11152:6:0", + "name": "", + "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 879, - "src": "11138:20:0", + "scope": 957, + "src": "11555:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_memory_ptr", - "typeString": "struct DeltaContract.SSData" + "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", + "typeString": "struct HFLContract.SSData[]" }, "typeName": { - "id": 842, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 841, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 104, - "src": "11138:6:0" + "baseType": { + "id": 886, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 885, + "name": "SSData", + "nodeType": "IdentifierPath", + "referencedDeclaration": 106, + "src": "11555:6:0" + }, + "referencedDeclaration": 106, + "src": "11555:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", + "typeString": "struct HFLContract.SSData" + } }, - "referencedDeclaration": 104, - "src": "11138:6:0", + "id": 887, + "nodeType": "ArrayTypeName", + "src": "11555:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage_ptr", - "typeString": "struct DeltaContract.SSData" + "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", + "typeString": "struct HFLContract.SSData[]" } }, "visibility": "internal" } ], - "src": "11137:22:0" + "src": "11554:17:0" }, - "scope": 1663, - "src": "10887:540:0", + "scope": 1927, + "src": "11291:715:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 955, + "id": 1033, "nodeType": "Block", - "src": "12024:525:0", + "src": "12603:525:0", "statements": [ { "assignments": [ - 899 + 977 ], "declarations": [ { "constant": false, - "id": 899, + "id": 977, "mutability": "mutable", "name": "curRound", - "nameLocation": "12052:8:0", + "nameLocation": "12631:8:0", "nodeType": "VariableDeclaration", - "scope": 955, - "src": "12034:26:0", + "scope": 1033, + "src": "12613:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 898, + "id": 976, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 897, + "id": 975, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "12034:9:0" + "referencedDeclaration": 85, + "src": "12613:9:0" }, - "referencedDeclaration": 83, - "src": "12034:9:0", + "referencedDeclaration": 85, + "src": "12613:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 905, + "id": 983, "initialValue": { "baseExpression": { "baseExpression": { - "id": 900, + "id": 978, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "12063:10:0", + "src": "12642:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 902, + "id": 980, "indexExpression": { - "id": 901, + "id": 979, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "12074:6:0", + "referencedDeclaration": 960, + "src": "12653:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -52062,20 +59058,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12063:18:0", + "src": "12642:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 904, + "id": 982, "indexExpression": { - "id": 903, + "id": 981, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "12082:5:0", + "referencedDeclaration": 962, + "src": "12661:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -52086,14 +59082,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12063:25:0", + "src": "12642:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "12034:54:0" + "src": "12613:54:0" }, { "expression": { @@ -52101,56 +59097,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 911, + "id": 989, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 907, + "id": 985, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "12119:8:0", + "referencedDeclaration": 977, + "src": "12698:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 908, + "id": 986, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "12119:15:0", + "referencedDeclaration": 76, + "src": "12698:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 909, + "id": 987, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "12138:11:0", + "src": "12717:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 910, + "id": 988, "isConstant": false, "isLValue": false, "isPure": true, @@ -52158,13 +59154,13 @@ "memberName": "Calculating", "nodeType": "MemberAccess", "referencedDeclaration": 11, - "src": "12138:23:0", + "src": "12717:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "12119:42:0", + "src": "12698:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -52172,14 +59168,14 @@ }, { "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", - "id": 912, + "id": 990, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12175:29:0", + "src": "12754:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850", "typeString": "literal_string \"Calculating has not started\"" @@ -52198,7 +59194,7 @@ "typeString": "literal_string \"Calculating has not started\"" } ], - "id": 906, + "id": 984, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -52206,13 +59202,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "12098:7:0", + "src": "12677:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 913, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -52220,67 +59216,67 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12098:116:0", + "src": "12677:116:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 914, + "id": 992, "nodeType": "ExpressionStatement", - "src": "12098:116:0" + "src": "12677:116:0" }, { "expression": { - "id": 920, + "id": 998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 915, + "id": 993, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "12224:8:0", + "referencedDeclaration": 977, + "src": "12803:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 917, + "id": 995, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "12224:15:0", + "referencedDeclaration": 76, + "src": "12803:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 918, + "id": 996, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "12242:11:0", + "src": "12821:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 919, + "id": 997, "isConstant": false, "isLValue": false, "isPure": true, @@ -52288,27 +59284,27 @@ "memberName": "Aggregating", "nodeType": "MemberAccess", "referencedDeclaration": 12, - "src": "12242:23:0", + "src": "12821:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "12224:41:0", + "src": "12803:41:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 921, + "id": 999, "nodeType": "ExpressionStatement", - "src": "12224:41:0" + "src": "12803:41:0" }, { "body": { - "id": 947, + "id": 1025, "nodeType": "Block", - "src": "12326:156:0", + "src": "12905:156:0", "statements": [ { "expression": { @@ -52318,7 +59314,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 943, + "id": 1021, "isConstant": false, "isLValue": false, "isPure": false, @@ -52328,53 +59324,53 @@ "expression": { "baseExpression": { "expression": { - "id": 934, + "id": 1012, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "12365:8:0", + "referencedDeclaration": 977, + "src": "12944:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 935, + "id": 1013, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "candidates", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "12365:19:0", + "referencedDeclaration": 81, + "src": "12944:19:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$65_storage_$", - "typeString": "mapping(address => struct DeltaContract.Candidate storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", + "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" } }, - "id": 939, + "id": 1017, "indexExpression": { "baseExpression": { - "id": 936, + "id": 1014, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 887, - "src": "12385:13:0", + "referencedDeclaration": 965, + "src": "12964:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 938, + "id": 1016, "indexExpression": { - "id": 937, + "id": 1015, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "12399:1:0", + "referencedDeclaration": 1001, + "src": "12978:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52385,7 +59381,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12385:16:0", + "src": "12964:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -52396,34 +59392,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12365:37:0", + "src": "12944:37:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$65_storage", - "typeString": "struct DeltaContract.Candidate storage ref" + "typeIdentifier": "t_struct$_Candidate_$67_storage", + "typeString": "struct HFLContract.Candidate storage ref" } }, - "id": 940, + "id": 1018, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "pk1", "nodeType": "MemberAccess", - "referencedDeclaration": 62, - "src": "12365:41:0", + "referencedDeclaration": 64, + "src": "12944:41:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 941, + "id": 1019, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "12365:48:0", + "src": "12944:48:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52433,21 +59429,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 942, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12416:1:0", + "src": "12995:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "12365:52:0", + "src": "12944:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -52455,14 +59451,14 @@ }, { "hexValue": "43616e646964617465206d757374206578697374", - "id": 944, + "id": 1022, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12435:22:0", + "src": "13014:22:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", "typeString": "literal_string \"Candidate must exist\"" @@ -52481,7 +59477,7 @@ "typeString": "literal_string \"Candidate must exist\"" } ], - "id": 933, + "id": 1011, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -52489,13 +59485,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "12340:7:0", + "src": "12919:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 945, + "id": 1023, "isConstant": false, "isLValue": false, "isPure": false, @@ -52503,16 +59499,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12340:131:0", + "src": "12919:131:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 946, + "id": 1024, "nodeType": "ExpressionStatement", - "src": "12340:131:0" + "src": "12919:131:0" } ] }, @@ -52521,18 +59517,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 929, + "id": 1007, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 926, + "id": 1004, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "12295:1:0", + "referencedDeclaration": 1001, + "src": "12874:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52542,51 +59538,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 927, + "id": 1005, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 887, - "src": "12299:13:0", + "referencedDeclaration": 965, + "src": "12878:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, - "id": 928, + "id": 1006, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "12299:20:0", + "src": "12878:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12295:24:0", + "src": "12874:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 948, + "id": 1026, "initializationExpression": { "assignments": [ - 923 + 1001 ], "declarations": [ { "constant": false, - "id": 923, + "id": 1001, "mutability": "mutable", "name": "i", - "nameLocation": "12288:1:0", + "nameLocation": "12867:1:0", "nodeType": "VariableDeclaration", - "scope": 948, - "src": "12280:9:0", + "scope": 1026, + "src": "12859:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52594,10 +59590,10 @@ "typeString": "uint256" }, "typeName": { - "id": 922, + "id": 1000, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12280:7:0", + "src": "12859:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52606,17 +59602,17 @@ "visibility": "internal" } ], - "id": 925, + "id": 1003, "initialValue": { "hexValue": "30", - "id": 924, + "id": 1002, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12292:1:0", + "src": "12871:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -52624,11 +59620,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "12280:13:0" + "src": "12859:13:0" }, "loopExpression": { "expression": { - "id": 931, + "id": 1009, "isConstant": false, "isLValue": false, "isPure": false, @@ -52636,14 +59632,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "12321:3:0", + "src": "12900:3:0", "subExpression": { - "id": 930, + "id": 1008, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "12321:1:0", + "referencedDeclaration": 1001, + "src": "12900:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52654,47 +59650,47 @@ "typeString": "uint256" } }, - "id": 932, + "id": 1010, "nodeType": "ExpressionStatement", - "src": "12321:3:0" + "src": "12900:3:0" }, "nodeType": "ForStatement", - "src": "12275:207:0" + "src": "12854:207:0" }, { "eventCall": { "arguments": [ { - "id": 950, + "id": 1028, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "12513:6:0", + "referencedDeclaration": 960, + "src": "13092:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 951, + "id": 1029, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "12521:5:0", + "referencedDeclaration": 962, + "src": "13100:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 952, + "id": 1030, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 887, - "src": "12528:13:0", + "referencedDeclaration": 965, + "src": "13107:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" @@ -52716,18 +59712,18 @@ "typeString": "address[] calldata" } ], - "id": 949, + "id": 1027, "name": "AggregateStarted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 152, - "src": "12496:16:0", + "referencedDeclaration": 156, + "src": "13075:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address[] memory)" } }, - "id": 953, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, @@ -52735,113 +59731,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12496:46:0", + "src": "13075:46:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 954, + "id": 1032, "nodeType": "EmitStatement", - "src": "12491:51:0" + "src": "13070:51:0" } ] }, "documentation": { - "id": 880, + "id": 958, "nodeType": "StructuredDocumentation", - "src": "11433:416:0", + "src": "12012:416:0", "text": " @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n @param taskId taskId\n @param round the task round\n @param onlineClients clients that has transfered gradient to task developer" }, "functionSelector": "4956219b", - "id": 956, + "id": 1034, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 890, + "id": 968, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "11989:6:0", + "referencedDeclaration": 960, + "src": "12568:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 891, + "id": 969, "kind": "modifierInvocation", "modifierName": { - "id": 889, + "id": 967, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "11979:9:0" + "referencedDeclaration": 282, + "src": "12558:9:0" }, "nodeType": "ModifierInvocation", - "src": "11979:17:0" + "src": "12558:17:0" }, { "arguments": [ { - "id": 893, + "id": 971, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 882, - "src": "12009:6:0", + "referencedDeclaration": 960, + "src": "12588:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 894, + "id": 972, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "12017:5:0", + "referencedDeclaration": 962, + "src": "12596:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 895, + "id": 973, "kind": "modifierInvocation", "modifierName": { - "id": 892, + "id": 970, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "11997:11:0" + "referencedDeclaration": 240, + "src": "12576:11:0" }, "nodeType": "ModifierInvocation", - "src": "11997:26:0" + "src": "12576:26:0" } ], "name": "startAggregate", - "nameLocation": "11863:14:0", + "nameLocation": "12442:14:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 888, + "id": 966, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 882, + "id": 960, "mutability": "mutable", "name": "taskId", - "nameLocation": "11895:6:0", + "nameLocation": "12474:6:0", "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11887:14:0", + "scope": 1034, + "src": "12466:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52849,10 +59845,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 881, + "id": 959, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11887:7:0", + "src": "12466:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -52862,13 +59858,13 @@ }, { "constant": false, - "id": 884, + "id": 962, "mutability": "mutable", "name": "round", - "nameLocation": "11918:5:0", + "nameLocation": "12497:5:0", "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11911:12:0", + "scope": 1034, + "src": "12490:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52876,10 +59872,10 @@ "typeString": "uint64" }, "typeName": { - "id": 883, + "id": 961, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "11911:6:0", + "src": "12490:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -52889,13 +59885,13 @@ }, { "constant": false, - "id": 887, + "id": 965, "mutability": "mutable", "name": "onlineClients", - "nameLocation": "11952:13:0", + "nameLocation": "12531:13:0", "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11933:32:0", + "scope": 1034, + "src": "12512:32:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -52904,19 +59900,19 @@ }, "typeName": { "baseType": { - "id": 885, + "id": 963, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11933:7:0", + "src": "12512:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 886, + "id": 964, "nodeType": "ArrayTypeName", - "src": "11933:9:0", + "src": "12512:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -52925,89 +59921,89 @@ "visibility": "internal" } ], - "src": "11877:94:0" + "src": "12456:94:0" }, "returnParameters": { - "id": 896, + "id": 974, "nodeType": "ParameterList", "parameters": [], - "src": "12024:0:0" + "src": "12603:0:0" }, - "scope": 1663, - "src": "11854:695:0", + "scope": 1927, + "src": "12433:695:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1005, + "id": 1083, "nodeType": "Block", - "src": "12955:307:0", + "src": "13534:307:0", "statements": [ { "assignments": [ - 976 + 1054 ], "declarations": [ { "constant": false, - "id": 976, + "id": 1054, "mutability": "mutable", "name": "curRound", - "nameLocation": "12983:8:0", + "nameLocation": "13562:8:0", "nodeType": "VariableDeclaration", - "scope": 1005, - "src": "12965:26:0", + "scope": 1083, + "src": "13544:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 975, + "id": 1053, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 974, + "id": 1052, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "12965:9:0" + "referencedDeclaration": 85, + "src": "13544:9:0" }, - "referencedDeclaration": 83, - "src": "12965:9:0", + "referencedDeclaration": 85, + "src": "13544:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 982, + "id": 1060, "initialValue": { "baseExpression": { "baseExpression": { - "id": 977, + "id": 1055, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "12994:10:0", + "src": "13573:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 979, + "id": 1057, "indexExpression": { - "id": 978, + "id": 1056, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "13005:6:0", + "referencedDeclaration": 1037, + "src": "13584:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -53018,20 +60014,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12994:18:0", + "src": "13573:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 981, + "id": 1059, "indexExpression": { - "id": 980, + "id": 1058, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "13013:5:0", + "referencedDeclaration": 1039, + "src": "13592:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -53042,14 +60038,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12994:25:0", + "src": "13573:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "12965:54:0" + "src": "13544:54:0" }, { "expression": { @@ -53057,56 +60053,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 988, + "id": 1066, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 984, + "id": 1062, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 976, - "src": "13050:8:0", + "referencedDeclaration": 1054, + "src": "13629:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 985, + "id": 1063, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "13050:15:0", + "referencedDeclaration": 76, + "src": "13629:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 986, + "id": 1064, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "13069:11:0", + "src": "13648:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 987, + "id": 1065, "isConstant": false, "isLValue": false, "isPure": true, @@ -53114,13 +60110,13 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "13069:19:0", + "src": "13648:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "13050:38:0", + "src": "13629:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -53128,14 +60124,14 @@ }, { "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", - "id": 989, + "id": 1067, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "13102:31:0", + "src": "13681:31:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2", "typeString": "literal_string \"This round is not running now\"" @@ -53154,7 +60150,7 @@ "typeString": "literal_string \"This round is not running now\"" } ], - "id": 983, + "id": 1061, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53162,13 +60158,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "13029:7:0", + "src": "13608:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 990, + "id": 1068, "isConstant": false, "isLValue": false, "isPure": false, @@ -53176,67 +60172,67 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13029:114:0", + "src": "13608:114:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 991, + "id": 1069, "nodeType": "ExpressionStatement", - "src": "13029:114:0" + "src": "13608:114:0" }, { "expression": { - "id": 997, + "id": 1075, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 992, + "id": 1070, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 976, - "src": "13153:8:0", + "referencedDeclaration": 1054, + "src": "13732:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 994, + "id": 1072, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "13153:15:0", + "referencedDeclaration": 76, + "src": "13732:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 995, + "id": 1073, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "13171:11:0", + "src": "13750:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 996, + "id": 1074, "isConstant": false, "isLValue": false, "isPure": true, @@ -53244,56 +60240,56 @@ "memberName": "Calculating", "nodeType": "MemberAccess", "referencedDeclaration": 11, - "src": "13171:23:0", + "src": "13750:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "13153:41:0", + "src": "13732:41:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 998, + "id": 1076, "nodeType": "ExpressionStatement", - "src": "13153:41:0" + "src": "13732:41:0" }, { "eventCall": { "arguments": [ { - "id": 1000, + "id": 1078, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "13226:6:0", + "referencedDeclaration": 1037, + "src": "13805:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1001, + "id": 1079, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "13234:5:0", + "referencedDeclaration": 1039, + "src": "13813:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 1002, + "id": 1080, "name": "onlineClients", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 964, - "src": "13241:13:0", + "referencedDeclaration": 1042, + "src": "13820:13:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" @@ -53315,18 +60311,18 @@ "typeString": "address[] calldata" } ], - "id": 999, + "id": 1077, "name": "CalculateStarted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 161, - "src": "13209:16:0", + "referencedDeclaration": 165, + "src": "13788:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address[] memory)" } }, - "id": 1003, + "id": 1081, "isConstant": false, "isLValue": false, "isPure": false, @@ -53334,113 +60330,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13209:46:0", + "src": "13788:46:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1004, + "id": 1082, "nodeType": "EmitStatement", - "src": "13204:51:0" + "src": "13783:51:0" } ] }, "documentation": { - "id": 957, + "id": 1035, "nodeType": "StructuredDocumentation", - "src": "12555:225:0", + "src": "13134:225:0", "text": " @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n @param taskId taskId\n @param round the task round" }, "functionSelector": "abf2013a", - "id": 1006, + "id": 1084, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 967, + "id": 1045, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "12920:6:0", + "referencedDeclaration": 1037, + "src": "13499:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 968, + "id": 1046, "kind": "modifierInvocation", "modifierName": { - "id": 966, + "id": 1044, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "12910:9:0" + "referencedDeclaration": 282, + "src": "13489:9:0" }, "nodeType": "ModifierInvocation", - "src": "12910:17:0" + "src": "13489:17:0" }, { "arguments": [ { - "id": 970, + "id": 1048, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "12940:6:0", + "referencedDeclaration": 1037, + "src": "13519:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 971, + "id": 1049, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "12948:5:0", + "referencedDeclaration": 1039, + "src": "13527:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 972, + "id": 1050, "kind": "modifierInvocation", "modifierName": { - "id": 969, + "id": 1047, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "12928:11:0" + "referencedDeclaration": 240, + "src": "13507:11:0" }, "nodeType": "ModifierInvocation", - "src": "12928:26:0" + "src": "13507:26:0" } ], "name": "startCalculate", - "nameLocation": "12794:14:0", + "nameLocation": "13373:14:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 965, + "id": 1043, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 959, + "id": 1037, "mutability": "mutable", "name": "taskId", - "nameLocation": "12826:6:0", + "nameLocation": "13405:6:0", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "12818:14:0", + "scope": 1084, + "src": "13397:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53448,10 +60444,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 958, + "id": 1036, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12818:7:0", + "src": "13397:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -53461,13 +60457,13 @@ }, { "constant": false, - "id": 961, + "id": 1039, "mutability": "mutable", "name": "round", - "nameLocation": "12849:5:0", + "nameLocation": "13428:5:0", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "12842:12:0", + "scope": 1084, + "src": "13421:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53475,10 +60471,10 @@ "typeString": "uint64" }, "typeName": { - "id": 960, + "id": 1038, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "12842:6:0", + "src": "13421:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -53488,13 +60484,13 @@ }, { "constant": false, - "id": 964, + "id": 1042, "mutability": "mutable", "name": "onlineClients", - "nameLocation": "12883:13:0", + "nameLocation": "13462:13:0", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "12864:32:0", + "scope": 1084, + "src": "13443:32:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -53503,19 +60499,19 @@ }, "typeName": { "baseType": { - "id": 962, + "id": 1040, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12864:7:0", + "src": "13443:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 963, + "id": 1041, "nodeType": "ArrayTypeName", - "src": "12864:9:0", + "src": "13443:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -53524,89 +60520,89 @@ "visibility": "internal" } ], - "src": "12808:94:0" + "src": "13387:94:0" }, "returnParameters": { - "id": 973, + "id": 1051, "nodeType": "ParameterList", "parameters": [], - "src": "12955:0:0" + "src": "13534:0:0" }, - "scope": 1663, - "src": "12785:477:0", + "scope": 1927, + "src": "13364:477:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1042, + "id": 1120, "nodeType": "Block", - "src": "13525:157:0", + "src": "14104:157:0", "statements": [ { "assignments": [ - 1023 + 1101 ], "declarations": [ { "constant": false, - "id": 1023, + "id": 1101, "mutability": "mutable", "name": "curRound", - "nameLocation": "13553:8:0", + "nameLocation": "14132:8:0", "nodeType": "VariableDeclaration", - "scope": 1042, - "src": "13535:26:0", + "scope": 1120, + "src": "14114:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1022, + "id": 1100, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1021, + "id": 1099, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "13535:9:0" + "referencedDeclaration": 85, + "src": "14114:9:0" }, - "referencedDeclaration": 83, - "src": "13535:9:0", + "referencedDeclaration": 85, + "src": "14114:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1029, + "id": 1107, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1024, + "id": 1102, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "13564:10:0", + "src": "14143:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1026, + "id": 1104, "indexExpression": { - "id": 1025, + "id": 1103, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13575:6:0", + "referencedDeclaration": 1087, + "src": "14154:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -53617,20 +60613,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13564:18:0", + "src": "14143:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1028, + "id": 1106, "indexExpression": { - "id": 1027, + "id": 1105, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1011, - "src": "13583:5:0", + "referencedDeclaration": 1089, + "src": "14162:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -53641,65 +60637,65 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13564:25:0", + "src": "14143:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "13535:54:0" + "src": "14114:54:0" }, { "expression": { - "id": 1035, + "id": 1113, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 1030, + "id": 1108, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1023, - "src": "13599:8:0", + "referencedDeclaration": 1101, + "src": "14178:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1032, + "id": 1110, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "13599:15:0", + "referencedDeclaration": 76, + "src": "14178:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { - "id": 1033, + "id": 1111, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "13617:11:0", + "src": "14196:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1034, + "id": 1112, "isConstant": false, "isLValue": false, "isPure": true, @@ -53707,44 +60703,44 @@ "memberName": "Finished", "nodeType": "MemberAccess", "referencedDeclaration": 13, - "src": "13617:20:0", + "src": "14196:20:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "13599:38:0", + "src": "14178:38:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "id": 1036, + "id": 1114, "nodeType": "ExpressionStatement", - "src": "13599:38:0" + "src": "14178:38:0" }, { "eventCall": { "arguments": [ { - "id": 1038, + "id": 1116, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13661:6:0", + "referencedDeclaration": 1087, + "src": "14240:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1039, + "id": 1117, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1011, - "src": "13669:5:0", + "referencedDeclaration": 1089, + "src": "14248:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -53762,18 +60758,18 @@ "typeString": "uint64" } ], - "id": 1037, + "id": 1115, "name": "RoundEnd", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 134, - "src": "13652:8:0", + "referencedDeclaration": 138, + "src": "14231:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", "typeString": "function (bytes32,uint64)" } }, - "id": 1040, + "id": 1118, "isConstant": false, "isLValue": false, "isPure": false, @@ -53781,113 +60777,113 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13652:23:0", + "src": "14231:23:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 1119, "nodeType": "EmitStatement", - "src": "13647:28:0" + "src": "14226:28:0" } ] }, "documentation": { - "id": 1007, + "id": 1085, "nodeType": "StructuredDocumentation", - "src": "13268:124:0", + "src": "13847:124:0", "text": " @dev called by task developer, close round\n @param taskId taskId\n @param round the task round" }, "functionSelector": "01bd7269", - "id": 1043, + "id": 1121, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1014, + "id": 1092, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13478:6:0", + "referencedDeclaration": 1087, + "src": "14057:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 1015, + "id": 1093, "kind": "modifierInvocation", "modifierName": { - "id": 1013, + "id": 1091, "name": "taskOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 278, - "src": "13468:9:0" + "referencedDeclaration": 282, + "src": "14047:9:0" }, "nodeType": "ModifierInvocation", - "src": "13468:17:0" + "src": "14047:17:0" }, { "arguments": [ { - "id": 1017, + "id": 1095, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1009, - "src": "13506:6:0", + "referencedDeclaration": 1087, + "src": "14085:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1018, + "id": 1096, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1011, - "src": "13514:5:0", + "referencedDeclaration": 1089, + "src": "14093:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1019, + "id": 1097, "kind": "modifierInvocation", "modifierName": { - "id": 1016, + "id": 1094, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "13494:11:0" + "referencedDeclaration": 240, + "src": "14073:11:0" }, "nodeType": "ModifierInvocation", - "src": "13494:26:0" + "src": "14073:26:0" } ], "name": "endRound", - "nameLocation": "13406:8:0", + "nameLocation": "13985:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1012, + "id": 1090, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1009, + "id": 1087, "mutability": "mutable", "name": "taskId", - "nameLocation": "13423:6:0", + "nameLocation": "14002:6:0", "nodeType": "VariableDeclaration", - "scope": 1043, - "src": "13415:14:0", + "scope": 1121, + "src": "13994:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53895,10 +60891,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1008, + "id": 1086, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13415:7:0", + "src": "13994:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -53908,13 +60904,13 @@ }, { "constant": false, - "id": 1011, + "id": 1089, "mutability": "mutable", "name": "round", - "nameLocation": "13438:5:0", + "nameLocation": "14017:5:0", "nodeType": "VariableDeclaration", - "scope": 1043, - "src": "13431:12:0", + "scope": 1121, + "src": "14010:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53922,10 +60918,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1010, + "id": 1088, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "13431:6:0", + "src": "14010:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -53934,25 +60930,25 @@ "visibility": "internal" } ], - "src": "13414:30:0" + "src": "13993:30:0" }, "returnParameters": { - "id": 1020, + "id": 1098, "nodeType": "ParameterList", "parameters": [], - "src": "13525:0:0" + "src": "14104:0:0" }, - "scope": 1663, - "src": "13397:285:0", + "scope": 1927, + "src": "13976:285:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1138, + "id": 1216, "nodeType": "Block", - "src": "14048:972:0", + "src": "14627:972:0", "statements": [ { "expression": { @@ -53962,7 +60958,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1066, + "id": 1144, "isConstant": false, "isLValue": false, "isPure": false, @@ -53972,32 +60968,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1061, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1058, + "id": 1136, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14079:16:0", + "referencedDeclaration": 1128, + "src": "14658:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 1059, + "id": 1137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "14079:23:0", + "src": "14658:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -54007,21 +61003,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 1060, + "id": 1138, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14105:1:0", + "src": "14684:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "14079:27:0", + "src": "14658:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54034,32 +61030,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1065, + "id": 1143, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1062, + "id": 1140, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14126:16:0", + "referencedDeclaration": 1128, + "src": "14705:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 1063, + "id": 1141, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "14126:23:0", + "src": "14705:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -54068,24 +61064,24 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 1064, + "id": 1142, "name": "maxWeightCommitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 34, - "src": "14153:25:0", + "src": "14732:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "14126:52:0", + "src": "14705:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "14079:99:0", + "src": "14658:99:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54093,14 +61089,14 @@ }, { "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1067, + "id": 1145, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14192:48:0", + "src": "14771:48:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" @@ -54119,7 +61115,7 @@ "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" } ], - "id": 1057, + "id": 1135, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -54127,13 +61123,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "14058:7:0", + "src": "14637:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1068, + "id": 1146, "isConstant": false, "isLValue": false, "isPure": false, @@ -54141,80 +61137,80 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14058:192:0", + "src": "14637:192:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1069, + "id": 1147, "nodeType": "ExpressionStatement", - "src": "14058:192:0" + "src": "14637:192:0" }, { "assignments": [ - 1072 + 1150 ], "declarations": [ { "constant": false, - "id": 1072, + "id": 1150, "mutability": "mutable", "name": "curRound", - "nameLocation": "14278:8:0", + "nameLocation": "14857:8:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "14260:26:0", + "scope": 1216, + "src": "14839:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1071, + "id": 1149, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1070, + "id": 1148, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "14260:9:0" + "referencedDeclaration": 85, + "src": "14839:9:0" }, - "referencedDeclaration": 83, - "src": "14260:9:0", + "referencedDeclaration": 85, + "src": "14839:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1078, + "id": 1156, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1073, + "id": 1151, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "14289:10:0", + "src": "14868:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1075, + "id": 1153, "indexExpression": { - "id": 1074, + "id": 1152, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14300:6:0", + "referencedDeclaration": 1124, + "src": "14879:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -54225,20 +61221,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14289:18:0", + "src": "14868:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1077, + "id": 1155, "indexExpression": { - "id": 1076, + "id": 1154, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14308:5:0", + "referencedDeclaration": 1126, + "src": "14887:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -54249,14 +61245,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14289:25:0", + "src": "14868:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "14260:54:0" + "src": "14839:54:0" }, { "expression": { @@ -54264,56 +61260,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1084, + "id": 1162, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1080, + "id": 1158, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1072, - "src": "14345:8:0", + "referencedDeclaration": 1150, + "src": "14924:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1081, + "id": 1159, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "14345:15:0", + "referencedDeclaration": 76, + "src": "14924:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1082, + "id": 1160, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "14364:11:0", + "src": "14943:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1083, + "id": 1161, "isConstant": false, "isLValue": false, "isPure": true, @@ -54321,13 +61317,13 @@ "memberName": "Calculating", "nodeType": "MemberAccess", "referencedDeclaration": 11, - "src": "14364:23:0", + "src": "14943:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "14345:42:0", + "src": "14924:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54335,14 +61331,14 @@ }, { "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", - "id": 1085, + "id": 1163, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14401:24:0", + "src": "14980:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835", "typeString": "literal_string \"not in uploading phase\"" @@ -54361,7 +61357,7 @@ "typeString": "literal_string \"not in uploading phase\"" } ], - "id": 1079, + "id": 1157, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -54369,13 +61365,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "14324:7:0", + "src": "14903:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1086, + "id": 1164, "isConstant": false, "isLValue": false, "isPure": false, @@ -54383,88 +61379,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14324:111:0", + "src": "14903:111:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1087, + "id": 1165, "nodeType": "ExpressionStatement", - "src": "14324:111:0" + "src": "14903:111:0" }, { "assignments": [ - 1092 + 1170 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1170, "mutability": "mutable", "name": "commitments", - "nameLocation": "14477:11:0", + "nameLocation": "15056:11:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "14445:43:0", + "scope": 1216, + "src": "15024:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1090, + "id": 1168, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1089, + "id": 1167, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "14445:21:0" + "src": "15024:21:0" }, "referencedDeclaration": 49, - "src": "14445:21:0", + "src": "15024:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1091, + "id": 1169, "nodeType": "ArrayTypeName", - "src": "14445:23:0", + "src": "15024:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1096, + "id": 1174, "initialValue": { "baseExpression": { - "id": 1093, + "id": 1171, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "14491:21:0", + "src": "15070:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1095, + "id": 1173, "indexExpression": { - "id": 1094, + "id": 1172, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14526:6:0", + "referencedDeclaration": 1124, + "src": "15105:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -54475,77 +61471,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14491:51:0", + "src": "15070:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "14445:97:0" + "src": "15024:97:0" }, { "assignments": [ - 1099 + 1177 ], "declarations": [ { "constant": false, - "id": 1099, + "id": 1177, "mutability": "mutable", "name": "commitment", - "nameLocation": "14582:10:0", + "nameLocation": "15161:10:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "14552:40:0", + "scope": 1216, + "src": "15131:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1098, + "id": 1176, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1097, + "id": 1175, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "14552:21:0" + "src": "15131:21:0" }, "referencedDeclaration": 49, - "src": "14552:21:0", + "src": "15131:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1103, + "id": 1181, "initialValue": { "baseExpression": { - "id": 1100, + "id": 1178, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "14595:11:0", + "referencedDeclaration": 1170, + "src": "15174:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1102, + "id": 1180, "indexExpression": { - "id": 1101, + "id": 1179, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14607:5:0", + "referencedDeclaration": 1126, + "src": "15186:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -54556,14 +61552,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14595:18:0", + "src": "15174:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "14552:61:0" + "src": "15131:61:0" }, { "expression": { @@ -54573,7 +61569,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1112, + "id": 1190, "isConstant": false, "isLValue": false, "isPure": false, @@ -54582,18 +61578,18 @@ "expression": { "baseExpression": { "expression": { - "id": 1105, + "id": 1183, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "14644:10:0", + "referencedDeclaration": 1177, + "src": "15223:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1106, + "id": 1184, "isConstant": false, "isLValue": true, "isPure": false, @@ -54601,34 +61597,34 @@ "memberName": "weightCommitment", "nodeType": "MemberAccess", "referencedDeclaration": 41, - "src": "14644:27:0", + "src": "15223:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes storage ref)" } }, - "id": 1109, + "id": 1187, "indexExpression": { "expression": { - "id": 1107, + "id": 1185, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "14672:3:0", + "src": "15251:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1108, + "id": 1186, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "14672:10:0", + "src": "15251:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -54639,20 +61635,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14644:39:0", + "src": "15223:39:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1110, + "id": 1188, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "14644:46:0", + "src": "15223:46:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -54662,21 +61658,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 1111, + "id": 1189, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14694:1:0", + "src": "15273:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "14644:51:0", + "src": "15223:51:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54684,14 +61680,14 @@ }, { "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d756c7469706c652074696d6573", - "id": 1113, + "id": 1191, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14709:47:0", + "src": "15288:47:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086", "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" @@ -54710,7 +61706,7 @@ "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" } ], - "id": 1104, + "id": 1182, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -54718,13 +61714,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "14623:7:0", + "src": "15202:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1114, + "id": 1192, "isConstant": false, "isLValue": false, "isPure": false, @@ -54732,20 +61728,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14623:143:0", + "src": "15202:143:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1115, + "id": 1193, "nodeType": "ExpressionStatement", - "src": "14623:143:0" + "src": "15202:143:0" }, { "expression": { - "id": 1123, + "id": 1201, "isConstant": false, "isLValue": false, "isPure": false, @@ -54753,18 +61749,18 @@ "leftHandSide": { "baseExpression": { "expression": { - "id": 1116, + "id": 1194, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "14776:10:0", + "referencedDeclaration": 1177, + "src": "15355:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1120, + "id": 1198, "isConstant": false, "isLValue": true, "isPure": false, @@ -54772,34 +61768,34 @@ "memberName": "weightCommitment", "nodeType": "MemberAccess", "referencedDeclaration": 41, - "src": "14776:27:0", + "src": "15355:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", "typeString": "mapping(address => bytes storage ref)" } }, - "id": 1121, + "id": 1199, "indexExpression": { "expression": { - "id": 1118, + "id": 1196, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "14804:3:0", + "src": "15383:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1119, + "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "14804:10:0", + "src": "15383:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -54810,7 +61806,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "14776:39:0", + "src": "15355:39:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" @@ -54819,49 +61815,49 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1122, + "id": 1200, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14818:16:0", + "referencedDeclaration": 1128, + "src": "15397:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "src": "14776:58:0", + "src": "15355:58:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1124, + "id": 1202, "nodeType": "ExpressionStatement", - "src": "14776:58:0" + "src": "15355:58:0" }, { "eventCall": { "arguments": [ { - "id": 1126, + "id": 1204, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14878:6:0", + "referencedDeclaration": 1124, + "src": "15457:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1127, + "id": 1205, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14898:5:0", + "referencedDeclaration": 1126, + "src": "15477:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -54869,25 +61865,25 @@ }, { "expression": { - "id": 1128, + "id": 1206, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "14917:3:0", + "src": "15496:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1129, + "id": 1207, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "14917:10:0", + "src": "15496:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -54897,14 +61893,14 @@ "arguments": [ { "hexValue": "30", - "id": 1132, + "id": 1210, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14949:1:0", + "src": "15528:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -54919,26 +61915,26 @@ "typeString": "int_const 0" } ], - "id": 1131, + "id": 1209, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14941:7:0", + "src": "15520:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1130, + "id": 1208, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14941:7:0", + "src": "15520:7:0", "typeDescriptions": {} } }, - "id": 1133, + "id": 1211, "isConstant": false, "isLValue": false, "isPure": true, @@ -54946,7 +61942,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14941:10:0", + "src": "15520:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -54955,14 +61951,14 @@ }, { "hexValue": "574549474854", - "id": 1134, + "id": 1212, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14965:8:0", + "src": "15544:8:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58", "typeString": "literal_string \"WEIGHT\"" @@ -54970,12 +61966,12 @@ "value": "WEIGHT" }, { - "id": 1135, + "id": 1213, "name": "resultCommitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "14987:16:0", + "referencedDeclaration": 1128, + "src": "15566:16:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -55009,18 +62005,18 @@ "typeString": "bytes calldata" } ], - "id": 1125, + "id": 1203, "name": "ContentUploaded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "14849:15:0", + "referencedDeclaration": 179, + "src": "15428:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, - "id": 1136, + "id": 1214, "isConstant": false, "isLValue": false, "isPure": false, @@ -55028,86 +62024,86 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14849:164:0", + "src": "15428:164:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1137, + "id": 1215, "nodeType": "EmitStatement", - "src": "14844:169:0" + "src": "15423:169:0" } ] }, "documentation": { - "id": 1044, + "id": 1122, "nodeType": "StructuredDocumentation", - "src": "13688:196:0", + "src": "14267:196:0", "text": " @dev called by client, upload weight commitment\n @param taskId taskId\n @param round the task round\n @param resultCommitment masked model incremental commitment" }, "functionSelector": "ebd3e836", - "id": 1139, + "id": 1217, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1053, + "id": 1131, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "14033:6:0", + "referencedDeclaration": 1124, + "src": "14612:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1054, + "id": 1132, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1048, - "src": "14041:5:0", + "referencedDeclaration": 1126, + "src": "14620:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1055, + "id": 1133, "kind": "modifierInvocation", "modifierName": { - "id": 1052, + "id": 1130, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "14021:11:0" + "referencedDeclaration": 240, + "src": "14600:11:0" }, "nodeType": "ModifierInvocation", - "src": "14021:26:0" + "src": "14600:26:0" } ], "name": "uploadResultCommitment", - "nameLocation": "13898:22:0", + "nameLocation": "14477:22:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1051, + "id": 1129, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1046, + "id": 1124, "mutability": "mutable", "name": "taskId", - "nameLocation": "13938:6:0", + "nameLocation": "14517:6:0", "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "13930:14:0", + "scope": 1217, + "src": "14509:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -55115,10 +62111,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1045, + "id": 1123, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13930:7:0", + "src": "14509:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -55128,13 +62124,13 @@ }, { "constant": false, - "id": 1048, + "id": 1126, "mutability": "mutable", "name": "round", - "nameLocation": "13961:5:0", + "nameLocation": "14540:5:0", "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "13954:12:0", + "scope": 1217, + "src": "14533:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -55142,10 +62138,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1047, + "id": 1125, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "13954:6:0", + "src": "14533:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -55155,13 +62151,13 @@ }, { "constant": false, - "id": 1050, + "id": 1128, "mutability": "mutable", "name": "resultCommitment", - "nameLocation": "13991:16:0", + "nameLocation": "14570:16:0", "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "13976:31:0", + "scope": 1217, + "src": "14555:31:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -55169,10 +62165,10 @@ "typeString": "bytes" }, "typeName": { - "id": 1049, + "id": 1127, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "13976:5:0", + "src": "14555:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -55181,287 +62177,624 @@ "visibility": "internal" } ], - "src": "13920:93:0" + "src": "14499:93:0" }, "returnParameters": { - "id": 1056, + "id": 1134, "nodeType": "ParameterList", "parameters": [], - "src": "14048:0:0" + "src": "14627:0:0" }, - "scope": 1663, - "src": "13889:1131:0", + "scope": 1927, + "src": "14468:1131:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1239, + "id": 1368, "nodeType": "Block", - "src": "15455:977:0", + "src": "16083:1489:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1164, + "id": 1240, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { + "expression": { + "id": 1236, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "16114:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16114:16:0", + "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 1238, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16134:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } }, - "id": 1159, + "id": 1239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1156, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "15486:14:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16134:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16114:42:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f2073656564436f6d6d69746d656e7473206c656e677468", + "id": 1241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16170:57:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", + "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" + }, + "value": "receivers length is not equal to seedCommitments length" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", + "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" + } + ], + "id": 1235, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16093:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16093:144:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1243, + "nodeType": "ExpressionStatement", + "src": "16093:144:0" + }, + { + "body": { + "id": 1272, + "nodeType": "Block", + "src": "16300:232:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1256, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16339:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1258, + "indexExpression": { + "id": 1257, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16355:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16339:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16339:25:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16367:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "16339:29:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1267, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1262, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16392:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1264, + "indexExpression": { + "id": 1263, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16408:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16392:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16392:25:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1266, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "16421:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "16392:49:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16339:102:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15486:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16459:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15510:1:0", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1255, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16314:7:0", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "15486:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } }, - "id": 1163, + "id": 1270, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1160, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "15531:14:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15531:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1162, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "15556:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "15531:45:0", + "names": [], + "nodeType": "FunctionCall", + "src": "16314:207:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "src": "15486:90:0", + "id": 1271, + "nodeType": "ExpressionStatement", + "src": "16314:207:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1248, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16267:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1249, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16271:15:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16271:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16267:26:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1273, + "initializationExpression": { + "assignments": [ + 1245 + ], + "declarations": [ { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1165, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15590:48:0", + "constant": false, + "id": 1245, + "mutability": "mutable", + "name": "i", + "nameLocation": "16260:1:0", + "nodeType": "VariableDeclaration", + "scope": 1273, + "src": "16252:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "value": "commitment length exceeds limit or it is empty" + "typeName": { + "id": 1244, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16252:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" } ], + "id": 1247, + "initialValue": { + "hexValue": "30", + "id": 1246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16264:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "16252:13:0" + }, + "loopExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "id": 1253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "16295:3:0", + "subExpression": { + "id": 1252, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "16295:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 1155, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15465:7:0", + }, "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": 1166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15465:183:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1254, + "nodeType": "ExpressionStatement", + "src": "16295:3:0" }, - "id": 1167, - "nodeType": "ExpressionStatement", - "src": "15465:183:0" + "nodeType": "ForStatement", + "src": "16247:285:0" }, { "assignments": [ - 1170 + 1276 ], "declarations": [ { "constant": false, - "id": 1170, + "id": 1276, "mutability": "mutable", "name": "curRound", - "nameLocation": "15676:8:0", + "nameLocation": "16559:8:0", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "15658:26:0", + "scope": 1368, + "src": "16541:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1169, + "id": 1275, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1168, + "id": 1274, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "15658:9:0" + "referencedDeclaration": 85, + "src": "16541:9:0" }, - "referencedDeclaration": 83, - "src": "15658:9:0", + "referencedDeclaration": 85, + "src": "16541:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1176, + "id": 1282, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1171, + "id": 1277, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "15687:10:0", + "src": "16570:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1173, + "id": 1279, "indexExpression": { - "id": 1172, + "id": 1278, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15698:6:0", + "referencedDeclaration": 1220, + "src": "16581:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -55472,20 +62805,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15687:18:0", + "src": "16570:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1175, + "id": 1281, "indexExpression": { - "id": 1174, + "id": 1280, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15706:5:0", + "referencedDeclaration": 1222, + "src": "16589:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -55496,14 +62829,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15687:25:0", + "src": "16570:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "15658:54:0" + "src": "16541:54:0" }, { "expression": { @@ -55511,56 +62844,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1182, + "id": 1288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1178, + "id": 1284, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1170, - "src": "15743:8:0", + "referencedDeclaration": 1276, + "src": "16626:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1179, + "id": 1285, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "15743:15:0", + "referencedDeclaration": 76, + "src": "16626:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1180, + "id": 1286, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "15762:11:0", + "src": "16645:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1181, + "id": 1287, "isConstant": false, "isLValue": false, "isPure": true, @@ -55568,13 +62901,13 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "15762:19:0", + "src": "16645:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "15743:38:0", + "src": "16626:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -55582,14 +62915,14 @@ }, { "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1183, + "id": 1289, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15795:29:0", + "src": "16678:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", "typeString": "literal_string \"not in secret sharing phase\"" @@ -55608,7 +62941,7 @@ "typeString": "literal_string \"not in secret sharing phase\"" } ], - "id": 1177, + "id": 1283, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -55616,13 +62949,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15722:7:0", + "src": "16605:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1184, + "id": 1290, "isConstant": false, "isLValue": false, "isPure": false, @@ -55630,88 +62963,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15722:112:0", + "src": "16605:112:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1185, + "id": 1291, "nodeType": "ExpressionStatement", - "src": "15722:112:0" + "src": "16605:112:0" }, { "assignments": [ - 1190 + 1296 ], "declarations": [ { "constant": false, - "id": 1190, + "id": 1296, "mutability": "mutable", "name": "commitments", - "nameLocation": "15876:11:0", + "nameLocation": "16759:11:0", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "15844:43:0", + "scope": 1368, + "src": "16727:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1188, + "id": 1294, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1187, + "id": 1293, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "15844:21:0" + "src": "16727:21:0" }, "referencedDeclaration": 49, - "src": "15844:21:0", + "src": "16727:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1189, + "id": 1295, "nodeType": "ArrayTypeName", - "src": "15844:23:0", + "src": "16727:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1194, + "id": 1300, "initialValue": { "baseExpression": { - "id": 1191, + "id": 1297, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "15890:21:0", + "src": "16773:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1193, + "id": 1299, "indexExpression": { - "id": 1192, + "id": 1298, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15925:6:0", + "referencedDeclaration": 1220, + "src": "16808:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -55722,77 +63055,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15890:51:0", + "src": "16773:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "15844:97:0" + "src": "16727:97:0" }, { "assignments": [ - 1197 + 1303 ], "declarations": [ { "constant": false, - "id": 1197, + "id": 1303, "mutability": "mutable", "name": "commitment", - "nameLocation": "15981:10:0", + "nameLocation": "16864:10:0", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "15951:40:0", + "scope": 1368, + "src": "16834:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1196, + "id": 1302, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1195, + "id": 1301, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "15951:21:0" + "src": "16834:21:0" }, "referencedDeclaration": 49, - "src": "15951:21:0", + "src": "16834:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1201, + "id": 1307, "initialValue": { "baseExpression": { - "id": 1198, + "id": 1304, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1190, - "src": "15994:11:0", + "referencedDeclaration": 1296, + "src": "16877:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1200, + "id": 1306, "indexExpression": { - "id": 1199, + "id": 1305, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "16006:5:0", + "referencedDeclaration": 1222, + "src": "16889:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -55803,46 +63136,288 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15994:18:0", + "src": "16877:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "15951:61:0" + "src": "16834:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1366, + "nodeType": "Block", + "src": "16958:608:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1320, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1303, + "src": "16997:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1321, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "16997:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1324, + "indexExpression": { + "expression": { + "id": 1322, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "17036:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17036:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16997:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1328, + "indexExpression": { + "baseExpression": { + "id": 1325, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "17048:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1327, + "indexExpression": { + "id": 1326, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17058:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17048:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16997:64:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1329, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "seedCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 101, + "src": "16997:100:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16997:128:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1331, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17129:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "16997:133:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", + "id": 1333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17148:40:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + }, + "value": "cannot upload seed cmmt multiple times" + } + ], "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + } + ], + "id": 1319, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16972:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16972:230:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1335, + "nodeType": "ExpressionStatement", + "src": "16972:230:0" + }, + { + "expression": { + "id": 1350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1203, + "id": 1336, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1197, - "src": "16043:10:0", + "referencedDeclaration": 1303, + "src": "17216:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1204, + "id": 1343, "isConstant": false, "isLValue": true, "isPure": false, @@ -55850,34 +63425,34 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "16043:17:0", + "src": "17216:30:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1207, + "id": 1344, "indexExpression": { "expression": { - "id": 1205, + "id": 1338, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "16061:3:0", + "src": "17247:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1206, + "id": 1339, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "16061:10:0", + "src": "17247:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -55888,505 +63463,541 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16043:29:0", + "src": "17216:42:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1345, + "indexExpression": { + "baseExpression": { + "id": 1340, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "17259:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1342, + "indexExpression": { + "id": 1341, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17269:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17259:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17216:56:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1346, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "seedCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 101, + "src": "17216:71:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1347, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "17290:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1349, + "indexExpression": { + "id": 1348, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17323:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17290:48:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "17216:122:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1351, + "nodeType": "ExpressionStatement", + "src": "17216:122:0" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1353, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1220, + "src": "17390:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1354, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1222, + "src": "17414:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "expression": { + "id": 1355, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "17437:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17437:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 1357, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1225, + "src": "17465:9:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, - "id": 1209, + "id": 1359, "indexExpression": { - "id": 1208, - "name": "sharee", + "id": 1358, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "16073:6:0", + "referencedDeclaration": 1309, + "src": "17475:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16043:37:0", + "src": "17465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1210, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "16043:52:0", + { + "hexValue": "53454544434d4d54", + "id": 1360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17495:10:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", + "typeString": "literal_string \"SEEDCMMT\"" + }, + "value": "SEEDCMMT" + }, + { + "baseExpression": { + "id": 1361, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "17523:15:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1363, + "indexExpression": { + "id": 1362, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "17539:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17523:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", + "typeString": "literal_string \"SEEDCMMT\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1352, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "17357:15:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, - "id": 1211, + "id": 1364, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16043:59:0", + "names": [], + "nodeType": "FunctionCall", + "src": "17357:198:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1212, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16106:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16043:64:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", - "id": 1214, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16121:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - }, - "value": "cannot upload seed cmmt multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - } - ], - "id": 1202, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16022:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "id": 1365, + "nodeType": "EmitStatement", + "src": "17352:203:0" } - }, - "id": 1215, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16022:149:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ] }, - "id": 1216, - "nodeType": "ExpressionStatement", - "src": "16022:149:0" - }, - { - "expression": { - "id": 1227, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1315, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { + "leftExpression": { + "id": 1312, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "16925:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1217, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1197, - "src": "16181:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } - }, - "id": 1222, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "16181:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1223, - "indexExpression": { - "expression": { - "id": 1219, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "16199:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "16199:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16181:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1224, - "indexExpression": { - "id": 1221, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "16211:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16181:37:0", + "id": 1313, + "name": "seedCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1228, + "src": "16929:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "id": 1225, + "id": 1314, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberName": "seedCommitment", + "lValueRequested": false, + "memberName": "length", "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "16181:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1226, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "16236:14:0", + "src": "16929:22:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "16181:69:0", + "src": "16925:26:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1228, - "nodeType": "ExpressionStatement", - "src": "16181:69:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1230, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "16294:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, + "id": 1367, + "initializationExpression": { + "assignments": [ + 1309 + ], + "declarations": [ { - "id": 1231, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "16314:5:0", + "constant": false, + "id": 1309, + "mutability": "mutable", + "name": "i", + "nameLocation": "16918:1:0", + "nodeType": "VariableDeclaration", + "scope": 1367, + "src": "16910:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1232, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "16333:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1308, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16910:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "16333:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "visibility": "internal" + } + ], + "id": 1311, + "initialValue": { + "hexValue": "30", + "id": 1310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16922:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1234, - "name": "sharee", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "16910:13:0" + }, + "loopExpression": { + "expression": { + "id": 1317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "16953:3:0", + "subExpression": { + "id": 1316, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "16357:6:0", + "referencedDeclaration": 1309, + "src": "16953:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - { - "hexValue": "53454544434d4d54", - "id": 1235, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16377:10:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - "value": "SEEDCMMT" - }, - { - "id": 1236, - "name": "seedCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "16401:14:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1229, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "16265:15:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16265:160:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1318, + "nodeType": "ExpressionStatement", + "src": "16953:3:0" }, - "id": 1238, - "nodeType": "EmitStatement", - "src": "16260:165:0" + "nodeType": "ForStatement", + "src": "16905:661:0" } ] }, "documentation": { - "id": 1140, + "id": 1218, "nodeType": "StructuredDocumentation", - "src": "15026:245:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param sharee the sharee address\n @param seedCommitment secret sharing piece of seed mask" + "src": "15605:277:0", + "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param seedCommitments seedCommitments[i] is the commitment send to receivers[i]" }, - "functionSelector": "c99f61d4", - "id": 1240, + "functionSelector": "b194c028", + "id": 1369, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1151, + "id": 1231, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15440:6:0", + "referencedDeclaration": 1220, + "src": "16068:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1152, + "id": 1232, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15448:5:0", + "referencedDeclaration": 1222, + "src": "16076:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1153, + "id": 1233, "kind": "modifierInvocation", "modifierName": { - "id": 1150, + "id": 1230, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "15428:11:0" + "referencedDeclaration": 240, + "src": "16056:11:0" }, "nodeType": "ModifierInvocation", - "src": "15428:26:0" + "src": "16056:26:0" } ], "name": "uploadSeedCommitment", - "nameLocation": "15285:20:0", + "nameLocation": "15896:20:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1149, + "id": 1229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1142, + "id": 1220, "mutability": "mutable", "name": "taskId", - "nameLocation": "15323:6:0", + "nameLocation": "15934:6:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15315:14:0", + "scope": 1369, + "src": "15926:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -56394,10 +64005,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1141, + "id": 1219, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "15315:7:0", + "src": "15926:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -56407,13 +64018,13 @@ }, { "constant": false, - "id": 1144, + "id": 1222, "mutability": "mutable", "name": "round", - "nameLocation": "15346:5:0", + "nameLocation": "15957:5:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15339:12:0", + "scope": 1369, + "src": "15950:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -56421,10 +64032,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1143, + "id": 1221, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "15339:6:0", + "src": "15950:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -56434,232 +64045,186 @@ }, { "constant": false, - "id": 1146, + "id": 1225, "mutability": "mutable", - "name": "sharee", - "nameLocation": "15369:6:0", + "name": "receivers", + "nameLocation": "15991:9:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15361:14:0", + "scope": 1369, + "src": "15972:28:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1145, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15361:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1223, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15972:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1224, + "nodeType": "ArrayTypeName", + "src": "15972:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1148, + "id": 1228, "mutability": "mutable", - "name": "seedCommitment", - "nameLocation": "15400:14:0", + "name": "seedCommitments", + "nameLocation": "16027:15:0", "nodeType": "VariableDeclaration", - "scope": 1240, - "src": "15385:29:0", + "scope": 1369, + "src": "16010:32:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1147, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15385:5:0", + "baseType": { + "id": 1226, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16010:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1227, + "nodeType": "ArrayTypeName", + "src": "16010:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "15305:115:0" + "src": "15916:132:0" }, "returnParameters": { - "id": 1154, + "id": 1234, "nodeType": "ParameterList", "parameters": [], - "src": "15455:0:0" + "src": "16083:0:0" }, - "scope": 1663, - "src": "15276:1156:0", + "scope": 1927, + "src": "15887:1685:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1355, + "id": 1537, "nodeType": "Block", - "src": "16818:967:0", + "src": "17997:1484:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1265, + "id": 1392, "isConstant": false, "isLValue": false, "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1388, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "18028:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } }, - "id": 1260, + "id": 1389, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1257, - "name": "seed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "16849:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16849:11:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16863:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16849:15:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18028:14:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "&&", + "operator": "==", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1264, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1261, - "name": "seed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "16868:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1262, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16868:11:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1263, - "name": "maxSSComitmentLength", + "expression": { + "id": 1390, + "name": "seeds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "16883:20:0", + "referencedDeclaration": 1380, + "src": "18046:5:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "src": "16868:35:0", + "id": 1391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18046:12:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "16849:54:0", + "src": "18028:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1266, + "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365656473206c656e677468", + "id": 1393, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16917:48:0", + "src": "18072:45:0", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", + "typeString": "literal_string \"senders length is not equal to seeds length\"" }, - "value": "commitment length exceeds limit or it is empty" + "value": "senders length is not equal to seeds length" } ], "expression": { @@ -56669,11 +64234,11 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", + "typeString": "literal_string \"senders length is not equal to seeds length\"" } ], - "id": 1256, + "id": 1387, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -56681,13 +64246,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "16828:7:0", + "src": "18007:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1267, + "id": 1394, "isConstant": false, "isLValue": false, "isPure": false, @@ -56695,80 +64260,481 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16828:147:0", + "src": "18007:120:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1268, + "id": 1395, "nodeType": "ExpressionStatement", - "src": "16828:147:0" + "src": "18007:120:0" + }, + { + "body": { + "id": 1424, + "nodeType": "Block", + "src": "18180:192:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1408, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18219:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1410, + "indexExpression": { + "id": 1409, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18225:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18219:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18219:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18237:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18219:19:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1414, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18242:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1416, + "indexExpression": { + "id": 1415, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18248:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18242:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18242:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1418, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "18261:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "18242:39:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18219:62:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18299:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1407, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "18194:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18194:167:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1423, + "nodeType": "ExpressionStatement", + "src": "18194:167:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1400, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18157:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1401, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "18161:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18161:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18157:16:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1425, + "initializationExpression": { + "assignments": [ + 1397 + ], + "declarations": [ + { + "constant": false, + "id": 1397, + "mutability": "mutable", + "name": "i", + "nameLocation": "18150:1:0", + "nodeType": "VariableDeclaration", + "scope": 1425, + "src": "18142:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1396, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18142:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1399, + "initialValue": { + "hexValue": "30", + "id": 1398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18154:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "18142:13:0" + }, + "loopExpression": { + "expression": { + "id": 1405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "18175:3:0", + "subExpression": { + "id": 1404, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "18175:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1406, + "nodeType": "ExpressionStatement", + "src": "18175:3:0" + }, + "nodeType": "ForStatement", + "src": "18137:235:0" }, { "assignments": [ - 1271 + 1428 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1428, "mutability": "mutable", "name": "curRound", - "nameLocation": "17003:8:0", + "nameLocation": "18399:8:0", "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "16985:26:0", + "scope": 1537, + "src": "18381:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1270, + "id": 1427, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1269, + "id": 1426, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "16985:9:0" + "referencedDeclaration": 85, + "src": "18381:9:0" }, - "referencedDeclaration": 83, - "src": "16985:9:0", + "referencedDeclaration": 85, + "src": "18381:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1277, + "id": 1434, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1272, + "id": 1429, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "17014:10:0", + "src": "18410:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1274, + "id": 1431, "indexExpression": { - "id": 1273, + "id": 1430, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "17025:6:0", + "referencedDeclaration": 1372, + "src": "18421:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -56779,20 +64745,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17014:18:0", + "src": "18410:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1276, + "id": 1433, "indexExpression": { - "id": 1275, + "id": 1432, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "17033:5:0", + "referencedDeclaration": 1374, + "src": "18429:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -56803,14 +64769,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17014:25:0", + "src": "18410:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "16985:54:0" + "src": "18381:54:0" }, { "expression": { @@ -56818,56 +64784,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1283, + "id": 1440, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1279, + "id": 1436, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "17070:8:0", + "referencedDeclaration": 1428, + "src": "18466:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1280, + "id": 1437, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "17070:15:0", + "referencedDeclaration": 76, + "src": "18466:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1281, + "id": 1438, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "17089:11:0", + "src": "18485:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1282, + "id": 1439, "isConstant": false, "isLValue": false, "isPure": true, @@ -56875,13 +64841,13 @@ "memberName": "Aggregating", "nodeType": "MemberAccess", "referencedDeclaration": 12, - "src": "17089:23:0", + "src": "18485:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "17070:42:0", + "src": "18466:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -56889,14 +64855,14 @@ }, { "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1284, + "id": 1441, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "17126:24:0", + "src": "18522:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", "typeString": "literal_string \"not in upload ss phase\"" @@ -56915,7 +64881,7 @@ "typeString": "literal_string \"not in upload ss phase\"" } ], - "id": 1278, + "id": 1435, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -56923,13 +64889,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "17049:7:0", + "src": "18445:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1285, + "id": 1442, "isConstant": false, "isLValue": false, "isPure": false, @@ -56937,88 +64903,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17049:111:0", + "src": "18445:111:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1286, + "id": 1443, "nodeType": "ExpressionStatement", - "src": "17049:111:0" + "src": "18445:111:0" }, { "assignments": [ - 1291 + 1448 ], "declarations": [ { "constant": false, - "id": 1291, + "id": 1448, "mutability": "mutable", "name": "commitments", - "nameLocation": "17202:11:0", + "nameLocation": "18598:11:0", "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "17170:43:0", + "scope": 1537, + "src": "18566:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1289, + "id": 1446, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1288, + "id": 1445, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "17170:21:0" + "src": "18566:21:0" }, "referencedDeclaration": 49, - "src": "17170:21:0", + "src": "18566:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1290, + "id": 1447, "nodeType": "ArrayTypeName", - "src": "17170:23:0", + "src": "18566:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1295, + "id": 1452, "initialValue": { "baseExpression": { - "id": 1292, + "id": 1449, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "17216:21:0", + "src": "18612:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1294, + "id": 1451, "indexExpression": { - "id": 1293, + "id": 1450, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "17251:6:0", + "referencedDeclaration": 1372, + "src": "18647:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -57029,77 +64995,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17216:51:0", + "src": "18612:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "17170:97:0" + "src": "18566:97:0" }, { "assignments": [ - 1298 + 1455 ], "declarations": [ { "constant": false, - "id": 1298, + "id": 1455, "mutability": "mutable", "name": "commitment", - "nameLocation": "17307:10:0", + "nameLocation": "18703:10:0", "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "17277:40:0", + "scope": 1537, + "src": "18673:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1297, + "id": 1454, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1296, + "id": 1453, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "17277:21:0" + "src": "18673:21:0" }, "referencedDeclaration": 49, - "src": "17277:21:0", + "src": "18673:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1302, + "id": 1459, "initialValue": { "baseExpression": { - "id": 1299, + "id": 1456, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "17320:11:0", + "referencedDeclaration": 1448, + "src": "18716:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1301, + "id": 1458, "indexExpression": { - "id": 1300, + "id": 1457, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "17332:5:0", + "referencedDeclaration": 1374, + "src": "18728:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -57110,264 +65076,531 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17320:18:0", + "src": "18716:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "17277:61:0" + "src": "18673:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1535, + "nodeType": "Block", + "src": "18787:688:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1472, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1455, + "src": "18826:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1473, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "18826:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1477, + "indexExpression": { + "baseExpression": { + "id": 1474, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "18865:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1476, + "indexExpression": { + "id": 1475, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "18873:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18865:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18826:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1480, + "indexExpression": { + "expression": { + "id": 1478, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "18877:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "18877:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18826:62:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1481, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "seedCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 101, + "src": "18826:98:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18826:126:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18955:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18826:130:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", + "id": 1485, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18974:30:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + }, + "value": "must upload commitment first" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + } + ], + "id": 1471, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "18801:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18801:217:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { + "id": 1487, + "nodeType": "ExpressionStatement", + "src": "18801:217:0" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { "expression": { - "id": 1304, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "17369:10:0", + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1489, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1455, + "src": "19057:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1490, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "19057:17:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1494, + "indexExpression": { + "baseExpression": { + "id": 1491, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "19075:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1493, + "indexExpression": { + "id": 1492, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19083:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19075:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19057:29:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1497, + "indexExpression": { + "expression": { + "id": 1495, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "19087:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19087:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19057:41:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1305, + "id": 1498, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "17369:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1308, - "indexExpression": { - "expression": { - "id": 1306, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17387:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", + "memberName": "seedPiece", "nodeType": "MemberAccess", - "src": "17387:10:0", + "referencedDeclaration": 99, + "src": "19057:51:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" } }, + "id": 1499, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17369:29:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "19057:58:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1310, - "indexExpression": { - "id": 1309, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17399:6:0", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19119:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, + "src": "19057:63:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", + "id": 1502, "isConstant": false, - "isLValue": true, - "isPure": false, + "isLValue": false, + "isPure": true, + "kind": "string", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17369:37:0", + "nodeType": "Literal", + "src": "19138:35:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" + }, + "value": "cannot upload seed multiple times" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" } - }, - "id": 1311, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "17369:52:0", + ], + "id": 1488, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "19032:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "id": 1312, + "id": 1503, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "17369:59:0", + "names": [], + "nodeType": "FunctionCall", + "src": "19032:155:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1313, + "id": 1504, + "nodeType": "ExpressionStatement", + "src": "19032:155:0" + }, + { + "expression": { + "id": 1519, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "17431:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "17369:63:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17446:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1303, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17348:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17348:138:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1317, - "nodeType": "ExpressionStatement", - "src": "17348:138:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1319, + "id": 1505, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "17517:10:0", + "referencedDeclaration": 1455, + "src": "19201:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1320, + "id": 1512, "isConstant": false, "isLValue": true, "isPure": false, @@ -57375,34 +65608,45 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "17517:17:0", + "src": "19201:17:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1323, + "id": 1513, "indexExpression": { - "expression": { - "id": 1321, - "name": "msg", + "baseExpression": { + "id": 1507, + "name": "senders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17535:3:0", + "referencedDeclaration": 1377, + "src": "19219:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1509, + "indexExpression": { + "id": 1508, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19227:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1322, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17535:10:0", + "nodeType": "IndexAccess", + "src": "19219:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -57413,20 +65657,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17517:29:0", + "src": "19201:29:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" } }, - "id": 1325, + "id": 1514, "indexExpression": { - "id": 1324, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17547:6:0", + "expression": { + "id": 1510, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "19231:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19231:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -57437,481 +65695,492 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17517:37:0", + "src": "19201:41:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1326, + "id": 1515, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, + "lValueRequested": true, "memberName": "seedPiece", "nodeType": "MemberAccess", - "referencedDeclaration": 97, - "src": "17517:47:0", + "referencedDeclaration": 99, + "src": "19201:51:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "17517:54:0", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1516, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "19255:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1518, + "indexExpression": { + "id": 1517, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19261:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19255:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "19201:62:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1328, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17575:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "17517:59:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + "id": 1520, + "nodeType": "ExpressionStatement", + "src": "19201:62:0" }, { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17590:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1318, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17496:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17496:139:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1332, - "nodeType": "ExpressionStatement", - "src": "17496:139:0" - }, - { - "expression": { - "id": 1343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1333, - "name": "commitment", + "eventCall": { + "arguments": [ + { + "id": 1522, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1372, + "src": "19315:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1523, + "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "17645:10:0", + "referencedDeclaration": 1374, + "src": "19339:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "baseExpression": { + "id": 1524, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1377, + "src": "19362:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1526, + "indexExpression": { + "id": 1525, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19370:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19362:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1527, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "19390:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19390:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "53454544", + "id": 1529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19418:6:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", + "typeString": "literal_string \"SEED\"" + }, + "value": "SEED" + }, + { + "baseExpression": { + "id": 1530, + "name": "seeds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1380, + "src": "19442:5:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1532, + "indexExpression": { + "id": 1531, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1461, + "src": "19448:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19442:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "id": 1338, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "17645:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" } - }, - "id": 1339, - "indexExpression": { - "expression": { - "id": 1335, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17663:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", + "typeString": "literal_string \"SEED\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "id": 1336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17663:10:0", + ], + "id": 1521, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "19282:15:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, + "id": 1533, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17645:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1340, - "indexExpression": { - "id": 1337, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17675:6:0", + "names": [], + "nodeType": "FunctionCall", + "src": "19282:182:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17645:37:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" - } - }, - "id": 1341, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 97, - "src": "17645:47:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "id": 1534, + "nodeType": "EmitStatement", + "src": "19277:187:0" } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1342, - "name": "seed", + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1464, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "17695:4:0", + "referencedDeclaration": 1461, + "src": "18764:1:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "17645:54:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1344, - "nodeType": "ExpressionStatement", - "src": "17645:54:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1346, - "name": "taskId", + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1465, + "name": "seeds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "17730:6:0", + "referencedDeclaration": 1380, + "src": "18768:5:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18768:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18764:16:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1536, + "initializationExpression": { + "assignments": [ + 1461 + ], + "declarations": [ { - "id": 1347, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "17738:5:0", + "constant": false, + "id": 1461, + "mutability": "mutable", + "name": "i", + "nameLocation": "18757:1:0", + "nodeType": "VariableDeclaration", + "scope": 1536, + "src": "18749:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1348, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17745:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18749:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17745:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "visibility": "internal" + } + ], + "id": 1463, + "initialValue": { + "hexValue": "30", + "id": 1462, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18761:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1350, - "name": "sharee", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "18749:13:0" + }, + "loopExpression": { + "expression": { + "id": 1469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "18782:3:0", + "subExpression": { + "id": 1468, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1247, - "src": "17757:6:0", + "referencedDeclaration": 1461, + "src": "18782:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - { - "hexValue": "53454544", - "id": 1351, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17765:6:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - "value": "SEED" - }, - { - "id": 1352, - "name": "seed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1249, - "src": "17773:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1345, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "17714:15:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1353, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17714:64:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1470, + "nodeType": "ExpressionStatement", + "src": "18782:3:0" }, - "id": 1354, - "nodeType": "EmitStatement", - "src": "17709:69:0" + "nodeType": "ForStatement", + "src": "18744:731:0" } ] }, "documentation": { - "id": 1241, + "id": 1370, "nodeType": "StructuredDocumentation", - "src": "16438:216:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param sharee the sharee address\n @param seed the seed piece" + "src": "17578:240:0", + "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param seeds seeds[i] is the seed send by senders[i]" }, - "functionSelector": "90ec5deb", - "id": 1356, + "functionSelector": "1fd38b83", + "id": 1538, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1252, + "id": 1383, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1243, - "src": "16803:6:0", + "referencedDeclaration": 1372, + "src": "17982:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1253, + "id": 1384, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16811:5:0", + "referencedDeclaration": 1374, + "src": "17990:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1254, + "id": 1385, "kind": "modifierInvocation", "modifierName": { - "id": 1251, + "id": 1382, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "16791:11:0" + "referencedDeclaration": 240, + "src": "17970:11:0" }, "nodeType": "ModifierInvocation", - "src": "16791:26:0" + "src": "17970:26:0" } ], "name": "uploadSeed", - "nameLocation": "16668:10:0", + "nameLocation": "17832:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1250, + "id": 1381, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1243, + "id": 1372, "mutability": "mutable", "name": "taskId", - "nameLocation": "16696:6:0", + "nameLocation": "17860:6:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16688:14:0", + "scope": 1538, + "src": "17852:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -57919,10 +66188,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1242, + "id": 1371, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "16688:7:0", + "src": "17852:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -57932,13 +66201,13 @@ }, { "constant": false, - "id": 1245, + "id": 1374, "mutability": "mutable", "name": "round", - "nameLocation": "16719:5:0", + "nameLocation": "17883:5:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16712:12:0", + "scope": 1538, + "src": "17876:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -57946,10 +66215,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1244, + "id": 1373, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "16712:6:0", + "src": "17876:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -57959,341 +66228,696 @@ }, { "constant": false, - "id": 1247, + "id": 1377, "mutability": "mutable", - "name": "sharee", - "nameLocation": "16742:6:0", + "name": "senders", + "nameLocation": "17917:7:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16734:14:0", + "scope": 1538, + "src": "17898:26:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1246, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16734:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1375, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17898:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1376, + "nodeType": "ArrayTypeName", + "src": "17898:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1249, + "id": 1380, "mutability": "mutable", - "name": "seed", - "nameLocation": "16773:4:0", + "name": "seeds", + "nameLocation": "17951:5:0", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "16758:19:0", + "scope": 1538, + "src": "17934:22:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1248, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16758:5:0", + "baseType": { + "id": 1378, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "17934:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1379, + "nodeType": "ArrayTypeName", + "src": "17934:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "16678:105:0" + "src": "17842:120:0" }, "returnParameters": { - "id": 1255, + "id": 1386, "nodeType": "ParameterList", "parameters": [], - "src": "16818:0:0" + "src": "17997:0:0" }, - "scope": 1663, - "src": "16659:1126:0", + "scope": 1927, + "src": "17823:1658:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1467, + "id": 1689, "nodeType": "Block", - "src": "18233:1236:0", + "src": "19983:1536:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1381, + "id": 1561, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { + "expression": { + "id": 1557, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "20014:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20014:16:0", + "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 1559, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20034:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } }, - "id": 1376, + "id": 1560, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1373, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "18264:19:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20034:27:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20014:47:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f207365637265744b6579436f6d6d69746d656e7473206c656e677468", + "id": 1562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20075:62:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", + "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" + }, + "value": "receivers length is not equal to secretKeyCommitments length" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", + "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" + } + ], + "id": 1556, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "19993:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19993:154:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1564, + "nodeType": "ExpressionStatement", + "src": "19993:154:0" + }, + { + "body": { + "id": 1593, + "nodeType": "Block", + "src": "20215:242:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1577, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20254:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1579, + "indexExpression": { + "id": 1578, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20275:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20254:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20254:30:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20287:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20254:34:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1583, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20312:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1585, + "indexExpression": { + "id": 1584, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20333:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20312:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20312:30:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1587, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "20346:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "20312:54:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "20254:112:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 1374, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18264:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20384:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1375, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18293:1:0", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1576, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "20229:7:0", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18264:30:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } }, - "id": 1380, + "id": 1591, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1377, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "18314:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1378, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18314:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1379, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "18344:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "18314:50:0", + "names": [], + "nodeType": "FunctionCall", + "src": "20229:217:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "src": "18264:100:0", + "id": 1592, + "nodeType": "ExpressionStatement", + "src": "20229:217:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1569, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20177:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1570, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "20181:20:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20181:27:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20177:31:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1594, + "initializationExpression": { + "assignments": [ + 1566 + ], + "declarations": [ { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1382, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18378:48:0", + "constant": false, + "id": 1566, + "mutability": "mutable", + "name": "i", + "nameLocation": "20170:1:0", + "nodeType": "VariableDeclaration", + "scope": 1594, + "src": "20162:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "value": "commitment length exceeds limit or it is empty" + "typeName": { + "id": 1565, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20162:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" } ], + "id": 1568, + "initialValue": { + "hexValue": "30", + "id": 1567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20174:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "20162:13:0" + }, + "loopExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "id": 1574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "20210:3:0", + "subExpression": { + "id": 1573, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1566, + "src": "20210:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 1372, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18243:7:0", + }, "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": 1383, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18243:193:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1575, + "nodeType": "ExpressionStatement", + "src": "20210:3:0" }, - "id": 1384, - "nodeType": "ExpressionStatement", - "src": "18243:193:0" + "nodeType": "ForStatement", + "src": "20157:300:0" }, { "assignments": [ - 1387 + 1597 ], "declarations": [ { "constant": false, - "id": 1387, + "id": 1597, "mutability": "mutable", "name": "curRound", - "nameLocation": "18464:8:0", + "nameLocation": "20484:8:0", "nodeType": "VariableDeclaration", - "scope": 1467, - "src": "18446:26:0", + "scope": 1689, + "src": "20466:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1386, + "id": 1596, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1385, + "id": 1595, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "18446:9:0" + "referencedDeclaration": 85, + "src": "20466:9:0" }, - "referencedDeclaration": 83, - "src": "18446:9:0", + "referencedDeclaration": 85, + "src": "20466:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1393, + "id": 1603, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1388, + "id": 1598, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "18475:10:0", + "src": "20495:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1390, + "id": 1600, "indexExpression": { - "id": 1389, + "id": 1599, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "18486:6:0", + "referencedDeclaration": 1541, + "src": "20506:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -58304,20 +66928,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18475:18:0", + "src": "20495:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1392, + "id": 1602, "indexExpression": { - "id": 1391, + "id": 1601, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18494:5:0", + "referencedDeclaration": 1543, + "src": "20514:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -58328,14 +66952,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18475:25:0", + "src": "20495:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "18446:54:0" + "src": "20466:54:0" }, { "expression": { @@ -58343,56 +66967,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1399, + "id": 1609, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1395, + "id": 1605, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1387, - "src": "18531:8:0", + "referencedDeclaration": 1597, + "src": "20551:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1396, + "id": 1606, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "18531:15:0", + "referencedDeclaration": 76, + "src": "20551:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1397, + "id": 1607, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "18550:11:0", + "src": "20570:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1398, + "id": 1608, "isConstant": false, "isLValue": false, "isPure": true, @@ -58400,13 +67024,13 @@ "memberName": "Running", "nodeType": "MemberAccess", "referencedDeclaration": 10, - "src": "18550:19:0", + "src": "20570:19:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "18531:38:0", + "src": "20551:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -58414,14 +67038,14 @@ }, { "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1400, + "id": 1610, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "18583:29:0", + "src": "20603:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", "typeString": "literal_string \"not in secret sharing phase\"" @@ -58440,7 +67064,7 @@ "typeString": "literal_string \"not in secret sharing phase\"" } ], - "id": 1394, + "id": 1604, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -58448,13 +67072,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "18510:7:0", + "src": "20530:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1401, + "id": 1611, "isConstant": false, "isLValue": false, "isPure": false, @@ -58462,88 +67086,88 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18510:112:0", + "src": "20530:112:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1402, + "id": 1612, "nodeType": "ExpressionStatement", - "src": "18510:112:0" + "src": "20530:112:0" }, { "assignments": [ - 1407 + 1617 ], "declarations": [ { "constant": false, - "id": 1407, + "id": 1617, "mutability": "mutable", "name": "commitments", - "nameLocation": "18664:11:0", + "nameLocation": "20684:11:0", "nodeType": "VariableDeclaration", - "scope": 1467, - "src": "18632:43:0", + "scope": 1689, + "src": "20652:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1405, + "id": 1615, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1404, + "id": 1614, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "18632:21:0" + "src": "20652:21:0" }, "referencedDeclaration": 49, - "src": "18632:21:0", + "src": "20652:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1406, + "id": 1616, "nodeType": "ArrayTypeName", - "src": "18632:23:0", + "src": "20652:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1411, + "id": 1621, "initialValue": { "baseExpression": { - "id": 1408, + "id": 1618, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "18678:21:0", + "src": "20698:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1410, + "id": 1620, "indexExpression": { - "id": 1409, + "id": 1619, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "18713:6:0", + "referencedDeclaration": 1541, + "src": "20733:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -58554,194 +67178,77 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18678:51:0", + "src": "20698:51:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "18632:97:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1412, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1407, - "src": "18743:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18743:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1414, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18765:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "18743:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1422, - "nodeType": "IfStatement", - "src": "18739:76:0", - "trueBody": { - "id": 1421, - "nodeType": "Block", - "src": "18772:43:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1416, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1407, - "src": "18786:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "18786:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.RoundModelCommitments storage ref[] storage pointer) returns (struct DeltaContract.RoundModelCommitments storage ref)" - } - }, - "id": 1419, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18786:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" - } - }, - "id": 1420, - "nodeType": "ExpressionStatement", - "src": "18786:18:0" - } - ] - } + "src": "20652:97:0" }, { "assignments": [ - 1425 + 1624 ], "declarations": [ { "constant": false, - "id": 1425, + "id": 1624, "mutability": "mutable", "name": "commitment", - "nameLocation": "18854:10:0", + "nameLocation": "20789:10:0", "nodeType": "VariableDeclaration", - "scope": 1467, - "src": "18824:40:0", + "scope": 1689, + "src": "20759:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1424, + "id": 1623, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1423, + "id": 1622, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "18824:21:0" + "src": "20759:21:0" }, "referencedDeclaration": 49, - "src": "18824:21:0", + "src": "20759:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1429, + "id": 1628, "initialValue": { "baseExpression": { - "id": 1426, + "id": 1625, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1407, - "src": "18867:11:0", + "referencedDeclaration": 1617, + "src": "20802:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1428, + "id": 1627, "indexExpression": { - "id": 1427, + "id": 1626, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18879:5:0", + "referencedDeclaration": 1543, + "src": "20814:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -58752,46 +67259,288 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18867:18:0", + "src": "20802:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "18824:61:0" + "src": "20759:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1687, + "nodeType": "Block", + "src": "20888:625:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1641, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1624, + "src": "20927:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1642, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "20927:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1645, + "indexExpression": { + "expression": { + "id": 1643, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "20966:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "20966:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20927:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1649, + "indexExpression": { + "baseExpression": { + "id": 1646, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "20978:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1648, + "indexExpression": { + "id": 1647, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "20988:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20978:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20927:64:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1650, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "secretKeyMaskCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 105, + "src": "20927:109:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20927:137:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1652, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21068:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20927:142:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", + "id": 1654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21087:40:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + }, + "value": "cannot upload seed cmmt multiple times" + } + ], "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", + "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" + } + ], + "id": 1640, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "20902:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20902:239:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1656, + "nodeType": "ExpressionStatement", + "src": "20902:239:0" + }, + { + "expression": { + "id": 1671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1431, + "id": 1657, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "18916:10:0", + "referencedDeclaration": 1624, + "src": "21155:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1432, + "id": 1664, "isConstant": false, "isLValue": true, "isPure": false, @@ -58799,34 +67548,34 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "18916:34:0", + "src": "21155:30:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1435, + "id": 1665, "indexExpression": { "expression": { - "id": 1433, + "id": 1659, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "18951:3:0", + "src": "21186:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1434, + "id": 1660, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "18951:10:0", + "src": "21186:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -58837,20 +67586,45 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18916:46:0", + "src": "21155:42:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" } }, - "id": 1437, + "id": 1666, "indexExpression": { - "id": 1436, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "18963:6:0", + "baseExpression": { + "id": 1661, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "21198:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1663, + "indexExpression": { + "id": 1662, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "21208:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21198:12:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -58861,481 +67635,492 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18916:54:0", + "src": "21155:56:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1438, + "id": 1667, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, + "lValueRequested": true, "memberName": "secretKeyMaskCommitment", "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "18916:95:0", + "referencedDeclaration": 105, + "src": "21155:97:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1439, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18916:119:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19039:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18916:124:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1442, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19054:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1430, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18895:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18895:204:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1444, - "nodeType": "ExpressionStatement", - "src": "18895:204:0" - }, - { - "expression": { - "id": 1455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1445, - "name": "commitment", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1668, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "21255:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1670, + "indexExpression": { + "id": 1669, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "19109:10:0", + "referencedDeclaration": 1630, + "src": "21276:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1450, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "19109:26:0", + "nodeType": "IndexAccess", + "src": "21255:23:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } }, - "id": 1451, - "indexExpression": { - "expression": { - "id": 1447, - "name": "msg", + "src": "21155:123:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1672, + "nodeType": "ExpressionStatement", + "src": "21155:123:0" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1674, + "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19136:3:0", + "referencedDeclaration": 1541, + "src": "21330:6:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } }, - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19136:10:0", + { + "id": 1675, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1543, + "src": "21354:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "expression": { + "id": 1676, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "21377:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "21377:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 1678, + "name": "receivers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1546, + "src": "21405:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1680, + "indexExpression": { + "id": 1679, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "21415:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21405:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "534b4d41534b434d4d54", + "id": 1681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21435:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", + "typeString": "literal_string \"SKMASKCMMT\"" + }, + "value": "SKMASKCMMT" + }, + { + "baseExpression": { + "id": 1682, + "name": "secretKeyCommitments", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1549, + "src": "21465:20:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1684, + "indexExpression": { + "id": 1683, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "21486:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21465:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", + "typeString": "literal_string \"SKMASKCMMT\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1673, + "name": "ContentUploaded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 179, + "src": "21297:15:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, + "id": 1685, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19109:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1452, - "indexExpression": { - "id": 1449, - "name": "sharee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "19148:6:0", + "names": [], + "nodeType": "FunctionCall", + "src": "21297:205:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19109:46:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" - } - }, - "id": 1453, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "19109:83:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "id": 1686, + "nodeType": "EmitStatement", + "src": "21292:210:0" } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1454, - "name": "secretKeyCommitment", + "id": 1636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1633, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "19195:19:0", + "referencedDeclaration": 1630, + "src": "20850:1:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "19109:105:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1456, - "nodeType": "ExpressionStatement", - "src": "19109:105:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1458, - "name": "taskId", + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1634, + "name": "secretKeyCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "19258:6:0", + "referencedDeclaration": 1549, + "src": "20854:20:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "20854:27:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20850:31:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1688, + "initializationExpression": { + "assignments": [ + 1630 + ], + "declarations": [ { - "id": 1459, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "19278:5:0", + "constant": false, + "id": 1630, + "mutability": "mutable", + "name": "i", + "nameLocation": "20843:1:0", + "nodeType": "VariableDeclaration", + "scope": 1688, + "src": "20835:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1460, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19297:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1629, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20835:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1461, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19297:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "visibility": "internal" + } + ], + "id": 1632, + "initialValue": { + "hexValue": "30", + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20847:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1462, - "name": "sharee", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "20835:13:0" + }, + "loopExpression": { + "expression": { + "id": 1638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "20883:3:0", + "subExpression": { + "id": 1637, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "19321:6:0", + "referencedDeclaration": 1630, + "src": "20883:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - { - "hexValue": "534b4d41534b434d4d54", - "id": 1463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19341:12:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - "value": "SKMASKCMMT" - }, - { - "id": 1464, - "name": "secretKeyCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "19367:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1457, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "19229:15:0", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1465, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19229:167:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1639, + "nodeType": "ExpressionStatement", + "src": "20883:3:0" }, - "id": 1466, - "nodeType": "EmitStatement", - "src": "19224:172:0" + "nodeType": "ForStatement", + "src": "20830:683:0" } ] }, "documentation": { - "id": 1357, + "id": 1539, "nodeType": "StructuredDocumentation", - "src": "17791:248:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param sharee the sharee address\n @param secretKeyCommitment secret sharing piece of seed mask" + "src": "19487:285:0", + "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i]" }, - "functionSelector": "ee9dc1bd", - "id": 1468, + "functionSelector": "e49c9d43", + "id": 1690, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1368, + "id": 1552, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "18218:6:0", + "referencedDeclaration": 1541, + "src": "19968:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1369, + "id": 1553, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1361, - "src": "18226:5:0", + "referencedDeclaration": 1543, + "src": "19976:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1370, + "id": 1554, "kind": "modifierInvocation", "modifierName": { - "id": 1367, + "id": 1551, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "18206:11:0" + "referencedDeclaration": 240, + "src": "19956:11:0" }, "nodeType": "ModifierInvocation", - "src": "18206:26:0" + "src": "19956:26:0" } ], "name": "uploadSecretKeyCommitment", - "nameLocation": "18053:25:0", + "nameLocation": "19786:25:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1366, + "id": 1550, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1359, + "id": 1541, "mutability": "mutable", "name": "taskId", - "nameLocation": "18096:6:0", + "nameLocation": "19829:6:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18088:14:0", + "scope": 1690, + "src": "19821:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -59343,10 +68128,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1358, + "id": 1540, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "18088:7:0", + "src": "19821:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -59356,13 +68141,13 @@ }, { "constant": false, - "id": 1361, + "id": 1543, "mutability": "mutable", "name": "round", - "nameLocation": "18119:5:0", + "nameLocation": "19852:5:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18112:12:0", + "scope": 1690, + "src": "19845:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -59370,10 +68155,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1360, + "id": 1542, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "18112:6:0", + "src": "19845:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -59383,232 +68168,186 @@ }, { "constant": false, - "id": 1363, + "id": 1546, "mutability": "mutable", - "name": "sharee", - "nameLocation": "18142:6:0", + "name": "receivers", + "nameLocation": "19886:9:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18134:14:0", + "scope": 1690, + "src": "19867:28:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1362, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "18134:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1544, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19867:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1545, + "nodeType": "ArrayTypeName", + "src": "19867:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1365, + "id": 1549, "mutability": "mutable", - "name": "secretKeyCommitment", - "nameLocation": "18173:19:0", + "name": "secretKeyCommitments", + "nameLocation": "19922:20:0", "nodeType": "VariableDeclaration", - "scope": 1468, - "src": "18158:34:0", + "scope": 1690, + "src": "19905:37:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1364, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "18158:5:0", + "baseType": { + "id": 1547, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "19905:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1548, + "nodeType": "ArrayTypeName", + "src": "19905:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "18078:120:0" + "src": "19811:137:0" }, "returnParameters": { - "id": 1371, + "id": 1555, "nodeType": "ParameterList", "parameters": [], - "src": "18233:0:0" + "src": "19983:0:0" }, - "scope": 1663, - "src": "18044:1425:0", + "scope": 1927, + "src": "19777:1742:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1594, + "id": 1858, "nodeType": "Block", - "src": "19884:1326:0", + "src": "21987:1673:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 1493, + "id": 1713, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 1709, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "22018:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } }, - "id": 1488, + "id": 1710, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1485, - "name": "secretkeyMask", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "19915:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "19915:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1487, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19938:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "19915:24:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22018:14:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "&&", + "operator": "==", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1492, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1489, - "name": "secretkeyMask", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "19959:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1490, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "19959:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1491, - "name": "maxSSComitmentLength", + "expression": { + "id": 1711, + "name": "secretkeyMasks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "19983:20:0", + "referencedDeclaration": 1701, + "src": "22036:14:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, - "src": "19959:44:0", + "id": 1712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22036:21:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "19915:88:0", + "src": "22018:39:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1494, + "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365637265746b65794d61736b73206c656e677468", + "id": 1714, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "20017:48:0", + "src": "22071:54:0", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", + "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" }, - "value": "commitment length exceeds limit or it is empty" + "value": "senders length is not equal to secretkeyMasks length" } ], "expression": { @@ -59618,11 +68357,11 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", + "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" } ], - "id": 1484, + "id": 1708, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59630,13 +68369,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "19894:7:0", + "src": "21997:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1495, + "id": 1715, "isConstant": false, "isLValue": false, "isPure": false, @@ -59644,80 +68383,481 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "19894:181:0", + "src": "21997:138:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1496, + "id": 1716, "nodeType": "ExpressionStatement", - "src": "19894:181:0" + "src": "21997:138:0" + }, + { + "body": { + "id": 1745, + "nodeType": "Block", + "src": "22197:230:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1729, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22236:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1731, + "indexExpression": { + "id": 1730, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22251:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22236:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22236:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1733, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22263:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22236:28:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1735, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22288:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1737, + "indexExpression": { + "id": 1736, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22303:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22288:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22288:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1739, + "name": "maxSSComitmentLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "22316:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "22288:48:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "22236:100:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", + "id": 1742, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22354:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + }, + "value": "commitment length exceeds limit or it is empty" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", + "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" + } + ], + "id": 1728, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "22211:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22211:205:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1744, + "nodeType": "ExpressionStatement", + "src": "22211:205:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1724, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1721, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22165:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1722, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "22169:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22169:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "22165:25:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1746, + "initializationExpression": { + "assignments": [ + 1718 + ], + "declarations": [ + { + "constant": false, + "id": 1718, + "mutability": "mutable", + "name": "i", + "nameLocation": "22158:1:0", + "nodeType": "VariableDeclaration", + "scope": 1746, + "src": "22150:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1717, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22150:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1720, + "initialValue": { + "hexValue": "30", + "id": 1719, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22162:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "22150:13:0" + }, + "loopExpression": { + "expression": { + "id": 1726, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "22192:3:0", + "subExpression": { + "id": 1725, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1718, + "src": "22192:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1727, + "nodeType": "ExpressionStatement", + "src": "22192:3:0" + }, + "nodeType": "ForStatement", + "src": "22145:282:0" }, { "assignments": [ - 1499 + 1749 ], "declarations": [ { "constant": false, - "id": 1499, + "id": 1749, "mutability": "mutable", "name": "curRound", - "nameLocation": "20103:8:0", + "nameLocation": "22454:8:0", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20085:26:0", + "scope": 1858, + "src": "22436:26:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" }, "typeName": { - "id": 1498, + "id": 1748, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1497, + "id": 1747, "name": "TaskRound", "nodeType": "IdentifierPath", - "referencedDeclaration": 83, - "src": "20085:9:0" + "referencedDeclaration": 85, + "src": "22436:9:0" }, - "referencedDeclaration": 83, - "src": "20085:9:0", + "referencedDeclaration": 85, + "src": "22436:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound" } }, "visibility": "internal" } ], - "id": 1505, + "id": 1755, "initialValue": { "baseExpression": { "baseExpression": { - "id": 1500, + "id": 1750, "name": "taskRounds", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "20114:10:0", + "src": "22465:10:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.TaskRound storage ref[] storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", + "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" } }, - "id": 1502, + "id": 1752, "indexExpression": { - "id": 1501, + "id": 1751, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "20125:6:0", + "referencedDeclaration": 1693, + "src": "22476:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -59728,20 +68868,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20114:18:0", + "src": "22465:18:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$83_storage_$dyn_storage", - "typeString": "struct DeltaContract.TaskRound storage ref[] storage ref" + "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", + "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" } }, - "id": 1504, + "id": 1754, "indexExpression": { - "id": 1503, + "id": 1753, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "20133:5:0", + "referencedDeclaration": 1695, + "src": "22484:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -59752,14 +68892,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20114:25:0", + "src": "22465:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage", - "typeString": "struct DeltaContract.TaskRound storage ref" + "typeIdentifier": "t_struct$_TaskRound_$85_storage", + "typeString": "struct HFLContract.TaskRound storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "20085:54:0" + "src": "22436:54:0" }, { "expression": { @@ -59767,56 +68907,56 @@ { "commonType": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" }, - "id": 1511, + "id": 1761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1507, + "id": 1757, "name": "curRound", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1499, - "src": "20170:8:0", + "referencedDeclaration": 1749, + "src": "22521:8:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$83_storage_ptr", - "typeString": "struct DeltaContract.TaskRound storage pointer" + "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", + "typeString": "struct HFLContract.TaskRound storage pointer" } }, - "id": 1508, + "id": 1758, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 74, - "src": "20170:15:0", + "referencedDeclaration": 76, + "src": "22521:15:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { - "id": 1509, + "id": 1759, "name": "RoundStatus", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "20189:11:0", + "src": "22540:11:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum DeltaContract.RoundStatus)" + "typeString": "type(enum HFLContract.RoundStatus)" } }, - "id": 1510, + "id": 1760, "isConstant": false, "isLValue": false, "isPure": true, @@ -59824,13 +68964,13 @@ "memberName": "Aggregating", "nodeType": "MemberAccess", "referencedDeclaration": 12, - "src": "20189:23:0", + "src": "22540:23:0", "typeDescriptions": { "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum DeltaContract.RoundStatus" + "typeString": "enum HFLContract.RoundStatus" } }, - "src": "20170:42:0", + "src": "22521:42:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -59838,14 +68978,14 @@ }, { "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1512, + "id": 1762, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "20226:24:0", + "src": "22577:24:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", "typeString": "literal_string \"not in upload ss phase\"" @@ -59864,7 +69004,7 @@ "typeString": "literal_string \"not in upload ss phase\"" } ], - "id": 1506, + "id": 1756, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59872,13 +69012,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "20149:7:0", + "src": "22500:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1513, + "id": 1763, "isConstant": false, "isLValue": false, "isPure": false, @@ -59886,286 +69026,169 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "20149:111:0", + "src": "22500:111:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1514, + "id": 1764, "nodeType": "ExpressionStatement", - "src": "20149:111:0" + "src": "22500:111:0" }, { "assignments": [ - 1519 + 1769 ], "declarations": [ { "constant": false, - "id": 1519, + "id": 1769, "mutability": "mutable", "name": "commitments", - "nameLocation": "20302:11:0", + "nameLocation": "22653:11:0", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20270:43:0", + "scope": 1858, + "src": "22621:43:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" }, "typeName": { "baseType": { - "id": 1517, + "id": 1767, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1516, + "id": 1766, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "20270:21:0" + "src": "22621:21:0" }, "referencedDeclaration": 49, - "src": "20270:21:0", + "src": "22621:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, - "id": 1518, + "id": 1768, "nodeType": "ArrayTypeName", - "src": "20270:23:0", + "src": "22621:23:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments[]" + "typeString": "struct HFLContract.RoundModelCommitments[]" } }, "visibility": "internal" } ], - "id": 1523, + "id": 1773, "initialValue": { "baseExpression": { - "id": 1520, + "id": 1770, "name": "roundModelCommitments", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31, - "src": "20316:21:0", + "src": "22667:21:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct DeltaContract.RoundModelCommitments storage ref[] storage ref)" + "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" } }, - "id": 1522, + "id": 1772, "indexExpression": { - "id": 1521, + "id": 1771, "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "20351:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20316:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20270:97:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1527, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1524, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "20381:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1525, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20381:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1526, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "20403:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "20381:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1534, - "nodeType": "IfStatement", - "src": "20377:76:0", - "trueBody": { - "id": 1533, - "nodeType": "Block", - "src": "20410:43:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1528, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "20424:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "20424:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct DeltaContract.RoundModelCommitments storage ref[] storage pointer) returns (struct DeltaContract.RoundModelCommitments storage ref)" - } - }, - "id": 1531, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20424:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" - } - }, - "id": 1532, - "nodeType": "ExpressionStatement", - "src": "20424:18:0" + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "22702:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } - ] - } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22667:51:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22621:97:0" }, { "assignments": [ - 1537 + 1776 ], "declarations": [ { "constant": false, - "id": 1537, + "id": 1776, "mutability": "mutable", "name": "commitment", - "nameLocation": "20492:10:0", + "nameLocation": "22758:10:0", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20462:40:0", + "scope": 1858, + "src": "22728:40:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" }, "typeName": { - "id": 1536, + "id": 1775, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1535, + "id": 1774, "name": "RoundModelCommitments", "nodeType": "IdentifierPath", "referencedDeclaration": 49, - "src": "20462:21:0" + "src": "22728:21:0" }, "referencedDeclaration": 49, - "src": "20462:21:0", + "src": "22728:21:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments" + "typeString": "struct HFLContract.RoundModelCommitments" } }, "visibility": "internal" } ], - "id": 1541, + "id": 1780, "initialValue": { "baseExpression": { - "id": 1538, + "id": 1777, "name": "commitments", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "20505:11:0", + "referencedDeclaration": 1769, + "src": "22771:11:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref[] storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" } }, - "id": 1540, + "id": 1779, "indexExpression": { - "id": 1539, + "id": 1778, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "20517:5:0", + "referencedDeclaration": 1695, + "src": "22783:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -60176,46 +69199,531 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20505:18:0", + "src": "22771:18:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct DeltaContract.RoundModelCommitments storage ref" + "typeString": "struct HFLContract.RoundModelCommitments storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "20462:61:0" + "src": "22728:61:0" }, { - "expression": { - "arguments": [ + "body": { + "id": 1856, + "nodeType": "Block", + "src": "22851:803:0", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1805, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1793, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1776, + "src": "22890:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1794, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "22890:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1798, + "indexExpression": { + "baseExpression": { + "id": 1795, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "22929:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1797, + "indexExpression": { + "id": 1796, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "22937:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22929:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22890:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1801, + "indexExpression": { + "expression": { + "id": 1799, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "22941:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "22941:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "22890:62:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1802, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "secretKeyMaskCommitment", + "nodeType": "MemberAccess", + "referencedDeclaration": 105, + "src": "22890:107:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22890:135:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 1804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23028:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22890:139:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", + "id": 1806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23047:30:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + }, + "value": "must upload commitment first" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", + "typeString": "literal_string \"must upload commitment first\"" + } + ], + "id": 1792, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "22865:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1807, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22865:226:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } }, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 1808, + "nodeType": "ExpressionStatement", + "src": "22865:226:0" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 1810, + "name": "commitment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1776, + "src": "23130:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" + } + }, + "id": 1811, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ssdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 48, + "src": "23130:38:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" + } + }, + "id": 1815, + "indexExpression": { + "baseExpression": { + "id": 1812, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "23169:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1814, + "indexExpression": { + "id": 1813, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23177:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23169:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23130:50:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" + } + }, + "id": 1818, + "indexExpression": { + "expression": { + "id": 1816, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "23181:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "23181:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23130:62:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" + } + }, + "id": 1819, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "secretKeyPiece", + "nodeType": "MemberAccess", + "referencedDeclaration": 103, + "src": "23130:98:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 1820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23130:126:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23260:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "23130:131:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", + "id": 1823, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23279:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" + }, + "value": "cannot upload seed multiple times" + } + ], "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", + "typeString": "literal_string \"cannot upload seed multiple times\"" + } + ], + "id": 1809, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "23105:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23105:223:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1825, + "nodeType": "ExpressionStatement", + "src": "23105:223:0" + }, + { + "expression": { + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "expression": { "baseExpression": { "baseExpression": { "expression": { - "id": 1543, + "id": 1826, "name": "commitment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "20554:10:0", + "referencedDeclaration": 1776, + "src": "23342:10:0", "typeDescriptions": { "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeString": "struct HFLContract.RoundModelCommitments storage pointer" } }, - "id": 1544, + "id": 1833, "isConstant": false, "isLValue": true, "isPure": false, @@ -60223,20 +69731,45 @@ "memberName": "ssdata", "nodeType": "MemberAccess", "referencedDeclaration": 48, - "src": "20554:34:0", + "src": "23342:30:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", + "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" } }, - "id": 1546, + "id": 1834, "indexExpression": { - "id": 1545, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "20589:6:0", + "baseExpression": { + "id": 1828, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "23373:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 1830, + "indexExpression": { + "id": 1829, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23381:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23373:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60247,34 +69780,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20554:42:0", + "src": "23342:42:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", + "typeString": "mapping(address => struct HFLContract.SSData storage ref)" } }, - "id": 1549, + "id": 1835, "indexExpression": { "expression": { - "id": 1547, + "id": 1831, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "20597:3:0", + "src": "23385:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1548, + "id": 1832, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "20597:10:0", + "src": "23385:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60285,699 +69818,492 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20554:54:0", + "src": "23342:54:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_struct$_SSData_$106_storage", + "typeString": "struct HFLContract.SSData storage ref" } }, - "id": 1550, + "id": 1836, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", + "lValueRequested": true, + "memberName": "secretKeyPiece", "nodeType": "MemberAccess", "referencedDeclaration": 103, - "src": "20554:95:0", + "src": "23342:69:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 1551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20554:119:0", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1837, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "23414:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1839, + "indexExpression": { + "id": 1838, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23429:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23414:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "23342:89:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1552, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20676:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20554:123:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + "id": 1841, + "nodeType": "ExpressionStatement", + "src": "23342:89:0" }, { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1554, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20691:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1542, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20533:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20533:198:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1556, - "nodeType": "ExpressionStatement", - "src": "20533:198:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { + "eventCall": { + "arguments": [ + { + "id": 1843, + "name": "taskId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "23483:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1844, + "name": "round", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1695, + "src": "23507:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { "baseExpression": { - "baseExpression": { - "expression": { - "id": 1558, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "20762:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" - } - }, - "id": 1559, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "20762:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1561, - "indexExpression": { - "id": 1560, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "20780:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20762:25:0", + "id": 1845, + "name": "senders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1698, + "src": "23530:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" } }, - "id": 1564, + "id": 1847, "indexExpression": { - "expression": { - "id": 1562, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20788:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1563, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20788:10:0", + "id": 1846, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23538:1:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "20762:37:0", + "src": "23530:10:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1565, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "20762:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20762:59:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1567, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20825:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20762:64:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f616420736b6d61736b206d756c7469706c652074696d6573", - "id": 1569, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20840:37:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1bbb835911f9c5ad7d1a17e2a5a40140e5ee2a0491fd530884b7d1c65d711da9", - "typeString": "literal_string \"cannot upload skmask multiple times\"" - }, - "value": "cannot upload skmask multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1bbb835911f9c5ad7d1a17e2a5a40140e5ee2a0491fd530884b7d1c65d711da9", - "typeString": "literal_string \"cannot upload skmask multiple times\"" - } - ], - "id": 1557, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20741:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20741:146:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1571, - "nodeType": "ExpressionStatement", - "src": "20741:146:0" - }, - { - "expression": { - "id": 1582, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1572, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "20897:10:0", + { + "expression": { + "id": 1848, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "23558:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "23558:10:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct DeltaContract.RoundModelCommitments storage pointer" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1577, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "20897:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$_$", - "typeString": "mapping(address => mapping(address => struct DeltaContract.SSData storage ref))" - } - }, - "id": 1578, - "indexExpression": { - "id": 1574, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "20915:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + { + "hexValue": "534b4d41534b", + "id": 1850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23586:8:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", + "typeString": "literal_string \"SKMASK\"" + }, + "value": "SKMASK" + }, + { + "baseExpression": { + "id": 1851, + "name": "secretkeyMasks", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1701, + "src": "23612:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1853, + "indexExpression": { + "id": 1852, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1782, + "src": "23627:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23612:17:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20897:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$104_storage_$", - "typeString": "mapping(address => struct DeltaContract.SSData storage ref)" - } - }, - "id": 1579, - "indexExpression": { + ], "expression": { - "id": 1575, - "name": "msg", + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", + "typeString": "literal_string \"SKMASK\"" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1842, + "name": "ContentUploaded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20923:3:0", + "referencedDeclaration": 179, + "src": "23450:15:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" } }, - "id": 1576, + "id": 1854, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20923:10:0", + "names": [], + "nodeType": "FunctionCall", + "src": "23450:193:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20897:37:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$104_storage", - "typeString": "struct DeltaContract.SSData storage ref" - } - }, - "id": 1580, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "20897:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" + "id": 1855, + "nodeType": "EmitStatement", + "src": "23445:198:0" } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1581, - "name": "secretkeyMask", + "id": 1788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1785, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "20952:13:0", + "referencedDeclaration": 1782, + "src": "22819:1:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "20897:68:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1583, - "nodeType": "ExpressionStatement", - "src": "20897:68:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1585, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "21009:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1586, - "name": "round", + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1786, + "name": "secretkeyMasks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "21029:5:0", + "referencedDeclaration": 1701, + "src": "22823:14:0", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" } }, + "id": 1787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "22823:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "22819:25:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1857, + "initializationExpression": { + "assignments": [ + 1782 + ], + "declarations": [ { - "id": 1587, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1475, - "src": "21048:6:0", + "constant": false, + "id": 1782, + "mutability": "mutable", + "name": "i", + "nameLocation": "22812:1:0", + "nodeType": "VariableDeclaration", + "scope": 1857, + "src": "22804:9:0", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1588, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "21068:3:0", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1781, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22804:7:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "21068:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "534b4d41534b", - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21092:8:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - "value": "SKMASK" + "visibility": "internal" + } + ], + "id": 1784, + "initialValue": { + "hexValue": "30", + "id": 1783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22816:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - { - "id": 1591, - "name": "secretkeyMask", + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "22804:13:0" + }, + "loopExpression": { + "expression": { + "id": 1790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "22846:3:0", + "subExpression": { + "id": 1789, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1477, - "src": "21114:13:0", + "referencedDeclaration": 1782, + "src": "22846:1:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 1584, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 175, - "src": "20980:15:0", + }, "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20980:157:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 1791, + "nodeType": "ExpressionStatement", + "src": "22846:3:0" }, - "id": 1593, - "nodeType": "EmitStatement", - "src": "20975:162:0" + "nodeType": "ForStatement", + "src": "22799:855:0" } ] }, "documentation": { - "id": 1469, + "id": 1691, "nodeType": "StructuredDocumentation", - "src": "19475:227:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param secretkeyMask the crypted skmask\n @param sender the sender address" + "src": "21525:265:0", + "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i]" }, - "functionSelector": "f9dd18a7", - "id": 1595, + "functionSelector": "c96525ac", + "id": 1859, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 1480, + "id": 1704, "name": "taskId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1471, - "src": "19869:6:0", + "referencedDeclaration": 1693, + "src": "21972:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1481, + "id": 1705, "name": "round", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, - "src": "19877:5:0", + "referencedDeclaration": 1695, + "src": "21980:5:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } } ], - "id": 1482, + "id": 1706, "kind": "modifierInvocation", "modifierName": { - "id": 1479, + "id": 1703, "name": "roundExists", "nodeType": "IdentifierPath", - "referencedDeclaration": 236, - "src": "19857:11:0" + "referencedDeclaration": 240, + "src": "21960:11:0" }, "nodeType": "ModifierInvocation", - "src": "19857:26:0" + "src": "21960:26:0" } ], "name": "uploadSecretkeyMask", - "nameLocation": "19716:19:0", + "nameLocation": "21804:19:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1478, + "id": 1702, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1471, + "id": 1693, "mutability": "mutable", "name": "taskId", - "nameLocation": "19753:6:0", + "nameLocation": "21841:6:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19745:14:0", + "scope": 1859, + "src": "21833:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -60985,10 +70311,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1470, + "id": 1692, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "19745:7:0", + "src": "21833:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -60998,13 +70324,13 @@ }, { "constant": false, - "id": 1473, + "id": 1695, "mutability": "mutable", "name": "round", - "nameLocation": "19776:5:0", + "nameLocation": "21864:5:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19769:12:0", + "scope": 1859, + "src": "21857:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61012,10 +70338,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1472, + "id": 1694, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "19769:6:0", + "src": "21857:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61025,94 +70351,112 @@ }, { "constant": false, - "id": 1475, + "id": 1698, "mutability": "mutable", - "name": "sender", - "nameLocation": "19799:6:0", + "name": "senders", + "nameLocation": "21898:7:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19791:14:0", + "scope": 1859, + "src": "21879:26:0", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" }, "typeName": { - "id": 1474, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19791:7:0", - "stateMutability": "nonpayable", + "baseType": { + "id": 1696, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21879:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1697, + "nodeType": "ArrayTypeName", + "src": "21879:9:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, - "id": 1477, + "id": 1701, "mutability": "mutable", - "name": "secretkeyMask", - "nameLocation": "19830:13:0", + "name": "secretkeyMasks", + "nameLocation": "21932:14:0", "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "19815:28:0", + "scope": 1859, + "src": "21915:31:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" }, "typeName": { - "id": 1476, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "19815:5:0", + "baseType": { + "id": 1699, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21915:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1700, + "nodeType": "ArrayTypeName", + "src": "21915:7:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" } }, "visibility": "internal" } ], - "src": "19735:114:0" + "src": "21823:129:0" }, "returnParameters": { - "id": 1483, + "id": 1707, "nodeType": "ParameterList", "parameters": [], - "src": "19884:0:0" + "src": "21987:0:0" }, - "scope": 1663, - "src": "19707:1503:0", + "scope": 1927, + "src": "21795:1865:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1606, + "id": 1870, "nodeType": "Block", - "src": "21287:54:0", + "src": "23737:54:0", "statements": [ { "expression": { - "id": 1604, + "id": 1868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1602, + "id": 1866, "name": "maxWeightCommitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 34, - "src": "21297:25:0", + "src": "23747:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61121,64 +70465,64 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1603, + "id": 1867, "name": "maxLength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1597, - "src": "21325:9:0", + "referencedDeclaration": 1861, + "src": "23775:9:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21297:37:0", + "src": "23747:37:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1605, + "id": 1869, "nodeType": "ExpressionStatement", - "src": "21297:37:0" + "src": "23747:37:0" } ] }, "functionSelector": "b71b768d", - "id": 1607, + "id": 1871, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1600, + "id": 1864, "kind": "modifierInvocation", "modifierName": { - "id": 1599, + "id": 1863, "name": "isOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 187, - "src": "21279:7:0" + "referencedDeclaration": 191, + "src": "23729:7:0" }, "nodeType": "ModifierInvocation", - "src": "21279:7:0" + "src": "23729:7:0" } ], "name": "setMaxWeightCommitmentLength", - "nameLocation": "21225:28:0", + "nameLocation": "23675:28:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1598, + "id": 1862, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1597, + "id": 1861, "mutability": "mutable", "name": "maxLength", - "nameLocation": "21261:9:0", + "nameLocation": "23711:9:0", "nodeType": "VariableDeclaration", - "scope": 1607, - "src": "21254:16:0", + "scope": 1871, + "src": "23704:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61186,10 +70530,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1596, + "id": 1860, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21254:6:0", + "src": "23704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61198,40 +70542,40 @@ "visibility": "internal" } ], - "src": "21253:18:0" + "src": "23703:18:0" }, "returnParameters": { - "id": 1601, + "id": 1865, "nodeType": "ParameterList", "parameters": [], - "src": "21287:0:0" + "src": "23737:0:0" }, - "scope": 1663, - "src": "21216:125:0", + "scope": 1927, + "src": "23666:125:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1618, + "id": 1882, "nodeType": "Block", - "src": "21414:49:0", + "src": "23864:49:0", "statements": [ { "expression": { - "id": 1616, + "id": 1880, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1614, + "id": 1878, "name": "maxSSComitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37, - "src": "21424:20:0", + "src": "23874:20:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61240,64 +70584,64 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1615, + "id": 1879, "name": "maxLength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1609, - "src": "21447:9:0", + "referencedDeclaration": 1873, + "src": "23897:9:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21424:32:0", + "src": "23874:32:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1617, + "id": 1881, "nodeType": "ExpressionStatement", - "src": "21424:32:0" + "src": "23874:32:0" } ] }, "functionSelector": "d6f02142", - "id": 1619, + "id": 1883, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1612, + "id": 1876, "kind": "modifierInvocation", "modifierName": { - "id": 1611, + "id": 1875, "name": "isOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 187, - "src": "21406:7:0" + "referencedDeclaration": 191, + "src": "23856:7:0" }, "nodeType": "ModifierInvocation", - "src": "21406:7:0" + "src": "23856:7:0" } ], "name": "setMaxSSCommitmentLength", - "nameLocation": "21356:24:0", + "nameLocation": "23806:24:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1610, + "id": 1874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1609, + "id": 1873, "mutability": "mutable", "name": "maxLength", - "nameLocation": "21388:9:0", + "nameLocation": "23838:9:0", "nodeType": "VariableDeclaration", - "scope": 1619, - "src": "21381:16:0", + "scope": 1883, + "src": "23831:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61305,10 +70649,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1608, + "id": 1872, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21381:6:0", + "src": "23831:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61317,40 +70661,40 @@ "visibility": "internal" } ], - "src": "21380:18:0" + "src": "23830:18:0" }, "returnParameters": { - "id": 1613, + "id": 1877, "nodeType": "ParameterList", "parameters": [], - "src": "21414:0:0" + "src": "23864:0:0" }, - "scope": 1663, - "src": "21347:116:0", + "scope": 1927, + "src": "23797:116:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1634, + "id": 1898, "nodeType": "Block", - "src": "21591:98:0", + "src": "24041:98:0", "statements": [ { "expression": { - "id": 1628, + "id": 1892, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1626, + "id": 1890, "name": "sslength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1622, - "src": "21601:8:0", + "referencedDeclaration": 1886, + "src": "24051:8:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61359,41 +70703,41 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1627, + "id": 1891, "name": "maxSSComitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37, - "src": "21612:20:0", + "src": "24062:20:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21601:31:0", + "src": "24051:31:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1629, + "id": 1893, "nodeType": "ExpressionStatement", - "src": "21601:31:0" + "src": "24051:31:0" }, { "expression": { - "id": 1632, + "id": 1896, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1630, + "id": 1894, "name": "weightLength", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1624, - "src": "21642:12:0", + "referencedDeclaration": 1888, + "src": "24092:12:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61402,56 +70746,56 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1631, + "id": 1895, "name": "maxWeightCommitmentLength", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 34, - "src": "21657:25:0", + "src": "24107:25:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "21642:40:0", + "src": "24092:40:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "id": 1633, + "id": 1897, "nodeType": "ExpressionStatement", - "src": "21642:40:0" + "src": "24092:40:0" } ] }, "functionSelector": "5d3d7e63", - "id": 1635, + "id": 1899, "implemented": true, "kind": "function", "modifiers": [], "name": "getMaxCommitmentsLength", - "nameLocation": "21478:23:0", + "nameLocation": "23928:23:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1620, + "id": 1884, "nodeType": "ParameterList", "parameters": [], - "src": "21501:2:0" + "src": "23951:2:0" }, "returnParameters": { - "id": 1625, + "id": 1889, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1622, + "id": 1886, "mutability": "mutable", "name": "sslength", - "nameLocation": "21556:8:0", + "nameLocation": "24006:8:0", "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "21549:15:0", + "scope": 1899, + "src": "23999:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61459,10 +70803,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1621, + "id": 1885, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21549:6:0", + "src": "23999:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61472,13 +70816,13 @@ }, { "constant": false, - "id": 1624, + "id": 1888, "mutability": "mutable", "name": "weightLength", - "nameLocation": "21573:12:0", + "nameLocation": "24023:12:0", "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "21566:19:0", + "scope": 1899, + "src": "24016:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61486,10 +70830,10 @@ "typeString": "uint64" }, "typeName": { - "id": 1623, + "id": 1887, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "21566:6:0", + "src": "24016:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -61498,42 +70842,42 @@ "visibility": "internal" } ], - "src": "21548:38:0" + "src": "23998:38:0" }, - "scope": 1663, - "src": "21469:220:0", + "scope": 1927, + "src": "23919:220:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 1652, + "id": 1916, "nodeType": "Block", - "src": "21834:73:0", + "src": "24284:73:0", "statements": [ { "eventCall": { "arguments": [ { - "id": 1644, + "id": 1908, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "21858:5:0", + "src": "24308:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1645, + "id": 1909, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1638, - "src": "21865:8:0", + "referencedDeclaration": 1902, + "src": "24315:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61551,18 +70895,18 @@ "typeString": "address" } ], - "id": 1643, + "id": 1907, "name": "OwnerSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 110, - "src": "21849:8:0", + "referencedDeclaration": 112, + "src": "24299:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1646, + "id": 1910, "isConstant": false, "isLValue": false, "isPure": false, @@ -61570,31 +70914,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "21849:25:0", + "src": "24299:25:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1647, + "id": 1911, "nodeType": "EmitStatement", - "src": "21844:30:0" + "src": "24294:30:0" }, { "expression": { - "id": 1650, + "id": 1914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1648, + "id": 1912, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "21884:5:0", + "src": "24334:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61603,70 +70947,70 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1649, + "id": 1913, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1638, - "src": "21892:8:0", + "referencedDeclaration": 1902, + "src": "24342:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "21884:16:0", + "src": "24334:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1651, + "id": 1915, "nodeType": "ExpressionStatement", - "src": "21884:16:0" + "src": "24334:16:0" } ] }, "documentation": { - "id": 1636, + "id": 1900, "nodeType": "StructuredDocumentation", - "src": "21695:80:0", + "src": "24145:80:0", "text": " @dev Change owner\n @param newOwner address of new owner" }, "functionSelector": "a6f9dae1", - "id": 1653, + "id": 1917, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1641, + "id": 1905, "kind": "modifierInvocation", "modifierName": { - "id": 1640, + "id": 1904, "name": "isOwner", "nodeType": "IdentifierPath", - "referencedDeclaration": 187, - "src": "21826:7:0" + "referencedDeclaration": 191, + "src": "24276:7:0" }, "nodeType": "ModifierInvocation", - "src": "21826:7:0" + "src": "24276:7:0" } ], "name": "changeOwner", - "nameLocation": "21789:11:0", + "nameLocation": "24239:11:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1639, + "id": 1903, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1638, + "id": 1902, "mutability": "mutable", "name": "newOwner", - "nameLocation": "21809:8:0", + "nameLocation": "24259:8:0", "nodeType": "VariableDeclaration", - "scope": 1653, - "src": "21801:16:0", + "scope": 1917, + "src": "24251:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61674,10 +71018,10 @@ "typeString": "address" }, "typeName": { - "id": 1637, + "id": 1901, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21801:7:0", + "src": "24251:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -61687,79 +71031,79 @@ "visibility": "internal" } ], - "src": "21800:18:0" + "src": "24250:18:0" }, "returnParameters": { - "id": 1642, + "id": 1906, "nodeType": "ParameterList", "parameters": [], - "src": "21834:0:0" + "src": "24284:0:0" }, - "scope": 1663, - "src": "21780:127:0", + "scope": 1927, + "src": "24230:127:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1661, + "id": 1925, "nodeType": "Block", - "src": "22046:29:0", + "src": "24496:29:0", "statements": [ { "expression": { - "id": 1659, + "id": 1923, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 8, - "src": "22063:5:0", + "src": "24513:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 1658, - "id": 1660, + "functionReturnParameters": 1922, + "id": 1924, "nodeType": "Return", - "src": "22056:12:0" + "src": "24506:12:0" } ] }, "documentation": { - "id": 1654, + "id": 1918, "nodeType": "StructuredDocumentation", - "src": "21913:76:0", + "src": "24363:76:0", "text": " @dev Return owner address\n @return address of owner" }, "functionSelector": "893d20e8", - "id": 1662, + "id": 1926, "implemented": true, "kind": "function", "modifiers": [], "name": "getOwner", - "nameLocation": "22003:8:0", + "nameLocation": "24453:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1655, + "id": 1919, "nodeType": "ParameterList", "parameters": [], - "src": "22011:2:0" + "src": "24461:2:0" }, "returnParameters": { - "id": 1658, + "id": 1922, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1657, + "id": 1921, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1662, - "src": "22037:7:0", + "scope": 1926, + "src": "24487:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61767,10 +71111,10 @@ "typeString": "address" }, "typeName": { - "id": 1656, + "id": 1920, "name": "address", "nodeType": "ElementaryTypeName", - "src": "22037:7:0", + "src": "24487:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -61780,36 +71124,66 @@ "visibility": "internal" } ], - "src": "22036:9:0" + "src": "24486:9:0" }, - "scope": 1663, - "src": "21994:81:0", + "scope": 1927, + "src": "24444:81:0", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 1664, - "src": "160:21917:0", + "scope": 1928, + "src": "160:24367:0", "usedErrors": [] } ], - "src": "37:22041:0" + "src": "37:24491:0" }, "compiler": { "name": "solc", "version": "0.8.10+commit.fc410830.Emscripten.clang" }, "networks": { - "1637922795922": { + "1639635277955": { + "events": {}, + "links": {}, + "address": "0x0473645a4A8C3f81EcA03FB07B9113960C240622", + "transactionHash": "0xecdc97bc31b6a5474b6e6f6817b1bbde923b2ea3b07ca77bdde83e4444a916b4" + }, + "1639636093890": { + "events": {}, + "links": {}, + "address": "0xf5C2FDBd1fb251Fb60c6859Db0b1cDE02b902dF8", + "transactionHash": "0xc3f03872f7d8eefc0ee9b6aa203c153cda5addb87e45b44ba8e4708e42b0af51" + }, + "1639636812393": { + "events": {}, + "links": {}, + "address": "0x76a89cfc71EdDF8097296e9b1986B5c252d51d78", + "transactionHash": "0x1be24e0ea13c1144756a3ff2f3aae40e249f2455fae590b1421da24264d07d85" + }, + "1639641059195": { + "events": {}, + "links": {}, + "address": "0x6b9F31c6171b3d40Cca9ECBA2fE1b539237d3D6C", + "transactionHash": "0x4079374a16121ed56b2b8540be95db7ca1d7d9cc44e4ef262c77c09305df6790" + }, + "1639722197592": { + "events": {}, + "links": {}, + "address": "0x02f7d81fB626f868B87C817a282E9B33997f5a7f", + "transactionHash": "0x8426ab930122defd62e5d1842cabbea96e717bab801fb05ff86b5bfc9169c518" + }, + "1639724487311": { "events": {}, "links": {}, - "address": "0x9437947588df4a817150cCf7469236e043381F1F", - "transactionHash": "0xe9ac20092d67e7b21f51265bcc4f5c2501bf718291cb0232f65c986861e250e5" + "address": "0xB6fF5691e6c782D4688FA7A5BDa316D4702636cC", + "transactionHash": "0xf78ee63bb3e716635dbc014e5cf079ad5171df4c11cd6d06850851a060b36ab1" } }, "schemaVersion": "3.4.3", - "updatedAt": "2021-11-26T10:42:04.953Z", + "updatedAt": "2021-12-17T07:01:47.414Z", "networkType": "ethereum", "devdoc": { "details": "Delta Contract For Mpc", @@ -61824,7 +71198,7 @@ "constructor": { "details": "Set contract deployer as owner" }, - "createTask(string,bytes32)": { + "createTask(string,bytes32,string)": { "details": "called by task developer, notifying all clients that a new learning task has been published", "params": { "commitment": "training code hash (client validation purpose)", @@ -61841,10 +71215,10 @@ "taskId": "taskId" } }, - "getClientPublickeys(bytes32,uint64,address)": { + "getClientPublickeys(bytes32,uint64,address[])": { "details": "called by anyone, get Client Pks", "returns": { - "candidate": " (pk1,pk2)" + "_0": "candidate (pk1,pk2)" } }, "getOwner()": { @@ -61864,7 +71238,7 @@ "commitment": "commitment data" } }, - "getSecretSharingData(bytes32,uint64,address,address)": { + "getSecretSharingDatas(bytes32,uint64,address[],address)": { "details": "called by any participants" }, "getTaskData(bytes32)": { @@ -61928,39 +71302,39 @@ "taskId": "taskId" } }, - "uploadSecretKeyCommitment(bytes32,uint64,address,bytes)": { + "uploadSecretKeyCommitment(bytes32,uint64,address[],bytes[])": { "details": "called by client, upload secret sharing sk commitment", "params": { + "receivers": "the receiver addresses", "round": "the task round", - "secretKeyCommitment": "secret sharing piece of seed mask", - "sharee": "the sharee address", + "secretKeyCommitments": "secretKeyCommitments[i] is the commitment send to receivers[i]", "taskId": "taskId" } }, - "uploadSecretkeyMask(bytes32,uint64,address,bytes)": { + "uploadSecretkeyMask(bytes32,uint64,address[],bytes[])": { "details": "called by client, upload secret sharing sk commitment", "params": { "round": "the task round", - "secretkeyMask": "the crypted skmask", - "sender": "the sender address", + "secretkeyMasks": "secretkeyMasks[i] is the secretKeyMask send by senders[i]", + "senders": "senders address", "taskId": "taskId" } }, - "uploadSeed(bytes32,uint64,address,bytes)": { + "uploadSeed(bytes32,uint64,address[],bytes[])": { "details": "called by client, upload secret sharing seed commitment", "params": { "round": "the task round", - "seed": "the seed piece", - "sharee": "the sharee address", + "seeds": "seeds[i] is the seed send by senders[i]", + "senders": "senders address", "taskId": "taskId" } }, - "uploadSeedCommitment(bytes32,uint64,address,bytes)": { + "uploadSeedCommitment(bytes32,uint64,address[],bytes[])": { "details": "called by client, upload secret sharing seed commitment", "params": { + "receivers": "the receiver addresses", "round": "the task round", - "seedCommitment": "secret sharing piece of seed mask", - "sharee": "the sharee address", + "seedCommitments": "seedCommitments[i] is the commitment send to receivers[i]", "taskId": "taskId" } } diff --git a/contracts/hfl.sol b/contracts/hfl.sol index ffa1bb0..543ff95 100644 --- a/contracts/hfl.sol +++ b/contracts/hfl.sol @@ -5,8 +5,8 @@ pragma solidity >=0.7.0 <0.9.0; import "./Identity.sol"; /** - * @title Horizontal Federated Learning Task Contract - * @dev Horizontal Federated Learning Task Contract + * @title Delta Contract + * @dev Delta Contract For Mpc */ contract HFLContract { IdentityContract public idContract; @@ -33,6 +33,7 @@ contract HFLContract { string creatorUrl; string dataSet; bytes32 commitment; + string taskType; uint64 currentRound; } @@ -73,7 +74,8 @@ contract HFLContract { bytes32 taskId, string dataSet, string creatorUrl, - bytes32 commitment + bytes32 commitment, + string taskType ); // triggered when task developer call startRound event RoundStart(bytes32 taskId, uint64 round); @@ -94,8 +96,8 @@ contract HFLContract { event ContentUploaded( bytes32 taskId, uint64 round, - address owner, - address sharer, + address sender, + address reciver, string contentType, bytes content ); @@ -169,10 +171,11 @@ contract HFLContract { */ function createTask( string calldata dataSet, - bytes32 commitment + bytes32 commitment, + string calldata taskType ) public payable returns (bytes32 taskId) { bytes32 task_id = keccak256( - abi.encode(block.timestamp, msg.sender, dataSet, commitment) + abi.encode(block.number, msg.sender, dataSet, commitment, taskType) ); IdentityContract.Node memory node = idContract.getNodeInfo(msg.sender); createdTasks[task_id] = Task({ @@ -180,12 +183,20 @@ contract HFLContract { creator: msg.sender, dataSet: dataSet, commitment: commitment, + taskType: taskType, currentRound: 0 }); taskId = task_id; TaskRound[] storage rounds = taskRounds[taskId]; rounds.push(); - emit TaskCreated(msg.sender, task_id, dataSet, node.url, commitment); + emit TaskCreated( + msg.sender, + task_id, + dataSet, + node.url, + commitment, + taskType + ); } /** @@ -256,14 +267,15 @@ contract HFLContract { function getClientPublickeys( bytes32 taskId, uint64 round, - address candidateAddr - ) - public - view - roundExists(taskId, round) - returns (Candidate memory candidate) - { - candidate = taskRounds[taskId][round].candidates[candidateAddr]; + address[] calldata candidateAddrs + ) public view roundExists(taskId, round) returns (Candidate[] memory) { + Candidate[] memory candidates = new Candidate[](candidateAddrs.length); + for (uint256 i = 0; i < candidateAddrs.length; i++) { + candidates[i] = taskRounds[taskId][round].candidates[ + candidateAddrs[i] + ]; + } + return candidates; } /** @@ -338,22 +350,26 @@ contract HFLContract { /** * @dev called by any participants */ - function getSecretSharingData( + function getSecretSharingDatas( bytes32 taskId, uint64 round, - address sender, + address[] calldata senders, address receiver ) public view roundExists(taskId, round) roundcmmtExists(taskId, round) - returns (SSData memory ssdata) + returns (SSData[] memory) { RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId]; require(cmmts.length >= round, "The Task Round Must exists"); RoundModelCommitments storage cmmt = cmmts[round]; - ssdata = cmmt.ssdata[sender][receiver]; + SSData[] memory ssdatas = new SSData[](senders.length); + for (uint256 i = 0; i < senders.length; i++) { + ssdatas[i] = (cmmt.ssdata[senders[i]][receiver]); + } + return ssdatas; } /** @@ -461,20 +477,26 @@ contract HFLContract { * @dev called by client, upload secret sharing seed commitment * @param taskId taskId * @param round the task round - * @param sharee the sharee address - * @param seedCommitment secret sharing piece of seed mask + * @param receivers the receiver addresses + * @param seedCommitments seedCommitments[i] is the commitment send to receivers[i] */ function uploadSeedCommitment( bytes32 taskId, uint64 round, - address sharee, - bytes calldata seedCommitment + address[] calldata receivers, + bytes[] calldata seedCommitments ) public roundExists(taskId, round) { require( - seedCommitment.length > 0 && - seedCommitment.length <= maxSSComitmentLength, - "commitment length exceeds limit or it is empty" + receivers.length == seedCommitments.length, + "receivers length is not equal to seedCommitments length" ); + for (uint256 i = 0; i < seedCommitments.length; i++) { + require( + seedCommitments[i].length > 0 && + seedCommitments[i].length <= maxSSComitmentLength, + "commitment length exceeds limit or it is empty" + ); + } TaskRound storage curRound = taskRounds[taskId][round]; require( curRound.status == RoundStatus.Running, @@ -484,38 +506,52 @@ contract HFLContract { taskId ]; RoundModelCommitments storage commitment = commitments[round]; - require( - commitment.ssdata[msg.sender][sharee].seedCommitment.length == 0, - "cannot upload seed cmmt multiple times" - ); - commitment.ssdata[msg.sender][sharee].seedCommitment = seedCommitment; - emit ContentUploaded( - taskId, - round, - msg.sender, - sharee, - "SEEDCMMT", - seedCommitment - ); + for (uint256 i = 0; i < seedCommitments.length; i++) { + require( + commitment + .ssdata[msg.sender][receivers[i]] + .seedCommitment + .length == 0, + "cannot upload seed cmmt multiple times" + ); + commitment + .ssdata[msg.sender][receivers[i]].seedCommitment = seedCommitments[ + i + ]; + emit ContentUploaded( + taskId, + round, + msg.sender, + receivers[i], + "SEEDCMMT", + seedCommitments[i] + ); + } } /** * @dev called by client, upload secret sharing seed commitment * @param taskId taskId * @param round the task round - * @param sharee the sharee address - * @param seed the seed piece + * @param senders senders address + * @param seeds seeds[i] is the seed send by senders[i] */ function uploadSeed( bytes32 taskId, uint64 round, - address sharee, - bytes calldata seed + address[] calldata senders, + bytes[] calldata seeds ) public roundExists(taskId, round) { require( - seed.length > 0 && seed.length <= maxSSComitmentLength, - "commitment length exceeds limit or it is empty" + senders.length == seeds.length, + "senders length is not equal to seeds length" ); + for (uint256 i = 0; i < seeds.length; i++) { + require( + seeds[i].length > 0 && seeds[i].length <= maxSSComitmentLength, + "commitment length exceeds limit or it is empty" + ); + } TaskRound storage curRound = taskRounds[taskId][round]; require( curRound.status == RoundStatus.Aggregating, @@ -525,36 +561,54 @@ contract HFLContract { taskId ]; RoundModelCommitments storage commitment = commitments[round]; - require( - commitment.ssdata[msg.sender][sharee].seedCommitment.length > 0, - "must upload commitment first" - ); - require( - commitment.ssdata[msg.sender][sharee].seedPiece.length == 0, - "cannot upload seed multiple times" - ); - commitment.ssdata[msg.sender][sharee].seedPiece = seed; - emit ContentUploaded(taskId, round, msg.sender, sharee, "SEED", seed); + for (uint256 i = 0; i < seeds.length; i++) { + require( + commitment + .ssdata[senders[i]][msg.sender] + .seedCommitment + .length > 0, + "must upload commitment first" + ); + require( + commitment.ssdata[senders[i]][msg.sender].seedPiece.length == 0, + "cannot upload seed multiple times" + ); + commitment.ssdata[senders[i]][msg.sender].seedPiece = seeds[i]; + emit ContentUploaded( + taskId, + round, + senders[i], + msg.sender, + "SEED", + seeds[i] + ); + } } /** * @dev called by client, upload secret sharing sk commitment * @param taskId taskId * @param round the task round - * @param sharee the sharee address - * @param secretKeyCommitment secret sharing piece of seed mask + * @param receivers the receiver addresses + * @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i] */ function uploadSecretKeyCommitment( bytes32 taskId, uint64 round, - address sharee, - bytes calldata secretKeyCommitment + address[] calldata receivers, + bytes[] calldata secretKeyCommitments ) public roundExists(taskId, round) { require( - secretKeyCommitment.length > 0 && - secretKeyCommitment.length <= maxSSComitmentLength, - "commitment length exceeds limit or it is empty" + receivers.length == secretKeyCommitments.length, + "receivers length is not equal to secretKeyCommitments length" ); + for (uint256 i = 0; i < secretKeyCommitments.length; i++) { + require( + secretKeyCommitments[i].length > 0 && + secretKeyCommitments[i].length <= maxSSComitmentLength, + "commitment length exceeds limit or it is empty" + ); + } TaskRound storage curRound = taskRounds[taskId][round]; require( curRound.status == RoundStatus.Running, @@ -563,49 +617,53 @@ contract HFLContract { RoundModelCommitments[] storage commitments = roundModelCommitments[ taskId ]; - if (commitments.length == round) { - commitments.push(); - } RoundModelCommitments storage commitment = commitments[round]; - require( + for (uint256 i = 0; i < secretKeyCommitments.length; i++) { + require( + commitment + .ssdata[msg.sender][receivers[i]] + .secretKeyMaskCommitment + .length == 0, + "cannot upload seed cmmt multiple times" + ); commitment - .ssdata[msg.sender][sharee] - .secretKeyMaskCommitment - .length == 0, - "cannot upload seed multiple times" - ); - commitment - .ssdata[msg.sender][sharee] - .secretKeyMaskCommitment = secretKeyCommitment; - emit ContentUploaded( - taskId, - round, - msg.sender, - sharee, - "SKMASKCMMT", - secretKeyCommitment - ); - // commitment.data[msg.sender].seedCmmtmnt = seedCmmtmnt; + .ssdata[msg.sender][receivers[i]] + .secretKeyMaskCommitment = secretKeyCommitments[i]; + emit ContentUploaded( + taskId, + round, + msg.sender, + receivers[i], + "SKMASKCMMT", + secretKeyCommitments[i] + ); + } } /** * @dev called by client, upload secret sharing sk commitment * @param taskId taskId * @param round the task round - * @param secretkeyMask the crypted skmask - * @param sender the sender address + * @param senders senders address + * @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i] */ function uploadSecretkeyMask( bytes32 taskId, uint64 round, - address sender, - bytes calldata secretkeyMask + address[] calldata senders, + bytes[] calldata secretkeyMasks ) public roundExists(taskId, round) { require( - secretkeyMask.length > 0 && - secretkeyMask.length <= maxSSComitmentLength, - "commitment length exceeds limit or it is empty" + senders.length == secretkeyMasks.length, + "senders length is not equal to secretkeyMasks length" ); + for (uint256 i = 0; i < secretkeyMasks.length; i++) { + require( + secretkeyMasks[i].length > 0 && + secretkeyMasks[i].length <= maxSSComitmentLength, + "commitment length exceeds limit or it is empty" + ); + } TaskRound storage curRound = taskRounds[taskId][round]; require( curRound.status == RoundStatus.Aggregating, @@ -614,31 +672,33 @@ contract HFLContract { RoundModelCommitments[] storage commitments = roundModelCommitments[ taskId ]; - if (commitments.length == round) { - commitments.push(); - } RoundModelCommitments storage commitment = commitments[round]; - require( + for (uint256 i = 0; i < secretkeyMasks.length; i++) { + require( + commitment + .ssdata[senders[i]][msg.sender] + .secretKeyMaskCommitment + .length > 0, + "must upload commitment first" + ); + require( + commitment + .ssdata[senders[i]][msg.sender] + .secretKeyPiece + .length == 0, + "cannot upload seed multiple times" + ); commitment - .ssdata[sender][msg.sender] - .secretKeyMaskCommitment - .length > 0, - "must upload commitment first" - ); - require( - commitment.ssdata[sender][msg.sender].secretKeyPiece.length == 0, - "cannot upload skmask multiple times" - ); - commitment.ssdata[sender][msg.sender].secretKeyPiece = secretkeyMask; - emit ContentUploaded( - taskId, - round, - sender, - msg.sender, - "SKMASK", - secretkeyMask - ); - // commitment.data[msg.sender].seedCmmtmnt = seedCmmtmnt; + .ssdata[senders[i]][msg.sender].secretKeyPiece = secretkeyMasks[i]; + emit ContentUploaded( + taskId, + round, + senders[i], + msg.sender, + "SKMASK", + secretkeyMasks[i] + ); + } } function setMaxWeightCommitmentLength(uint64 maxLength) public isOwner { From 55f522f66c430f3f5e0e371ad4ba6f7f8a74be96 Mon Sep 17 00:00:00 2001 From: hmiao <739025250@qq.com> Date: Fri, 14 Jan 2022 18:38:24 +0800 Subject: [PATCH 2/2] update contracts --- compile/HFLContract.json | 71351 +--------------- compile/IdentityContract.json | 13292 +-- config/config.js | 4 + contracts/{hfl.sol => HFLContract.sol} | 27 +- .../{Identity.sol => IdentityContract.sol} | 43 +- package-lock.json | 319 + package.json | 1 + src/compile.js | 53 +- src/deploy.js | 3 +- src/eth.js | 2 +- yarn.lock | 117 +- 11 files changed, 538 insertions(+), 84674 deletions(-) rename contracts/{hfl.sol => HFLContract.sol} (97%) rename contracts/{Identity.sol => IdentityContract.sol} (61%) diff --git a/compile/HFLContract.json b/compile/HFLContract.json index 1cb003e..76cb844 100644 --- a/compile/HFLContract.json +++ b/compile/HFLContract.json @@ -1,71350 +1 @@ -{ - "contractName": "HFLContract", - "abi": [ - { - "inputs": [ - { - "internalType": "contract IdentityContract", - "name": "_addr", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "address[]", - "name": "addrs", - "type": "address[]" - } - ], - "name": "AggregateStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "address[]", - "name": "addrs", - "type": "address[]" - } - ], - "name": "CalculateStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "reciver", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "contentType", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "content", - "type": "bytes" - } - ], - "name": "ContentUploaded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "oldOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnerSet", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "address[]", - "name": "addrs", - "type": "address[]" - } - ], - "name": "PartnerSelected", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "round", - "type": "uint64" - } - ], - "name": "RoundEnd", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "round", - "type": "uint64" - } - ], - "name": "RoundStart", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "dataSet", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "creatorUrl", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "commitment", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "taskType", - "type": "string" - } - ], - "name": "TaskCreated", - "type": "event" - }, - { - "inputs": [], - "name": "idContract", - "outputs": [ - { - "internalType": "contract IdentityContract", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - } - ], - "name": "getTaskData", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "string", - "name": "creatorUrl", - "type": "string" - }, - { - "internalType": "string", - "name": "dataSet", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "commitment", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "taskType", - "type": "string" - }, - { - "internalType": "uint64", - "name": "currentRound", - "type": "uint64" - } - ], - "internalType": "struct HFLContract.Task", - "name": "task", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "string", - "name": "dataSet", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "commitment", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "taskType", - "type": "string" - } - ], - "name": "createTask", - "outputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - } - ], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "uint32", - "name": "maxSample", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "minSample", - "type": "uint32" - } - ], - "name": "startRound", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "pk1", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "pk2", - "type": "bytes" - } - ], - "name": "joinRound", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "candidateAddrs", - "type": "address[]" - } - ], - "name": "getClientPublickeys", - "outputs": [ - { - "components": [ - { - "internalType": "bytes", - "name": "pk1", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "pk2", - "type": "bytes" - } - ], - "internalType": "struct HFLContract.Candidate[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - } - ], - "name": "getTaskRound", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "currentRound", - "type": "uint64" - }, - { - "internalType": "uint32", - "name": "maxSample", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "minSample", - "type": "uint32" - }, - { - "internalType": "uint8", - "name": "status", - "type": "uint8" - }, - { - "internalType": "address[]", - "name": "joinedAddrs", - "type": "address[]" - } - ], - "internalType": "struct HFLContract.ExtCallTaskRoundStruct", - "name": "taskround", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "addrs", - "type": "address[]" - } - ], - "name": "selectCandidates", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "address", - "name": "clientaddress", - "type": "address" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - } - ], - "name": "getResultCommitment", - "outputs": [ - { - "internalType": "bytes", - "name": "commitment", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "senders", - "type": "address[]" - }, - { - "internalType": "address", - "name": "receiver", - "type": "address" - } - ], - "name": "getSecretSharingDatas", - "outputs": [ - { - "components": [ - { - "internalType": "bytes", - "name": "seedPiece", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "seedCommitment", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "secretKeyPiece", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "secretKeyMaskCommitment", - "type": "bytes" - } - ], - "internalType": "struct HFLContract.SSData[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "onlineClients", - "type": "address[]" - } - ], - "name": "startAggregate", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "onlineClients", - "type": "address[]" - } - ], - "name": "startCalculate", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - } - ], - "name": "endRound", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "resultCommitment", - "type": "bytes" - } - ], - "name": "uploadResultCommitment", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "receivers", - "type": "address[]" - }, - { - "internalType": "bytes[]", - "name": "seedCommitments", - "type": "bytes[]" - } - ], - "name": "uploadSeedCommitment", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "senders", - "type": "address[]" - }, - { - "internalType": "bytes[]", - "name": "seeds", - "type": "bytes[]" - } - ], - "name": "uploadSeed", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "receivers", - "type": "address[]" - }, - { - "internalType": "bytes[]", - "name": "secretKeyCommitments", - "type": "bytes[]" - } - ], - "name": "uploadSecretKeyCommitment", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "taskId", - "type": "bytes32" - }, - { - "internalType": "uint64", - "name": "round", - "type": "uint64" - }, - { - "internalType": "address[]", - "name": "senders", - "type": "address[]" - }, - { - "internalType": "bytes[]", - "name": "secretkeyMasks", - "type": "bytes[]" - } - ], - "name": "uploadSecretkeyMask", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "maxLength", - "type": "uint64" - } - ], - "name": "setMaxWeightCommitmentLength", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "maxLength", - "type": "uint64" - } - ], - "name": "setMaxSSCommitmentLength", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getMaxCommitmentsLength", - "outputs": [ - { - "internalType": "uint64", - "name": "sslength", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "weightLength", - "type": "uint64" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "changeOwner", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IdentityContract\",\"name\":\"_addr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"AggregateStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"CalculateStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"reciver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"contentType\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"content\",\"type\":\"bytes\"}],\"name\":\"ContentUploaded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnerSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"PartnerSelected\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"RoundEnd\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"RoundStart\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"creator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"creatorUrl\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"taskType\",\"type\":\"string\"}],\"name\":\"TaskCreated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"taskType\",\"type\":\"string\"}],\"name\":\"createTask\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"endRound\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"candidateAddrs\",\"type\":\"address[]\"}],\"name\":\"getClientPublickeys\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"pk1\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"pk2\",\"type\":\"bytes\"}],\"internalType\":\"struct HFLContract.Candidate[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxCommitmentsLength\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"sslength\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"weightLength\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"clientaddress\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"getResultCommitment\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"commitment\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"senders\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"getSecretSharingDatas\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"seedPiece\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"seedCommitment\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyPiece\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"secretKeyMaskCommitment\",\"type\":\"bytes\"}],\"internalType\":\"struct HFLContract.SSData[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"}],\"name\":\"getTaskData\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"creator\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"creatorUrl\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"dataSet\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"commitment\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"taskType\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"currentRound\",\"type\":\"uint64\"}],\"internalType\":\"struct HFLContract.Task\",\"name\":\"task\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"}],\"name\":\"getTaskRound\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"currentRound\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"maxSample\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minSample\",\"type\":\"uint32\"},{\"internalType\":\"uint8\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"joinedAddrs\",\"type\":\"address[]\"}],\"internalType\":\"struct HFLContract.ExtCallTaskRoundStruct\",\"name\":\"taskround\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"idContract\",\"outputs\":[{\"internalType\":\"contract IdentityContract\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"pk1\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"pk2\",\"type\":\"bytes\"}],\"name\":\"joinRound\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"addrs\",\"type\":\"address[]\"}],\"name\":\"selectCandidates\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"maxLength\",\"type\":\"uint64\"}],\"name\":\"setMaxSSCommitmentLength\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"maxLength\",\"type\":\"uint64\"}],\"name\":\"setMaxWeightCommitmentLength\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"onlineClients\",\"type\":\"address[]\"}],\"name\":\"startAggregate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"onlineClients\",\"type\":\"address[]\"}],\"name\":\"startCalculate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"maxSample\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minSample\",\"type\":\"uint32\"}],\"name\":\"startRound\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"resultCommitment\",\"type\":\"bytes\"}],\"name\":\"uploadResultCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"receivers\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"secretKeyCommitments\",\"type\":\"bytes[]\"}],\"name\":\"uploadSecretKeyCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"senders\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"secretkeyMasks\",\"type\":\"bytes[]\"}],\"name\":\"uploadSecretkeyMask\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"senders\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"seeds\",\"type\":\"bytes[]\"}],\"name\":\"uploadSeed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"taskId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"round\",\"type\":\"uint64\"},{\"internalType\":\"address[]\",\"name\":\"receivers\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"seedCommitments\",\"type\":\"bytes[]\"}],\"name\":\"uploadSeedCommitment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Delta Contract For Mpc\",\"kind\":\"dev\",\"methods\":{\"changeOwner(address)\":{\"details\":\"Change owner\",\"params\":{\"newOwner\":\"address of new owner\"}},\"constructor\":{\"details\":\"Set contract deployer as owner\"},\"createTask(string,bytes32,string)\":{\"details\":\"called by task developer, notifying all clients that a new learning task has been published\",\"params\":{\"commitment\":\"training code hash (client validation purpose)\",\"dataSet\":\"data set name (file/folder name of training data)\"},\"returns\":{\"taskId\":\"taskId\"}},\"endRound(bytes32,uint64)\":{\"details\":\"called by task developer, close round\",\"params\":{\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"getClientPublickeys(bytes32,uint64,address[])\":{\"details\":\"called by anyone, get Client Pks\",\"returns\":{\"_0\":\"candidate (pk1,pk2)\"}},\"getOwner()\":{\"details\":\"Return owner address\",\"returns\":{\"_0\":\"address of owner\"}},\"getResultCommitment(bytes32,address,uint64)\":{\"details\":\"called by task developer, get commitments from blockchain(Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\",\"params\":{\"clientaddress\":\"the client that publish the commitments\",\"round\":\"the round of that commitment\",\"taskId\":\"taskId\"},\"returns\":{\"commitment\":\"commitment data\"}},\"getSecretSharingDatas(bytes32,uint64,address[],address)\":{\"details\":\"called by any participants\"},\"getTaskData(bytes32)\":{\"details\":\"get task info data\",\"params\":{\"taskId\":\"taskId\"}},\"getTaskRound(bytes32,uint64)\":{\"details\":\"getting task round infos\",\"params\":{\"round\":\"the round to fetch\",\"taskId\":\"taskId\"},\"returns\":{\"taskround\":\"the task round infos\"}},\"joinRound(bytes32,uint64,bytes,bytes)\":{\"details\":\"called by client, join for that round of computation\",\"params\":{\"pk1\":\"used for secure communication channel establishment\",\"pk2\":\"used for mask generation\",\"round\":\"the round to join\",\"taskId\":\"taskId\"}},\"selectCandidates(bytes32,uint64,address[])\":{\"details\":\"called by task developer, randomly choose candidates to be computation nodesclients now should start secret sharing phase\",\"params\":{\"addrs\":\"selected client addresses\"}},\"startAggregate(bytes32,uint64,address[])\":{\"details\":\"called by task developer, notifying all participants that the ss and gradient transfer phase has finishedclient now should send corresponded ss share pieces to task developer according to the online status given by the task developer\",\"params\":{\"onlineClients\":\"clients that has transfered gradient to task developer\",\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"startCalculate(bytes32,uint64,address[])\":{\"details\":\"called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\",\"params\":{\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"startRound(bytes32,uint64,uint32,uint32)\":{\"details\":\"called by task developer, notifying all clients that a new computing round is started and open for joining\",\"params\":{\"round\":\"the round to start\",\"taskId\":\"taskId\"}},\"uploadResultCommitment(bytes32,uint64,bytes)\":{\"details\":\"called by client, upload weight commitment\",\"params\":{\"resultCommitment\":\"masked model incremental commitment\",\"round\":\"the task round\",\"taskId\":\"taskId\"}},\"uploadSecretKeyCommitment(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing sk commitment\",\"params\":{\"receivers\":\"the receiver addresses\",\"round\":\"the task round\",\"secretKeyCommitments\":\"secretKeyCommitments[i] is the commitment send to receivers[i]\",\"taskId\":\"taskId\"}},\"uploadSecretkeyMask(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing sk commitment\",\"params\":{\"round\":\"the task round\",\"secretkeyMasks\":\"secretkeyMasks[i] is the secretKeyMask send by senders[i]\",\"senders\":\"senders address\",\"taskId\":\"taskId\"}},\"uploadSeed(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing seed commitment\",\"params\":{\"round\":\"the task round\",\"seeds\":\"seeds[i] is the seed send by senders[i]\",\"senders\":\"senders address\",\"taskId\":\"taskId\"}},\"uploadSeedCommitment(bytes32,uint64,address[],bytes[])\":{\"details\":\"called by client, upload secret sharing seed commitment\",\"params\":{\"receivers\":\"the receiver addresses\",\"round\":\"the task round\",\"seedCommitments\":\"seedCommitments[i] is the commitment send to receivers[i]\",\"taskId\":\"taskId\"}}},\"title\":\"Delta Contract\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/HFLContract.sol\":\"HFLContract\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/HFLContract.sol\":{\"keccak256\":\"0xe1056d14131d97c455fdacfcd7469e033683a3aa76a4d9f7a1fb0113c7227906\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://4724727c1d5406499f27e7c7b8c8398fc097b6ee6430655056593270d8988f70\",\"dweb:/ipfs/QmXuV4Arn7DaVPThwGUvKaQf3rGVHXcEJuBRBZyDmhSr2x\"]},\"project:/contracts/Identity.sol\":{\"keccak256\":\"0x9a1b17d491a0f8194413917595bd70eb795307779a2c5ab2b7ce057ac4974bcf\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://5cbf30353d05ba5f01a507daf760a8fdffeae118e607aa4221d552bd634fd807\",\"dweb:/ipfs/Qmat9bD6Ym9mLj2qfw6R3nk5XkBsMJASLUVgDauXDTkup5\"]}},\"version\":1}", - "bytecode": "0x6080604052600580546001608060020a0319166901000000000000a000001790553480156200002d57600080fd5b506040516200485e3803806200485e8339810160408190526200005091620000aa565b60008054600160a060020a0319908116600160a060020a03841617825560018054339216821790556040519091907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735908290a350620000dc565b600060208284031215620000bd57600080fd5b8151600160a060020a0381168114620000d557600080fd5b9392505050565b61477280620000ec6000396000f3fe60806040526004361061015d576000357c01000000000000000000000000000000000000000000000000000000009004806391d48f52116100d3578063c96525ac1161008c578063c96525ac146103f1578063d6f0214214610411578063e26e887114610431578063e36bb28c1461045e578063e49c9d431461048b578063ebd3e836146104ab57600080fd5b806391d48f52146103205780639bd3a86914610350578063a6f9dae114610371578063abf2013a14610391578063b194c028146103b1578063b71b768d146103d157600080fd5b80634893b362116101255780634893b362146102215780634956219b1461024e57806358af9f731461026e5780635d3d7e631461029b5780635ed14248146102d5578063893d20e81461030257600080fd5b806301bd72691461016257806307dcfa8e146101845780631fd38b83146101a45780633045a939146101c457806341e865cb14610201575b600080fd5b34801561016e57600080fd5b5061018261017d366004613815565b6104cb565b005b34801561019057600080fd5b5061018261019f366004613855565b61060e565b3480156101b057600080fd5b506101826101bf3660046138ec565b61096d565b3480156101d057600080fd5b506000546101e490600160a060020a031681565b604051600160a060020a0390911681526020015b60405180910390f35b34801561020d57600080fd5b5061018261021c366004613975565b610e1f565b34801561022d57600080fd5b5061024161023c366004613815565b611045565b6040516101f891906139ce565b34801561025a57600080fd5b50610182610269366004613975565b6111d7565b34801561027a57600080fd5b5061028e610289366004613a69565b61142a565b6040516101f89190613ade565b3480156102a757600080fd5b50600554604080516001604060020a03680100000000000000008404811682529092166020830152016101f8565b3480156102e157600080fd5b506102f56102f0366004613b8a565b6116b9565b6040516101f89190613bf8565b34801561030e57600080fd5b50600154600160a060020a03166101e4565b34801561032c57600080fd5b5061034061033b366004613cf2565b611b37565b60405190151581526020016101f8565b61036361035e366004613d69565b611e22565b6040519081526020016101f8565b34801561037d57600080fd5b5061018261038c366004613de2565b6120b6565b34801561039d57600080fd5b506101826103ac366004613975565b61214c565b3480156103bd57600080fd5b506101826103cc3660046138ec565b6122dd565b3480156103dd57600080fd5b506101826103ec366004613e04565b6126d9565b3480156103fd57600080fd5b5061018261040c3660046138ec565b612729565b34801561041d57600080fd5b5061018261042c366004613e04565b612bd3565b34801561043d57600080fd5b5061045161044c366004613975565b612c37565b6040516101f89190613e1f565b34801561046a57600080fd5b5061047e610479366004613e93565b612ee2565b6040516101f89190613ecf565b34801561049757600080fd5b506101826104a63660046138ec565b613098565b3480156104b757600080fd5b506101826104c6366004613ee2565b613494565b6000828152600260205260409020548290600160a060020a0316331461050f5760405160e560020a62461bcd02815260040161050690613f2f565b60405180910390fd5b6000838152600360205260409020805484918491600110801561053b575080546001604060020a038316105b61055a5760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a03881690811061058357610583613f9d565b600091825260209182902060039190910201805470ff000000000000000000000000000000001916700400000000000000000000000000000000178155604080518a81526001604060020a038a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b6000848152600260205260409020548490600160a060020a03166106475760405160e560020a62461bcd02815260040161050690613fcf565b6000858152600260205260409020548590600160a060020a031633146106825760405160e560020a62461bcd02815260040161050690613f2f565b600086815260036020526040902080546001604060020a038716146107385760405160e560020a62461bcd02815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f742065786960648201527f7374000000000000000000000000000000000000000000000000000000000000608482015260a401610506565b600087815260026020526040902060058101805467ffffffffffffffff19166001604060020a0389161790555b81541580610789575081546001604060020a038816906107879060019061401f565b105b1561079f57815460010182556000829052610765565b8682886001604060020a0316815481106107bb576107bb613f9d565b60009182526020909120600390910201805467ffffffffffffffff19166001604060020a03928316179055825487918491908a169081106107fe576107fe613f9d565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff1602179055508482886001604060020a03168154811061084957610849613f9d565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff160217905550600082886001604060020a03168154811061089557610895613f9d565b60009182526020909120600390910201805470ff000000000000000000000000000000001916608060020a8360048111156108d2576108d2613fb6565b021790555060008881526004602052604090205b8054158061090a575080546001604060020a038916906109089060019061401f565b105b15610920578054600101815560008190526108e6565b604080518a81526001604060020a038a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b60008681526003602052604090208054879187916001108015610999575080546001604060020a038316105b6109b85760405160e560020a62461bcd02815260040161050690613f66565b858414610a305760405160e560020a62461bcd02815260206004820152602b60248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65656473206c656e6774680000000000000000000000000000000000000000006064820152608401610506565b60005b84811015610add576000868683818110610a4f57610a4f613f9d565b9050602002810190610a619190614036565b9050118015610aac57506005546801000000000000000090046001604060020a0316868683818110610a9557610a95613f9d565b9050602002810190610aa79190614036565b905011155b610acb5760405160e560020a62461bcd0281526004016105069061407c565b80610ad5816140d9565b915050610a33565b50600089815260036020526040812080546001604060020a038b16908110610b0757610b07613f9d565b6000918252602090912060039182020191508154608060020a900460ff166004811115610b3657610b36613fb6565b14610b865760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d16908110610bb457610bb4613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d85818110610be957610be9613f9d565b9050602002016020810190610bfe9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206001018054610c32906140f4565b905011610c845760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110610c9c57610c9c613f9d565b9050602002016020810190610cb19190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290208054610ce2906140f4565b159050610d045760405160e560020a62461bcd02815260040161050690614132565b888882818110610d1657610d16613f9d565b9050602002810190610d289190614036565b8360010160008e8e86818110610d4057610d40613f9d565b9050602002016020810190610d559190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020610d869290916136ec565b5060008051602061471d8339815191528d8d8d8d85818110610daa57610daa613f9d565b9050602002016020810190610dbf9190613de2565b338d8d87818110610dd257610dd2613f9d565b9050602002810190610de49190614036565b604051610df6969594939291906141b8565b60405180910390a180610e08816140d9565b915050610bc7565b50505050505050505050505050565b6000848152600260205260409020548490600160a060020a03163314610e5a5760405160e560020a62461bcd02815260040161050690613f2f565b60008581526003602052604090208054869186916001108015610e86575080546001604060020a038316105b610ea55760405160e560020a62461bcd02815260040161050690613f66565b84610ef55760405160e560020a62461bcd02815260206004820152601660248201527f4d7573742070726f7669646520616464726573736573000000000000000000006044820152606401610506565b600088815260036020526040812080546001604060020a038a16908110610f1e57610f1e613f9d565b9060005260206000209060030201905060005b86811015610ff05760008260010160008a8a85818110610f5357610f53613f9d565b9050602002016020810190610f689190613de2565b600160a060020a0316815260208101919091526040016000208054610f8c906140f4565b905011610fde5760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b80610fe8816140d9565b915050610f31565b50805470ff000000000000000000000000000000001916608060020a1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f9061095a908b908b908b908b9061423c565b6040805160a081018252600080825260208083018290528284018290526060808401839052608084015285825260039052919091208054849184916001108015611098575080546001604060020a038316105b6110b75760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a0388169081106110e0576110e0613f9d565b60009182526020918290206040805160a081018252600390930290910180546001604060020a038116845263ffffffff6801000000000000000082048116958501959095526c01000000000000000000000000810490941691830191909152925090606082019060ff608060020a90910416600481111561116357611163613fb6565b60ff168152602001826002018054806020026020016040519081016040528092919081815260200182805480156111c357602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116111a5575b505050505081525094505050505092915050565b6000848152600260205260409020548490600160a060020a031633146112125760405160e560020a62461bcd02815260040161050690613f2f565b6000858152600360205260409020805486918691600110801561123e575080546001604060020a038316105b61125d5760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a1690811061128657611286613f9d565b60009182526020909120600390910201905060028154608060020a900460ff1660048111156112b7576112b7613fb6565b146113075760405160e560020a62461bcd02815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f74207374617274656400000000006044820152606401610506565b805470ff00000000000000000000000000000000191670030000000000000000000000000000000017815560005b868110156113f45760008260010160008a8a8581811061135757611357613f9d565b905060200201602081019061136c9190613de2565b600160a060020a0316815260208101919091526040016000208054611390906140f4565b9050116113e25760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b806113ec816140d9565b915050611335565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f8989898960405161095a949392919061423c565b6114786040518060c001604052806000600160a060020a031681526020016060815260200160608152602001600080191681526020016060815260200160006001604060020a031681525090565b6000828152600260205260409020548290600160a060020a03166114b15760405160e560020a62461bcd02815260040161050690613fcf565b600083815260026020908152604091829020825160c081019093528054600160a060020a0316835260018101805491928401916114ed906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611519906140f4565b80156115665780601f1061153b57610100808354040283529160200191611566565b820191906000526020600020905b81548152906001019060200180831161154957829003601f168201915b5050505050815260200160028201805461157f906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546115ab906140f4565b80156115f85780601f106115cd576101008083540402835291602001916115f8565b820191906000526020600020905b8154815290600101906020018083116115db57829003601f168201915b505050505081526020016003820154815260200160048201805461161b906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611647906140f4565b80156116945780601f1061166957610100808354040283529160200191611694565b820191906000526020600020905b81548152906001019060200180831161167757829003601f168201915b5050509183525050600591909101546001604060020a03166020909101529392505050565b60008581526003602052604090208054606091879187919060011080156116e9575080546001604060020a038316105b6117085760405160e560020a62461bcd02815260040161050690613f66565b600089815260046020526040902080548a918a916001604060020a038316106117465760405160e560020a62461bcd02815260040161050690614298565b60008c815260046020526040902080546001604060020a038d1611156117815760405160e560020a62461bcd02815260040161050690614298565b6000818d6001604060020a03168154811061179e5761179e613f9d565b60009182526020822060029091020191508b6001604060020a038111156117c7576117c76142cf565b60405190808252806020026020018201604052801561182357816020015b6118106040518060800160405280606081526020016060815260200160608152602001606081525090565b8152602001906001900390816117e55790505b50905060005b8c811015611b24578260010160008f8f8481811061184957611849613f9d565b905060200201602081019061185e9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060008d600160a060020a0316600160a060020a031681526020019081526020016000206040518060800160405290816000820180546118bc906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546118e8906140f4565b80156119355780601f1061190a57610100808354040283529160200191611935565b820191906000526020600020905b81548152906001019060200180831161191857829003601f168201915b5050505050815260200160018201805461194e906140f4565b80601f016020809104026020016040519081016040528092919081815260200182805461197a906140f4565b80156119c75780601f1061199c576101008083540402835291602001916119c7565b820191906000526020600020905b8154815290600101906020018083116119aa57829003601f168201915b505050505081526020016002820180546119e0906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0c906140f4565b8015611a595780601f10611a2e57610100808354040283529160200191611a59565b820191906000526020600020905b815481529060010190602001808311611a3c57829003601f168201915b50505050508152602001600382018054611a72906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a9e906140f4565b8015611aeb5780601f10611ac057610100808354040283529160200191611aeb565b820191906000526020600020905b815481529060010190602001808311611ace57829003601f168201915b505050505081525050828281518110611b0657611b06613f9d565b60200260200101819052508080611b1c906140d9565b915050611829565b509e9d5050505050505050505050505050565b6000868152600260205260408120548790600160a060020a0316611b705760405160e560020a62461bcd02815260040161050690613fcf565b60008881526003602052604090208054899189916001108015611b9c575080546001604060020a038316105b611bbb5760405160e560020a62461bcd02815260040161050690613f66565b60008b815260036020526040812080549091908290611bdc9060019061401f565b81548110611bec57611bec613f9d565b906000526020600020906003020190508b6001604060020a031660018380549050611c17919061401f565b148015611c40575060008154608060020a900460ff166004811115611c3e57611c3e613fb6565b145b611c8f5760405160e560020a62461bcd02815260206004820152601560248201527f6a6f696e207068617365206861732070617373656400000000000000000000006044820152606401610506565b33600090815260018201602052604090208054611cab906140f4565b159050611d235760405160e560020a62461bcd02815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c746960448201527f706c652074696d657300000000000000000000000000000000000000000000006064820152608401610506565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611dc1928492910190613770565b506020828101518051611dda9260018501920190613770565b5050506002018054600181810183556000928352602090922001805473ffffffffffffffffffffffffffffffffffffffff191633179055955050505050509695505050505050565b60008043338888888888604051602001611e4297969594939291906142e8565b60408051808303601f19018152908290528051602090910120600080547f582115fb00000000000000000000000000000000000000000000000000000000845233600485015291935091600160a060020a039091169063582115fb90602401600060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ee691908101906143bf565b90506040518060c0016040528033600160a060020a031681526020018260000151815260200189898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250602080820189905260408051601f890183900483028101830182528881529201919088908890819084018382808284376000920182905250938552505050602091820181905284815260028252604090208251815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039091161781558282015180519192611fd992600185019290910190613770565b5060408201518051611ff5916002840191602090910190613770565b50606082015160038201556080820151805161201b916004840191602090910190613770565b5060a091909101516005909101805467ffffffffffffffff19166001604060020a03909216919091179055600082815260036020526040808220805460010181559182905282519051939450849333917f8e25935a9ec6d103bff2bb6b248969c0cf317603fad46413c940773b5754cb3a916120a29187918e918e918e908e908e90614465565b60405180910390a250505095945050505050565b600154600160a060020a031633146120e35760405160e560020a62461bcd028152600401610506906144ac565b600154604051600160a060020a038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000848152600260205260409020548490600160a060020a031633146121875760405160e560020a62461bcd02815260040161050690613f2f565b600085815260036020526040902080548691869160011080156121b3575080546001604060020a038316105b6121d25760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a169081106121fb576121fb613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561222c5761222c613fb6565b1461227c5760405160e560020a62461bcd02815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f770000006044820152606401610506565b805470ff0000000000000000000000000000000019167002000000000000000000000000000000001781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d9061095a908b908b908b908b9061423c565b60008681526003602052604090208054879187916001108015612309575080546001604060020a038316105b6123285760405160e560020a62461bcd02815260040161050690613f66565b8584146123a05760405160e560020a62461bcd02815260206004820152603760248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f2073656564436f6d6d69746d656e7473206c656e6774680000000000000000006064820152608401610506565b60005b8481101561244d5760008686838181106123bf576123bf613f9d565b90506020028101906123d19190614036565b905011801561241c57506005546801000000000000000090046001604060020a031686868381811061240557612405613f9d565b90506020028101906124179190614036565b905011155b61243b5760405160e560020a62461bcd0281526004016105069061407c565b80612445816140d9565b9150506123a3565b50600089815260036020526040812080546001604060020a038b1690811061247757612477613f9d565b60009182526020909120600390910201905060018154608060020a900460ff1660048111156124a8576124a8613fb6565b146124f85760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061252657612526613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061256557612565613f9d565b905060200201602081019061257a9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060010180546125a8906140f4565b1590506125ca5760405160e560020a62461bcd028152600401610506906144e3565b8888828181106125dc576125dc613f9d565b90506020028101906125ee9190614036565b3360009081526001850160205260408120908e8e8681811061261257612612613f9d565b90506020020160208101906126279190613de2565b600160a060020a03168152602081019190915260400160002061264f926001909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061267457612674613f9d565b90506020020160208101906126899190613de2565b8d8d8781811061269b5761269b613f9d565b90506020028101906126ad9190614036565b6040516126bf96959493929190614540565b60405180910390a1806126d1816140d9565b915050612539565b600154600160a060020a031633146127065760405160e560020a62461bcd028152600401610506906144ac565b6005805467ffffffffffffffff19166001604060020a0392909216919091179055565b60008681526003602052604090208054879187916001108015612755575080546001604060020a038316105b6127745760405160e560020a62461bcd02815260040161050690613f66565b8584146127ec5760405160e560020a62461bcd02815260206004820152603460248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65637265746b65794d61736b73206c656e6774680000000000000000000000006064820152608401610506565b60005b8481101561289957600086868381811061280b5761280b613f9d565b905060200281019061281d9190614036565b905011801561286857506005546801000000000000000090046001604060020a031686868381811061285157612851613f9d565b90506020028101906128639190614036565b905011155b6128875760405160e560020a62461bcd0281526004016105069061407c565b80612891816140d9565b9150506127ef565b50600089815260036020526040812080546001604060020a038b169081106128c3576128c3613f9d565b6000918252602090912060039182020191508154608060020a900460ff1660048111156128f2576128f2613fb6565b146129425760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061297057612970613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d858181106129a5576129a5613f9d565b90506020020160208101906129ba9190613de2565b600160a060020a0316815260208082019290925260409081016000908120338252909252902060030180546129ee906140f4565b905011612a405760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110612a5857612a58613f9d565b9050602002016020810190612a6d9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206002018054612aa1906140f4565b159050612ac35760405160e560020a62461bcd02815260040161050690614132565b888882818110612ad557612ad5613f9d565b9050602002810190612ae79190614036565b8360010160008e8e86818110612aff57612aff613f9d565b9050602002016020810190612b149190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020612b49926002909101916136ec565b5060008051602061471d8339815191528d8d8d8d85818110612b6d57612b6d613f9d565b9050602002016020810190612b829190613de2565b338d8d87818110612b9557612b95613f9d565b9050602002810190612ba79190614036565b604051612bb9969594939291906145b7565b60405180910390a180612bcb816140d9565b915050612983565b600154600160a060020a03163314612c005760405160e560020a62461bcd028152600401610506906144ac565b600580546001604060020a0390921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055565b6000848152600360205260409020805460609186918691906001108015612c67575080546001604060020a038316105b612c865760405160e560020a62461bcd02815260040161050690613f66565b6000856001604060020a03811115612ca057612ca06142cf565b604051908082528060200260200182016040528015612ce557816020015b6040805180820190915260608082526020820152815260200190600190039081612cbe5790505b50905060005b86811015612ed55760008a815260036020526040902080546001604060020a038b16908110612d1c57612d1c613f9d565b90600052602060002090600302016001016000898984818110612d4157612d41613f9d565b9050602002016020810190612d569190613de2565b600160a060020a0316600160a060020a03168152602001908152602001600020604051806040016040529081600082018054612d91906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612dbd906140f4565b8015612e0a5780601f10612ddf57610100808354040283529160200191612e0a565b820191906000526020600020905b815481529060010190602001808311612ded57829003601f168201915b50505050508152602001600182018054612e23906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612e4f906140f4565b8015612e9c5780601f10612e7157610100808354040283529160200191612e9c565b820191906000526020600020905b815481529060010190602001808311612e7f57829003601f168201915b505050505081525050828281518110612eb757612eb7613f9d565b60200260200101819052508080612ecd906140d9565b915050612ceb565b5098975050505050505050565b6000838152600360205260409020805460609185918491906001108015612f12575080546001604060020a038316105b612f315760405160e560020a62461bcd02815260040161050690613f66565b60008781526004602052604090208054889187916001604060020a03831610612f6f5760405160e560020a62461bcd02815260040161050690614298565b60008a815260046020526040902080546001604060020a038a161115612faa5760405160e560020a62461bcd02815260040161050690614298565b6000818a6001604060020a031681548110612fc757612fc7613f9d565b906000526020600020906002020190508060000160008c600160a060020a0316600160a060020a031681526020019081526020016000208054613009906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054613035906140f4565b80156130825780601f1061305757610100808354040283529160200191613082565b820191906000526020600020905b81548152906001019060200180831161306557829003601f168201915b5050505050985050505050505050509392505050565b600086815260036020526040902080548791879160011080156130c4575080546001604060020a038316105b6130e35760405160e560020a62461bcd02815260040161050690613f66565b85841461315b5760405160e560020a62461bcd02815260206004820152603c60248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f207365637265744b6579436f6d6d69746d656e7473206c656e677468000000006064820152608401610506565b60005b8481101561320857600086868381811061317a5761317a613f9d565b905060200281019061318c9190614036565b90501180156131d757506005546801000000000000000090046001604060020a03168686838181106131c0576131c0613f9d565b90506020028101906131d29190614036565b905011155b6131f65760405160e560020a62461bcd0281526004016105069061407c565b80613200816140d9565b91505061315e565b50600089815260036020526040812080546001604060020a038b1690811061323257613232613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561326357613263613fb6565b146132b35760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d169081106132e1576132e1613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061332057613320613f9d565b90506020020160208101906133359190613de2565b600160a060020a0316600160a060020a031681526020019081526020016000206003018054613363906140f4565b1590506133855760405160e560020a62461bcd028152600401610506906144e3565b88888281811061339757613397613f9d565b90506020028101906133a99190614036565b3360009081526001850160205260408120908e8e868181106133cd576133cd613f9d565b90506020020160208101906133e29190613de2565b600160a060020a03168152602081019190915260400160002061340a926003909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061342f5761342f613f9d565b90506020020160208101906134449190613de2565b8d8d8781811061345657613456613f9d565b90506020028101906134689190614036565b60405161347a9695949392919061462e565b60405180910390a18061348c816140d9565b9150506132f4565b600084815260036020526040902080548591859160011080156134c0575080546001604060020a038316105b6134df5760405160e560020a62461bcd02815260040161050690613f66565b83158015906134f957506005546001604060020a03168411155b6135185760405160e560020a62461bcd0281526004016105069061407c565b600087815260036020526040812080546001604060020a03891690811061354157613541613f9d565b60009182526020909120600390910201905060028154608060020a900460ff16600481111561357257613572613fb6565b146135c25760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164696e67207068617365000000000000000000006044820152606401610506565b6000888152600460205260408120805490919082906001604060020a038b169081106135f0576135f0613f9d565b60009182526020808320338452600290920290910190819052604090912080549192509061361d906140f4565b1590506136955760405160e560020a62461bcd02815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201527f756c7469706c652074696d6573000000000000000000000000000000000000006064820152608401610506565b3360009081526020829052604090206136af9089896136ec565b5060008051602061471d8339815191528a8a3360008c8c6040516136d8969594939291906146a5565b60405180910390a150505050505050505050565b8280546136f8906140f4565b90600052602060002090601f01602090048101928261371a5760008555613760565b82601f106137335782800160ff19823516178555613760565b82800160010185558215613760579182015b82811115613760578235825591602001919060010190613745565b5061376c9291506137e4565b5090565b82805461377c906140f4565b90600052602060002090601f01602090048101928261379e5760008555613760565b82601f106137b757805160ff1916838001178555613760565b82800160010185558215613760579182015b828111156137605782518255916020019190600101906137c9565b5b8082111561376c57600081556001016137e5565b80356001604060020a038116811461381057600080fd5b919050565b6000806040838503121561382857600080fd5b82359150613838602084016137f9565b90509250929050565b803563ffffffff8116811461381057600080fd5b6000806000806080858703121561386b57600080fd5b8435935061387b602086016137f9565b925061388960408601613841565b915061389760608601613841565b905092959194509250565b60008083601f8401126138b457600080fd5b5081356001604060020a038111156138cb57600080fd5b60208301915083602080830285010111156138e557600080fd5b9250929050565b6000806000806000806080878903121561390557600080fd5b86359550613915602088016137f9565b945060408701356001604060020a038082111561393157600080fd5b61393d8a838b016138a2565b9096509450606089013591508082111561395657600080fd5b5061396389828a016138a2565b979a9699509497509295939492505050565b6000806000806060858703121561398b57600080fd5b8435935061399b602086016137f9565b925060408501356001604060020a038111156139b657600080fd5b6139c2878288016138a2565b95989497509550505050565b6000602080835260c083016001604060020a03855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b80831015613a5e578351600160a060020a03168252928401926001929092019190840190613a35565b509695505050505050565b600060208284031215613a7b57600080fd5b5035919050565b60005b83811015613a9d578181015183820152602001613a85565b83811115613aac576000848401525b50505050565b60008151808452613aca816020860160208601613a82565b601f01601f19169290920160200192915050565b60208152600160a060020a0382511660208201526000602083015160c06040840152613b0d60e0840182613ab2565b90506040840151601f1980858403016060860152613b2b8383613ab2565b92506060860151608086015260808601519150808584030160a086015250613b538282613ab2565b9150506001604060020a0360a08501511660c08401528091505092915050565b8035600160a060020a038116811461381057600080fd5b600080600080600060808688031215613ba257600080fd5b85359450613bb2602087016137f9565b935060408601356001604060020a03811115613bcd57600080fd5b613bd9888289016138a2565b9094509250613bec905060608701613b73565b90509295509295909350565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357603f19898403018552815160808151818652613c4282870182613ab2565b915050888201518582038a870152613c5a8282613ab2565b9150508782015185820389870152613c728282613ab2565b91505060608083015192508582038187015250613c8f8183613ab2565b968901969450505090860190600101613c1c565b509098975050505050505050565b60008083601f840112613cc357600080fd5b5081356001604060020a03811115613cda57600080fd5b6020830191508360208285010111156138e557600080fd5b60008060008060008060808789031215613d0b57600080fd5b86359550613d1b602088016137f9565b945060408701356001604060020a0380821115613d3757600080fd5b613d438a838b01613cb1565b90965094506060890135915080821115613d5c57600080fd5b5061396389828a01613cb1565b600080600080600060608688031215613d8157600080fd5b85356001604060020a0380821115613d9857600080fd5b613da489838a01613cb1565b9097509550602088013594506040880135915080821115613dc457600080fd5b50613dd188828901613cb1565b969995985093965092949392505050565b600060208284031215613df457600080fd5b613dfd82613b73565b9392505050565b600060208284031215613e1657600080fd5b613dfd826137f9565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357888303603f1901855281518051878552613e6788860182613ab2565b91890151858303868b0152919050613e7f8183613ab2565b968901969450505090860190600101613e43565b600080600060608486031215613ea857600080fd5b83359250613eb860208501613b73565b9150613ec6604085016137f9565b90509250925092565b602081526000613dfd6020830184613ab2565b60008060008060608587031215613ef857600080fd5b84359350613f08602086016137f9565b925060408501356001604060020a03811115613f2357600080fd5b6139c287828801613cb1565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b60e060020a634e487b7102600052603260045260246000fd5b60e060020a634e487b7102600052602160045260246000fd5b6020808252600f908201527f5461736b206e6f74206578697374730000000000000000000000000000000000604082015260600190565b60e060020a634e487b7102600052601160045260246000fd5b60008282101561403157614031614006565b500390565b6000808335601e1984360301811261404d57600080fd5b8301803591506001604060020a0382111561406757600080fd5b6020019150368190038213156138e557600080fd5b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201527f6f7220697420697320656d707479000000000000000000000000000000000000606082015260800190565b60006000198214156140ed576140ed614006565b5060010190565b60028104600182168061410857607f821691505b6020821081141561412c5760e060020a634e487b7102600052602260045260246000fd5b50919050565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6560408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600460c08301527f534545440000000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b9998505050505050505050565b60006060820186835260206001604060020a03871681850152606060408501528185835260808501905086925060005b86811015612ed557600160a060020a0361428585613b73565b168252928201929082019060010161426c565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b60e060020a634e487b7102600052604160045260246000fd5b878152600160a060020a038716602082015260a06040820152600061431160a08301878961418f565b856060840152828103608084015261432a81858761418f565b9a9950505050505050505050565b600082601f83011261434957600080fd5b81516001604060020a0380821115614363576143636142cf565b604051601f8301601f19908116603f0116810190828211818310171561438b5761438b6142cf565b816040528381528660208588010111156143a457600080fd5b6143b5846020830160208901613a82565b9695505050505050565b6000602082840312156143d157600080fd5b81516001604060020a03808211156143e857600080fd5b90830190604082860312156143fc57600080fd5b604051604081018181108382111715614417576144176142cf565b60405282518281111561442957600080fd5b61443587828601614338565b82525060208301518281111561444a57600080fd5b61445687828601614338565b60208301525095945050505050565b87815260a06020820152600061447f60a08301888a61418f565b82810360408401526144918188613ab2565b9050856060840152828103608084015261432a81858761418f565b60208082526013908201527f43616c6c6572206973206e6f74206f776e657200000000000000000000000000604082015260600190565b60208082526026908201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c6560408201527f2074696d65730000000000000000000000000000000000000000000000000000606082015260800190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600860c08301527f53454544434d4d5400000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f534b4d41534b000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600a60c08301527f534b4d41534b434d4d540000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f574549474854000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f56feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa2646970667358221220090bb9e40e9f0d8db0e872ae690750129888dc252b68918d4c1c9c5034575a9f64736f6c634300080a0033", - "deployedBytecode": "0x60806040526004361061015d576000357c01000000000000000000000000000000000000000000000000000000009004806391d48f52116100d3578063c96525ac1161008c578063c96525ac146103f1578063d6f0214214610411578063e26e887114610431578063e36bb28c1461045e578063e49c9d431461048b578063ebd3e836146104ab57600080fd5b806391d48f52146103205780639bd3a86914610350578063a6f9dae114610371578063abf2013a14610391578063b194c028146103b1578063b71b768d146103d157600080fd5b80634893b362116101255780634893b362146102215780634956219b1461024e57806358af9f731461026e5780635d3d7e631461029b5780635ed14248146102d5578063893d20e81461030257600080fd5b806301bd72691461016257806307dcfa8e146101845780631fd38b83146101a45780633045a939146101c457806341e865cb14610201575b600080fd5b34801561016e57600080fd5b5061018261017d366004613815565b6104cb565b005b34801561019057600080fd5b5061018261019f366004613855565b61060e565b3480156101b057600080fd5b506101826101bf3660046138ec565b61096d565b3480156101d057600080fd5b506000546101e490600160a060020a031681565b604051600160a060020a0390911681526020015b60405180910390f35b34801561020d57600080fd5b5061018261021c366004613975565b610e1f565b34801561022d57600080fd5b5061024161023c366004613815565b611045565b6040516101f891906139ce565b34801561025a57600080fd5b50610182610269366004613975565b6111d7565b34801561027a57600080fd5b5061028e610289366004613a69565b61142a565b6040516101f89190613ade565b3480156102a757600080fd5b50600554604080516001604060020a03680100000000000000008404811682529092166020830152016101f8565b3480156102e157600080fd5b506102f56102f0366004613b8a565b6116b9565b6040516101f89190613bf8565b34801561030e57600080fd5b50600154600160a060020a03166101e4565b34801561032c57600080fd5b5061034061033b366004613cf2565b611b37565b60405190151581526020016101f8565b61036361035e366004613d69565b611e22565b6040519081526020016101f8565b34801561037d57600080fd5b5061018261038c366004613de2565b6120b6565b34801561039d57600080fd5b506101826103ac366004613975565b61214c565b3480156103bd57600080fd5b506101826103cc3660046138ec565b6122dd565b3480156103dd57600080fd5b506101826103ec366004613e04565b6126d9565b3480156103fd57600080fd5b5061018261040c3660046138ec565b612729565b34801561041d57600080fd5b5061018261042c366004613e04565b612bd3565b34801561043d57600080fd5b5061045161044c366004613975565b612c37565b6040516101f89190613e1f565b34801561046a57600080fd5b5061047e610479366004613e93565b612ee2565b6040516101f89190613ecf565b34801561049757600080fd5b506101826104a63660046138ec565b613098565b3480156104b757600080fd5b506101826104c6366004613ee2565b613494565b6000828152600260205260409020548290600160a060020a0316331461050f5760405160e560020a62461bcd02815260040161050690613f2f565b60405180910390fd5b6000838152600360205260409020805484918491600110801561053b575080546001604060020a038316105b61055a5760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a03881690811061058357610583613f9d565b600091825260209182902060039190910201805470ff000000000000000000000000000000001916700400000000000000000000000000000000178155604080518a81526001604060020a038a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b6000848152600260205260409020548490600160a060020a03166106475760405160e560020a62461bcd02815260040161050690613fcf565b6000858152600260205260409020548590600160a060020a031633146106825760405160e560020a62461bcd02815260040161050690613f2f565b600086815260036020526040902080546001604060020a038716146107385760405160e560020a62461bcd02815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f742065786960648201527f7374000000000000000000000000000000000000000000000000000000000000608482015260a401610506565b600087815260026020526040902060058101805467ffffffffffffffff19166001604060020a0389161790555b81541580610789575081546001604060020a038816906107879060019061401f565b105b1561079f57815460010182556000829052610765565b8682886001604060020a0316815481106107bb576107bb613f9d565b60009182526020909120600390910201805467ffffffffffffffff19166001604060020a03928316179055825487918491908a169081106107fe576107fe613f9d565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff1602179055508482886001604060020a03168154811061084957610849613f9d565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff160217905550600082886001604060020a03168154811061089557610895613f9d565b60009182526020909120600390910201805470ff000000000000000000000000000000001916608060020a8360048111156108d2576108d2613fb6565b021790555060008881526004602052604090205b8054158061090a575080546001604060020a038916906109089060019061401f565b105b15610920578054600101815560008190526108e6565b604080518a81526001604060020a038a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b60008681526003602052604090208054879187916001108015610999575080546001604060020a038316105b6109b85760405160e560020a62461bcd02815260040161050690613f66565b858414610a305760405160e560020a62461bcd02815260206004820152602b60248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65656473206c656e6774680000000000000000000000000000000000000000006064820152608401610506565b60005b84811015610add576000868683818110610a4f57610a4f613f9d565b9050602002810190610a619190614036565b9050118015610aac57506005546801000000000000000090046001604060020a0316868683818110610a9557610a95613f9d565b9050602002810190610aa79190614036565b905011155b610acb5760405160e560020a62461bcd0281526004016105069061407c565b80610ad5816140d9565b915050610a33565b50600089815260036020526040812080546001604060020a038b16908110610b0757610b07613f9d565b6000918252602090912060039182020191508154608060020a900460ff166004811115610b3657610b36613fb6565b14610b865760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d16908110610bb457610bb4613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d85818110610be957610be9613f9d565b9050602002016020810190610bfe9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206001018054610c32906140f4565b905011610c845760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110610c9c57610c9c613f9d565b9050602002016020810190610cb19190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290208054610ce2906140f4565b159050610d045760405160e560020a62461bcd02815260040161050690614132565b888882818110610d1657610d16613f9d565b9050602002810190610d289190614036565b8360010160008e8e86818110610d4057610d40613f9d565b9050602002016020810190610d559190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020610d869290916136ec565b5060008051602061471d8339815191528d8d8d8d85818110610daa57610daa613f9d565b9050602002016020810190610dbf9190613de2565b338d8d87818110610dd257610dd2613f9d565b9050602002810190610de49190614036565b604051610df6969594939291906141b8565b60405180910390a180610e08816140d9565b915050610bc7565b50505050505050505050505050565b6000848152600260205260409020548490600160a060020a03163314610e5a5760405160e560020a62461bcd02815260040161050690613f2f565b60008581526003602052604090208054869186916001108015610e86575080546001604060020a038316105b610ea55760405160e560020a62461bcd02815260040161050690613f66565b84610ef55760405160e560020a62461bcd02815260206004820152601660248201527f4d7573742070726f7669646520616464726573736573000000000000000000006044820152606401610506565b600088815260036020526040812080546001604060020a038a16908110610f1e57610f1e613f9d565b9060005260206000209060030201905060005b86811015610ff05760008260010160008a8a85818110610f5357610f53613f9d565b9050602002016020810190610f689190613de2565b600160a060020a0316815260208101919091526040016000208054610f8c906140f4565b905011610fde5760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b80610fe8816140d9565b915050610f31565b50805470ff000000000000000000000000000000001916608060020a1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f9061095a908b908b908b908b9061423c565b6040805160a081018252600080825260208083018290528284018290526060808401839052608084015285825260039052919091208054849184916001108015611098575080546001604060020a038316105b6110b75760405160e560020a62461bcd02815260040161050690613f66565b600086815260036020526040812080546001604060020a0388169081106110e0576110e0613f9d565b60009182526020918290206040805160a081018252600390930290910180546001604060020a038116845263ffffffff6801000000000000000082048116958501959095526c01000000000000000000000000810490941691830191909152925090606082019060ff608060020a90910416600481111561116357611163613fb6565b60ff168152602001826002018054806020026020016040519081016040528092919081815260200182805480156111c357602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116111a5575b505050505081525094505050505092915050565b6000848152600260205260409020548490600160a060020a031633146112125760405160e560020a62461bcd02815260040161050690613f2f565b6000858152600360205260409020805486918691600110801561123e575080546001604060020a038316105b61125d5760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a1690811061128657611286613f9d565b60009182526020909120600390910201905060028154608060020a900460ff1660048111156112b7576112b7613fb6565b146113075760405160e560020a62461bcd02815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f74207374617274656400000000006044820152606401610506565b805470ff00000000000000000000000000000000191670030000000000000000000000000000000017815560005b868110156113f45760008260010160008a8a8581811061135757611357613f9d565b905060200201602081019061136c9190613de2565b600160a060020a0316815260208101919091526040016000208054611390906140f4565b9050116113e25760405160e560020a62461bcd02815260206004820152601460248201527f43616e646964617465206d7573742065786973740000000000000000000000006044820152606401610506565b806113ec816140d9565b915050611335565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f8989898960405161095a949392919061423c565b6114786040518060c001604052806000600160a060020a031681526020016060815260200160608152602001600080191681526020016060815260200160006001604060020a031681525090565b6000828152600260205260409020548290600160a060020a03166114b15760405160e560020a62461bcd02815260040161050690613fcf565b600083815260026020908152604091829020825160c081019093528054600160a060020a0316835260018101805491928401916114ed906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611519906140f4565b80156115665780601f1061153b57610100808354040283529160200191611566565b820191906000526020600020905b81548152906001019060200180831161154957829003601f168201915b5050505050815260200160028201805461157f906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546115ab906140f4565b80156115f85780601f106115cd576101008083540402835291602001916115f8565b820191906000526020600020905b8154815290600101906020018083116115db57829003601f168201915b505050505081526020016003820154815260200160048201805461161b906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611647906140f4565b80156116945780601f1061166957610100808354040283529160200191611694565b820191906000526020600020905b81548152906001019060200180831161167757829003601f168201915b5050509183525050600591909101546001604060020a03166020909101529392505050565b60008581526003602052604090208054606091879187919060011080156116e9575080546001604060020a038316105b6117085760405160e560020a62461bcd02815260040161050690613f66565b600089815260046020526040902080548a918a916001604060020a038316106117465760405160e560020a62461bcd02815260040161050690614298565b60008c815260046020526040902080546001604060020a038d1611156117815760405160e560020a62461bcd02815260040161050690614298565b6000818d6001604060020a03168154811061179e5761179e613f9d565b60009182526020822060029091020191508b6001604060020a038111156117c7576117c76142cf565b60405190808252806020026020018201604052801561182357816020015b6118106040518060800160405280606081526020016060815260200160608152602001606081525090565b8152602001906001900390816117e55790505b50905060005b8c811015611b24578260010160008f8f8481811061184957611849613f9d565b905060200201602081019061185e9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060008d600160a060020a0316600160a060020a031681526020019081526020016000206040518060800160405290816000820180546118bc906140f4565b80601f01602080910402602001604051908101604052809291908181526020018280546118e8906140f4565b80156119355780601f1061190a57610100808354040283529160200191611935565b820191906000526020600020905b81548152906001019060200180831161191857829003601f168201915b5050505050815260200160018201805461194e906140f4565b80601f016020809104026020016040519081016040528092919081815260200182805461197a906140f4565b80156119c75780601f1061199c576101008083540402835291602001916119c7565b820191906000526020600020905b8154815290600101906020018083116119aa57829003601f168201915b505050505081526020016002820180546119e0906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0c906140f4565b8015611a595780601f10611a2e57610100808354040283529160200191611a59565b820191906000526020600020905b815481529060010190602001808311611a3c57829003601f168201915b50505050508152602001600382018054611a72906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054611a9e906140f4565b8015611aeb5780601f10611ac057610100808354040283529160200191611aeb565b820191906000526020600020905b815481529060010190602001808311611ace57829003601f168201915b505050505081525050828281518110611b0657611b06613f9d565b60200260200101819052508080611b1c906140d9565b915050611829565b509e9d5050505050505050505050505050565b6000868152600260205260408120548790600160a060020a0316611b705760405160e560020a62461bcd02815260040161050690613fcf565b60008881526003602052604090208054899189916001108015611b9c575080546001604060020a038316105b611bbb5760405160e560020a62461bcd02815260040161050690613f66565b60008b815260036020526040812080549091908290611bdc9060019061401f565b81548110611bec57611bec613f9d565b906000526020600020906003020190508b6001604060020a031660018380549050611c17919061401f565b148015611c40575060008154608060020a900460ff166004811115611c3e57611c3e613fb6565b145b611c8f5760405160e560020a62461bcd02815260206004820152601560248201527f6a6f696e207068617365206861732070617373656400000000000000000000006044820152606401610506565b33600090815260018201602052604090208054611cab906140f4565b159050611d235760405160e560020a62461bcd02815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c746960448201527f706c652074696d657300000000000000000000000000000000000000000000006064820152608401610506565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611dc1928492910190613770565b506020828101518051611dda9260018501920190613770565b5050506002018054600181810183556000928352602090922001805473ffffffffffffffffffffffffffffffffffffffff191633179055955050505050509695505050505050565b60008043338888888888604051602001611e4297969594939291906142e8565b60408051808303601f19018152908290528051602090910120600080547f582115fb00000000000000000000000000000000000000000000000000000000845233600485015291935091600160a060020a039091169063582115fb90602401600060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ee691908101906143bf565b90506040518060c0016040528033600160a060020a031681526020018260000151815260200189898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250602080820189905260408051601f890183900483028101830182528881529201919088908890819084018382808284376000920182905250938552505050602091820181905284815260028252604090208251815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039091161781558282015180519192611fd992600185019290910190613770565b5060408201518051611ff5916002840191602090910190613770565b50606082015160038201556080820151805161201b916004840191602090910190613770565b5060a091909101516005909101805467ffffffffffffffff19166001604060020a03909216919091179055600082815260036020526040808220805460010181559182905282519051939450849333917f8e25935a9ec6d103bff2bb6b248969c0cf317603fad46413c940773b5754cb3a916120a29187918e918e918e908e908e90614465565b60405180910390a250505095945050505050565b600154600160a060020a031633146120e35760405160e560020a62461bcd028152600401610506906144ac565b600154604051600160a060020a038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000848152600260205260409020548490600160a060020a031633146121875760405160e560020a62461bcd02815260040161050690613f2f565b600085815260036020526040902080548691869160011080156121b3575080546001604060020a038316105b6121d25760405160e560020a62461bcd02815260040161050690613f66565b600088815260036020526040812080546001604060020a038a169081106121fb576121fb613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561222c5761222c613fb6565b1461227c5760405160e560020a62461bcd02815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f770000006044820152606401610506565b805470ff0000000000000000000000000000000019167002000000000000000000000000000000001781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d9061095a908b908b908b908b9061423c565b60008681526003602052604090208054879187916001108015612309575080546001604060020a038316105b6123285760405160e560020a62461bcd02815260040161050690613f66565b8584146123a05760405160e560020a62461bcd02815260206004820152603760248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f2073656564436f6d6d69746d656e7473206c656e6774680000000000000000006064820152608401610506565b60005b8481101561244d5760008686838181106123bf576123bf613f9d565b90506020028101906123d19190614036565b905011801561241c57506005546801000000000000000090046001604060020a031686868381811061240557612405613f9d565b90506020028101906124179190614036565b905011155b61243b5760405160e560020a62461bcd0281526004016105069061407c565b80612445816140d9565b9150506123a3565b50600089815260036020526040812080546001604060020a038b1690811061247757612477613f9d565b60009182526020909120600390910201905060018154608060020a900460ff1660048111156124a8576124a8613fb6565b146124f85760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061252657612526613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061256557612565613f9d565b905060200201602081019061257a9190613de2565b600160a060020a0316600160a060020a0316815260200190815260200160002060010180546125a8906140f4565b1590506125ca5760405160e560020a62461bcd028152600401610506906144e3565b8888828181106125dc576125dc613f9d565b90506020028101906125ee9190614036565b3360009081526001850160205260408120908e8e8681811061261257612612613f9d565b90506020020160208101906126279190613de2565b600160a060020a03168152602081019190915260400160002061264f926001909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061267457612674613f9d565b90506020020160208101906126899190613de2565b8d8d8781811061269b5761269b613f9d565b90506020028101906126ad9190614036565b6040516126bf96959493929190614540565b60405180910390a1806126d1816140d9565b915050612539565b600154600160a060020a031633146127065760405160e560020a62461bcd028152600401610506906144ac565b6005805467ffffffffffffffff19166001604060020a0392909216919091179055565b60008681526003602052604090208054879187916001108015612755575080546001604060020a038316105b6127745760405160e560020a62461bcd02815260040161050690613f66565b8584146127ec5760405160e560020a62461bcd02815260206004820152603460248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201527f65637265746b65794d61736b73206c656e6774680000000000000000000000006064820152608401610506565b60005b8481101561289957600086868381811061280b5761280b613f9d565b905060200281019061281d9190614036565b905011801561286857506005546801000000000000000090046001604060020a031686868381811061285157612851613f9d565b90506020028101906128639190614036565b905011155b6128875760405160e560020a62461bcd0281526004016105069061407c565b80612891816140d9565b9150506127ef565b50600089815260036020526040812080546001604060020a038b169081106128c3576128c3613f9d565b6000918252602090912060039182020191508154608060020a900460ff1660048111156128f2576128f2613fb6565b146129425760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164207373207068617365000000000000000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d1690811061297057612970613f9d565b9060005260206000209060020201905060005b87811015610e105760008260010160008d8d858181106129a5576129a5613f9d565b90506020020160208101906129ba9190613de2565b600160a060020a0316815260208082019290925260409081016000908120338252909252902060030180546129ee906140f4565b905011612a405760405160e560020a62461bcd02815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e74206669727374000000006044820152606401610506565b8160010160008c8c84818110612a5857612a58613f9d565b9050602002016020810190612a6d9190613de2565b600160a060020a031681526020808201929092526040908101600090812033825290925290206002018054612aa1906140f4565b159050612ac35760405160e560020a62461bcd02815260040161050690614132565b888882818110612ad557612ad5613f9d565b9050602002810190612ae79190614036565b8360010160008e8e86818110612aff57612aff613f9d565b9050602002016020810190612b149190613de2565b600160a060020a03168152602080820192909252604090810160009081203382529092529020612b49926002909101916136ec565b5060008051602061471d8339815191528d8d8d8d85818110612b6d57612b6d613f9d565b9050602002016020810190612b829190613de2565b338d8d87818110612b9557612b95613f9d565b9050602002810190612ba79190614036565b604051612bb9969594939291906145b7565b60405180910390a180612bcb816140d9565b915050612983565b600154600160a060020a03163314612c005760405160e560020a62461bcd028152600401610506906144ac565b600580546001604060020a0390921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055565b6000848152600360205260409020805460609186918691906001108015612c67575080546001604060020a038316105b612c865760405160e560020a62461bcd02815260040161050690613f66565b6000856001604060020a03811115612ca057612ca06142cf565b604051908082528060200260200182016040528015612ce557816020015b6040805180820190915260608082526020820152815260200190600190039081612cbe5790505b50905060005b86811015612ed55760008a815260036020526040902080546001604060020a038b16908110612d1c57612d1c613f9d565b90600052602060002090600302016001016000898984818110612d4157612d41613f9d565b9050602002016020810190612d569190613de2565b600160a060020a0316600160a060020a03168152602001908152602001600020604051806040016040529081600082018054612d91906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612dbd906140f4565b8015612e0a5780601f10612ddf57610100808354040283529160200191612e0a565b820191906000526020600020905b815481529060010190602001808311612ded57829003601f168201915b50505050508152602001600182018054612e23906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054612e4f906140f4565b8015612e9c5780601f10612e7157610100808354040283529160200191612e9c565b820191906000526020600020905b815481529060010190602001808311612e7f57829003601f168201915b505050505081525050828281518110612eb757612eb7613f9d565b60200260200101819052508080612ecd906140d9565b915050612ceb565b5098975050505050505050565b6000838152600360205260409020805460609185918491906001108015612f12575080546001604060020a038316105b612f315760405160e560020a62461bcd02815260040161050690613f66565b60008781526004602052604090208054889187916001604060020a03831610612f6f5760405160e560020a62461bcd02815260040161050690614298565b60008a815260046020526040902080546001604060020a038a161115612faa5760405160e560020a62461bcd02815260040161050690614298565b6000818a6001604060020a031681548110612fc757612fc7613f9d565b906000526020600020906002020190508060000160008c600160a060020a0316600160a060020a031681526020019081526020016000208054613009906140f4565b80601f0160208091040260200160405190810160405280929190818152602001828054613035906140f4565b80156130825780601f1061305757610100808354040283529160200191613082565b820191906000526020600020905b81548152906001019060200180831161306557829003601f168201915b5050505050985050505050505050509392505050565b600086815260036020526040902080548791879160011080156130c4575080546001604060020a038316105b6130e35760405160e560020a62461bcd02815260040161050690613f66565b85841461315b5760405160e560020a62461bcd02815260206004820152603c60248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f207365637265744b6579436f6d6d69746d656e7473206c656e677468000000006064820152608401610506565b60005b8481101561320857600086868381811061317a5761317a613f9d565b905060200281019061318c9190614036565b90501180156131d757506005546801000000000000000090046001604060020a03168686838181106131c0576131c0613f9d565b90506020028101906131d29190614036565b905011155b6131f65760405160e560020a62461bcd0281526004016105069061407c565b80613200816140d9565b91505061315e565b50600089815260036020526040812080546001604060020a038b1690811061323257613232613f9d565b60009182526020909120600390910201905060018154608060020a900460ff16600481111561326357613263613fb6565b146132b35760405160e560020a62461bcd02815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e6720706861736500000000006044820152606401610506565b60008a8152600460205260408120805490919082906001604060020a038d169081106132e1576132e1613f9d565b9060005260206000209060020201905060005b87811015610e10573360009081526001830160205260408120908c8c8481811061332057613320613f9d565b90506020020160208101906133359190613de2565b600160a060020a0316600160a060020a031681526020019081526020016000206003018054613363906140f4565b1590506133855760405160e560020a62461bcd028152600401610506906144e3565b88888281811061339757613397613f9d565b90506020028101906133a99190614036565b3360009081526001850160205260408120908e8e868181106133cd576133cd613f9d565b90506020020160208101906133e29190613de2565b600160a060020a03168152602081019190915260400160002061340a926003909101916136ec565b5060008051602061471d8339815191528d8d338e8e8681811061342f5761342f613f9d565b90506020020160208101906134449190613de2565b8d8d8781811061345657613456613f9d565b90506020028101906134689190614036565b60405161347a9695949392919061462e565b60405180910390a18061348c816140d9565b9150506132f4565b600084815260036020526040902080548591859160011080156134c0575080546001604060020a038316105b6134df5760405160e560020a62461bcd02815260040161050690613f66565b83158015906134f957506005546001604060020a03168411155b6135185760405160e560020a62461bcd0281526004016105069061407c565b600087815260036020526040812080546001604060020a03891690811061354157613541613f9d565b60009182526020909120600390910201905060028154608060020a900460ff16600481111561357257613572613fb6565b146135c25760405160e560020a62461bcd02815260206004820152601660248201527f6e6f7420696e2075706c6f6164696e67207068617365000000000000000000006044820152606401610506565b6000888152600460205260408120805490919082906001604060020a038b169081106135f0576135f0613f9d565b60009182526020808320338452600290920290910190819052604090912080549192509061361d906140f4565b1590506136955760405160e560020a62461bcd02815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201527f756c7469706c652074696d6573000000000000000000000000000000000000006064820152608401610506565b3360009081526020829052604090206136af9089896136ec565b5060008051602061471d8339815191528a8a3360008c8c6040516136d8969594939291906146a5565b60405180910390a150505050505050505050565b8280546136f8906140f4565b90600052602060002090601f01602090048101928261371a5760008555613760565b82601f106137335782800160ff19823516178555613760565b82800160010185558215613760579182015b82811115613760578235825591602001919060010190613745565b5061376c9291506137e4565b5090565b82805461377c906140f4565b90600052602060002090601f01602090048101928261379e5760008555613760565b82601f106137b757805160ff1916838001178555613760565b82800160010185558215613760579182015b828111156137605782518255916020019190600101906137c9565b5b8082111561376c57600081556001016137e5565b80356001604060020a038116811461381057600080fd5b919050565b6000806040838503121561382857600080fd5b82359150613838602084016137f9565b90509250929050565b803563ffffffff8116811461381057600080fd5b6000806000806080858703121561386b57600080fd5b8435935061387b602086016137f9565b925061388960408601613841565b915061389760608601613841565b905092959194509250565b60008083601f8401126138b457600080fd5b5081356001604060020a038111156138cb57600080fd5b60208301915083602080830285010111156138e557600080fd5b9250929050565b6000806000806000806080878903121561390557600080fd5b86359550613915602088016137f9565b945060408701356001604060020a038082111561393157600080fd5b61393d8a838b016138a2565b9096509450606089013591508082111561395657600080fd5b5061396389828a016138a2565b979a9699509497509295939492505050565b6000806000806060858703121561398b57600080fd5b8435935061399b602086016137f9565b925060408501356001604060020a038111156139b657600080fd5b6139c2878288016138a2565b95989497509550505050565b6000602080835260c083016001604060020a03855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b80831015613a5e578351600160a060020a03168252928401926001929092019190840190613a35565b509695505050505050565b600060208284031215613a7b57600080fd5b5035919050565b60005b83811015613a9d578181015183820152602001613a85565b83811115613aac576000848401525b50505050565b60008151808452613aca816020860160208601613a82565b601f01601f19169290920160200192915050565b60208152600160a060020a0382511660208201526000602083015160c06040840152613b0d60e0840182613ab2565b90506040840151601f1980858403016060860152613b2b8383613ab2565b92506060860151608086015260808601519150808584030160a086015250613b538282613ab2565b9150506001604060020a0360a08501511660c08401528091505092915050565b8035600160a060020a038116811461381057600080fd5b600080600080600060808688031215613ba257600080fd5b85359450613bb2602087016137f9565b935060408601356001604060020a03811115613bcd57600080fd5b613bd9888289016138a2565b9094509250613bec905060608701613b73565b90509295509295909350565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357603f19898403018552815160808151818652613c4282870182613ab2565b915050888201518582038a870152613c5a8282613ab2565b9150508782015185820389870152613c728282613ab2565b91505060608083015192508582038187015250613c8f8183613ab2565b968901969450505090860190600101613c1c565b509098975050505050505050565b60008083601f840112613cc357600080fd5b5081356001604060020a03811115613cda57600080fd5b6020830191508360208285010111156138e557600080fd5b60008060008060008060808789031215613d0b57600080fd5b86359550613d1b602088016137f9565b945060408701356001604060020a0380821115613d3757600080fd5b613d438a838b01613cb1565b90965094506060890135915080821115613d5c57600080fd5b5061396389828a01613cb1565b600080600080600060608688031215613d8157600080fd5b85356001604060020a0380821115613d9857600080fd5b613da489838a01613cb1565b9097509550602088013594506040880135915080821115613dc457600080fd5b50613dd188828901613cb1565b969995985093965092949392505050565b600060208284031215613df457600080fd5b613dfd82613b73565b9392505050565b600060208284031215613e1657600080fd5b613dfd826137f9565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015613ca357888303603f1901855281518051878552613e6788860182613ab2565b91890151858303868b0152919050613e7f8183613ab2565b968901969450505090860190600101613e43565b600080600060608486031215613ea857600080fd5b83359250613eb860208501613b73565b9150613ec6604085016137f9565b90509250925092565b602081526000613dfd6020830184613ab2565b60008060008060608587031215613ef857600080fd5b84359350613f08602086016137f9565b925060408501356001604060020a03811115613f2357600080fd5b6139c287828801613cb1565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b60e060020a634e487b7102600052603260045260246000fd5b60e060020a634e487b7102600052602160045260246000fd5b6020808252600f908201527f5461736b206e6f74206578697374730000000000000000000000000000000000604082015260600190565b60e060020a634e487b7102600052601160045260246000fd5b60008282101561403157614031614006565b500390565b6000808335601e1984360301811261404d57600080fd5b8301803591506001604060020a0382111561406757600080fd5b6020019150368190038213156138e557600080fd5b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201527f6f7220697420697320656d707479000000000000000000000000000000000000606082015260800190565b60006000198214156140ed576140ed614006565b5060010190565b60028104600182168061410857607f821691505b6020821081141561412c5760e060020a634e487b7102600052602260045260246000fd5b50919050565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6560408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600460c08301527f534545440000000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b9998505050505050505050565b60006060820186835260206001604060020a03871681850152606060408501528185835260808501905086925060005b86811015612ed557600160a060020a0361428585613b73565b168252928201929082019060010161426c565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b60e060020a634e487b7102600052604160045260246000fd5b878152600160a060020a038716602082015260a06040820152600061431160a08301878961418f565b856060840152828103608084015261432a81858761418f565b9a9950505050505050505050565b600082601f83011261434957600080fd5b81516001604060020a0380821115614363576143636142cf565b604051601f8301601f19908116603f0116810190828211818310171561438b5761438b6142cf565b816040528381528660208588010111156143a457600080fd5b6143b5846020830160208901613a82565b9695505050505050565b6000602082840312156143d157600080fd5b81516001604060020a03808211156143e857600080fd5b90830190604082860312156143fc57600080fd5b604051604081018181108382111715614417576144176142cf565b60405282518281111561442957600080fd5b61443587828601614338565b82525060208301518281111561444a57600080fd5b61445687828601614338565b60208301525095945050505050565b87815260a06020820152600061447f60a08301888a61418f565b82810360408401526144918188613ab2565b9050856060840152828103608084015261432a81858761418f565b60208082526013908201527f43616c6c6572206973206e6f74206f776e657200000000000000000000000000604082015260600190565b60208082526026908201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c6560408201527f2074696d65730000000000000000000000000000000000000000000000000000606082015260800190565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600860c08301527f53454544434d4d5400000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f534b4d41534b000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600a60c08301527f534b4d41534b434d4d540000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f565b8681526001604060020a03861660208201526000600160a060020a03808716604084015280861660608401525060c06080830152600660c08301527f574549474854000000000000000000000000000000000000000000000000000060e08301526101008060a084015261422f818401858761418f56feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa2646970667358221220090bb9e40e9f0d8db0e872ae690750129888dc252b68918d4c1c9c5034575a9f64736f6c634300080a0033", - "immutableReferences": {}, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:331:2", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:2", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "120:209:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "166:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "175:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "178:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "168:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "168:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "168:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "141:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "150:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "137:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "137:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "162:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "133:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "133:32:2" - }, - "nodeType": "YulIf", - "src": "130:52:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "191:29:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "210:9:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "204:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "204:16:2" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "195:5:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "283:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "292:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "295:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "285:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "285:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "285:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "242:5:2" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "253:5:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "268:1:2", - "type": "", - "value": "2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "271:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "exp", - "nodeType": "YulIdentifier", - "src": "264:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "264:11:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "277:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "260:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "260:19:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "249:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "249:31:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "239:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "239:42:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "232:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "232:50:2" - }, - "nodeType": "YulIf", - "src": "229:70:2" - }, - { - "nodeType": "YulAssignment", - "src": "308:15:2", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "318:5:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "308:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_IdentityContract_$2193_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "86:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "97:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "109:6:2", - "type": "" - } - ], - "src": "14:315:2" - } - ] - }, - "contents": "{\n { }\n function abi_decode_tuple_t_contract$_IdentityContract_$2193_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(exp(2, 160), 1)))) { revert(0, 0) }\n value0 := value\n }\n}", - "id": 2, - "language": "Yul", - "name": "#utility.yul" - } - ], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:34081:2", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:2", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "62:123:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "72:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "94:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "81:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "81:20:2" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "72:5:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "163:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "172:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "175:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "165:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "165:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "165:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "123:5:2" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "134:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "141:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "130:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "130:30:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "120:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "120:41:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "113:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "113:49:2" - }, - "nodeType": "YulIf", - "src": "110:69:2" - } - ] - }, - "name": "abi_decode_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "41:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "52:5:2", - "type": "" - } - ], - "src": "14:171:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "276:166:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "322:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "331:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "334:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "324:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "324:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "324:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "297:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "306:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "293:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "293:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "318:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "289:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "289:32:2" - }, - "nodeType": "YulIf", - "src": "286:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "347:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "370:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "357:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "357:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "347:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "389:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "421:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "432:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "417:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "417:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "399:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "399:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "389:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "234:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "245:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "257:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "265:6:2", - "type": "" - } - ], - "src": "190:252:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "495:115:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "505:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "527:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "514:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "514:20:2" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "505:5:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "588:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "597:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "600:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "590:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "590:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "590:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "556:5:2" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "567:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "574:10:2", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "563:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "563:22:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "553:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "553:33:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "546:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "546:41:2" - }, - "nodeType": "YulIf", - "src": "543:61:2" - } - ] - }, - "name": "abi_decode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "474:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "485:5:2", - "type": "" - } - ], - "src": "447:163:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "733:279:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "780:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "789:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "792:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "782:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "782:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "782:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "754:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "763:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "750:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "750:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "775:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "746:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "746:33:2" - }, - "nodeType": "YulIf", - "src": "743:53:2" - }, - { - "nodeType": "YulAssignment", - "src": "805:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "828:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "815:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "815:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "805:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "847:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "879:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "890:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "875:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "875:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "857:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "857:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "847:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "903:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "935:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "946:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "931:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "931:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "913:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "913:37:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "903:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "959:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "991:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1002:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "987:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "987:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "969:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "969:37:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "959:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_uint32t_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "675:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "686:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "698:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "706:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "714:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "722:6:2", - "type": "" - } - ], - "src": "615:397:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1101:286:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1150:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1159:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1162:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1152:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1152:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1152:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1129:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1137:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1125:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1125:17:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1144:3:2" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1121:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1121:27:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1114:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1114:35:2" - }, - "nodeType": "YulIf", - "src": "1111:55:2" - }, - { - "nodeType": "YulAssignment", - "src": "1175:30:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1198:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1185:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1185:20:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1175:6:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1248:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1257:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1260:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1250:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1250:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1250:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1220:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1228:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1217:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "1217:30:2" - }, - "nodeType": "YulIf", - "src": "1214:50:2" - }, - { - "nodeType": "YulAssignment", - "src": "1273:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1289:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1297:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1285:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1285:17:2" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "1273:8:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1365:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1374:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1377:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1367:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1367:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1367:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1325:6:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1337:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1345:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "1333:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1333:17:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1321:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1321:30:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1353:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1317:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1317:41:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1360:3:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1314:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "1314:50:2" - }, - "nodeType": "YulIf", - "src": "1311:70:2" - } - ] - }, - "name": "abi_decode_array_address_dyn_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1064:6:2", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1072:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "1080:8:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1090:6:2", - "type": "" - } - ], - "src": "1017:370:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1593:724:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1640:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1649:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1652:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1642:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1642:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1642:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1614:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1623:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1610:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1610:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1635:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1606:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1606:33:2" - }, - "nodeType": "YulIf", - "src": "1603:53:2" - }, - { - "nodeType": "YulAssignment", - "src": "1665:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1688:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1675:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1675:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1665:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1707:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1739:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1750:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1735:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1735:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "1717:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "1717:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1707:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1763:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1794:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1805:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1790:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1790:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1777:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1777:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1767:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1818:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1828:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1822:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1873:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1882:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1885:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1875:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "1875:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1875:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1861:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1869:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1858:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "1858:14:2" - }, - "nodeType": "YulIf", - "src": "1855:34:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1898:96:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1966:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1977:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1962:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1962:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1986:7:2" - } - ], - "functionName": { - "name": "abi_decode_array_address_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "1924:37:2" - }, - "nodeType": "YulFunctionCall", - "src": "1924:70:2" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "1902:8:2", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "1912:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2003:18:2", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "2013:8:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2003:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2030:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "2040:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "2030:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2057:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2090:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2101:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2086:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2086:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2073:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "2073:32:2" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "2061:8:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2134:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2143:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2146:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2136:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "2136:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2136:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2120:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2130:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2117:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "2117:16:2" - }, - "nodeType": "YulIf", - "src": "2114:36:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2159:98:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2227:9:2" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2238:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2223:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2223:24:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2249:7:2" - } - ], - "functionName": { - "name": "abi_decode_array_address_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "2185:37:2" - }, - "nodeType": "YulFunctionCall", - "src": "2185:72:2" - }, - "variables": [ - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "2163:8:2", - "type": "" - }, - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "2173:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2266:18:2", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "2276:8:2" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "2266:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2293:18:2", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "2303:8:2" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "2293:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1519:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1530:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1542:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1550:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "1558:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "1566:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "1574:6:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "1582:6:2", - "type": "" - } - ], - "src": "1392:925:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2448:125:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2458:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2470:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2481:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2466:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2466:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2458:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2500:9:2" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2515:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2523:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2511:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2511:55:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2493:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "2493:74:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2493:74:2" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IdentityContract_$2193__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2417:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2428:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2439:4:2", - "type": "" - } - ], - "src": "2322:251:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2716:439:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2762:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2771:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2774:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2764:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "2764:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2764:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2737:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2746:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2733:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2733:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2758:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2729:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2729:32:2" - }, - "nodeType": "YulIf", - "src": "2726:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "2787:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2810:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2797:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "2797:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2787:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2829:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2861:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2872:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2857:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2857:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "2839:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "2839:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2829:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2885:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2916:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2927:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2912:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2912:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2899:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "2899:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2889:6:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2974:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2983:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2986:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2976:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "2976:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2976:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2946:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2954:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2943:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "2943:30:2" - }, - "nodeType": "YulIf", - "src": "2940:50:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2999:96:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3067:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3078:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3063:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3063:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3087:7:2" - } - ], - "functionName": { - "name": "abi_decode_array_address_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "3025:37:2" - }, - "nodeType": "YulFunctionCall", - "src": "3025:70:2" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "3003:8:2", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "3013:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3104:18:2", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "3114:8:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3104:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3131:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "3141:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "3131:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2658:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2669:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2681:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2689:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2697:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "2705:6:2", - "type": "" - } - ], - "src": "2578:577:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3337:997:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3347:12:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3357:2:2", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3351:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3375:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3386:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3368:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3368:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3368:21:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3398:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3416:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3427:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3412:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3412:19:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "3402:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3451:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3462:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3447:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3447:18:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3477:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3471:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3471:13:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3486:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3467:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3467:38:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3440:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3440:66:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3440:66:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3515:42:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3545:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3553:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3541:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3541:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3535:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3535:22:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "3519:12:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3566:20:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3576:10:2", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "3570:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3606:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3617:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3602:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3602:18:2" - }, - { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "3626:12:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "3640:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3622:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3622:21:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3595:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3595:49:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3595:49:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3664:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3675:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3660:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3660:18:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3694:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3702:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3690:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3690:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3684:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3684:22:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "3708:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3680:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3680:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3653:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3653:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3653:59:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3732:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3743:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3728:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3728:19:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3763:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3771:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3759:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3759:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3753:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3753:22:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3777:4:2", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3749:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3749:33:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3721:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3721:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3721:62:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3792:45:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3824:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3832:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3820:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3820:16:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3814:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3814:23:2" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "3796:14:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3857:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3868:4:2", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3853:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3853:20:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3875:4:2", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3846:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3846:34:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3846:34:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3889:17:2", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "3900:6:2" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3893:3:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3915:35:2", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "3935:14:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3929:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3929:21:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3919:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "3966:6:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3974:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3959:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3959:22:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3959:22:2" - }, - { - "nodeType": "YulAssignment", - "src": "3990:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4001:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4012:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3997:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3997:19:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3990:3:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4025:37:2", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "4043:14:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4059:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4039:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4039:23:2" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "4029:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4071:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4080:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "4075:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4139:169:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4160:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "4175:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4169:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "4169:13:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4184:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4165:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4165:62:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4153:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4153:75:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4153:75:2" - }, - { - "nodeType": "YulAssignment", - "src": "4241:19:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4252:3:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4257:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4248:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4248:12:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4241:3:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4273:25:2", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "4287:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4295:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4283:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4283:15:2" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "4273:6:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4101:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4104:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "4098:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "4098:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "4112:18:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4114:14:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4123:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4126:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4119:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4119:9:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4114:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "4094:3:2", - "statements": [] - }, - "src": "4090:218:2" - }, - { - "nodeType": "YulAssignment", - "src": "4317:11:2", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4325:3:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4317:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__to_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3306:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3317:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3328:4:2", - "type": "" - } - ], - "src": "3160:1174:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4409:110:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4455:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4464:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4467:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4457:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4457:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4457:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4430:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4439:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4426:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4426:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4451:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4422:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4422:32:2" - }, - "nodeType": "YulIf", - "src": "4419:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "4480:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4503:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4490:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "4490:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4480:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4375:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4386:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4398:6:2", - "type": "" - } - ], - "src": "4339:180:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4577:205:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4587:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4596:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "4591:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4656:63:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "4681:3:2" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4686:1:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4677:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4677:11:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "4700:3:2" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4705:1:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4696:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4696:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4690:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "4690:18:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4670:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4670:39:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4670:39:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4617:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4620:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "4614:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "4614:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "4628:19:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4630:15:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4639:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4642:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4635:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4635:10:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4630:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "4610:3:2", - "statements": [] - }, - "src": "4606:113:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4745:31:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "4758:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4763:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4754:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4754:16:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4772:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4747:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4747:27:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4747:27:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4734:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4737:6:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4731:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "4731:13:2" - }, - "nodeType": "YulIf", - "src": "4728:48:2" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "4555:3:2", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "4560:3:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4565:6:2", - "type": "" - } - ], - "src": "4524:258:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4837:208:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4847:26:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4867:5:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4861:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "4861:12:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4851:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4889:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4894:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4882:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4882:19:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4882:19:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4936:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4943:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4932:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4932:16:2" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4954:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4959:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4950:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4950:14:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4966:6:2" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "4910:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "4910:63:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4910:63:2" - }, - { - "nodeType": "YulAssignment", - "src": "4982:57:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4997:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5010:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5018:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5006:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5006:15:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5027:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "5023:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5023:7:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5002:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5002:29:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4993:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4993:39:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5034:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4989:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4989:50:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4982:3:2" - } - ] - } - ] - }, - "name": "abi_encode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4814:5:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4821:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4829:3:2", - "type": "" - } - ], - "src": "4787:258:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5191:871:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5208:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5219:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5201:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5201:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5201:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5242:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5253:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5238:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5238:18:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5268:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5262:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5262:13:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5277:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5258:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5258:62:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5231:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5231:90:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5231:90:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5330:42:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5360:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5368:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5356:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5356:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5350:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5350:22:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "5334:12:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5392:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5403:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5388:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5388:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5408:4:2", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5381:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5381:32:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5381:32:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5422:66:2", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "5454:12:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5472:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5483:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5468:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5468:19:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "5436:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "5436:52:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "5426:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5497:44:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5529:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5537:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5525:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5525:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5519:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5519:22:2" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "5501:14:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5550:17:2", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5564:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "5560:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5560:7:2" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5554:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5587:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5598:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5583:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5583:18:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5611:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5619:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5607:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5607:22:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5631:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5603:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5603:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5576:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5576:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5576:59:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5644:55:2", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "5676:14:2" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5692:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "5658:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "5658:41:2" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "5648:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5719:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5730:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5715:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5715:19:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5746:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5754:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5742:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5742:15:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5736:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5736:22:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5708:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5708:51:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5708:51:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5768:45:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5800:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5808:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5796:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5796:16:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5790:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5790:23:2" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "5772:14:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5833:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5844:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5829:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5829:19:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "5858:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5866:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5854:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5854:22:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5878:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5850:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5850:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5822:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5822:60:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5822:60:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5891:55:2", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "5923:14:2" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "5939:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "5905:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "5905:41:2" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "5895:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5966:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5977:4:2", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5962:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5962:20:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5998:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6006:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5994:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5994:16:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5988:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "5988:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6013:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5984:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5984:48:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5955:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5955:78:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5955:78:2" - }, - { - "nodeType": "YulAssignment", - "src": "6042:14:2", - "value": { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "6050:6:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6042:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_Task_$62_memory_ptr__to_t_struct$_Task_$62_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5160:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5171:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5182:4:2", - "type": "" - } - ], - "src": "5050:1012:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6192:174:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6202:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6214:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6225:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6210:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6210:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6202:4:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6237:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6247:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6241:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6281:9:2" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6296:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6304:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6292:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6292:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6274:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6274:34:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6274:34:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6328:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6339:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6324:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6324:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6348:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6356:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6344:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6344:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6317:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6317:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6317:43:2" - } - ] - }, - "name": "abi_encode_tuple_t_uint64_t_uint64__to_t_uint64_t_uint64__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6153:9:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6164:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6172:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6183:4:2", - "type": "" - } - ], - "src": "6067:299:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6420:147:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6430:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6452:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6439:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "6439:20:2" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6430:5:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6545:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6554:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6557:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6547:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6547:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6547:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6481:5:2" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6492:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6499:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6488:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6488:54:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6478:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "6478:65:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6471:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6471:73:2" - }, - "nodeType": "YulIf", - "src": "6468:93:2" - } - ] - }, - "name": "abi_decode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6399:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6410:5:2", - "type": "" - } - ], - "src": "6371:196:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6727:497:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6774:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6783:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6786:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6776:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6776:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6776:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6748:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6757:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6744:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6744:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6769:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6740:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6740:33:2" - }, - "nodeType": "YulIf", - "src": "6737:53:2" - }, - { - "nodeType": "YulAssignment", - "src": "6799:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6822:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6809:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "6809:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6799:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6841:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6873:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6884:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6869:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6869:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "6851:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "6851:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6841:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6897:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6928:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6939:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6924:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6924:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6911:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "6911:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6901:6:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6986:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6995:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6998:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6988:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6988:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6988:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6958:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6966:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6955:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "6955:30:2" - }, - "nodeType": "YulIf", - "src": "6952:50:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7011:96:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7079:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7090:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7075:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7075:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7099:7:2" - } - ], - "functionName": { - "name": "abi_decode_array_address_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "7037:37:2" - }, - "nodeType": "YulFunctionCall", - "src": "7037:70:2" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "7015:8:2", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "7025:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7116:18:2", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "7126:8:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "7116:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7143:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "7153:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "7143:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7170:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7203:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7214:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7199:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7199:18:2" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "7180:18:2" - }, - "nodeType": "YulFunctionCall", - "src": "7180:38:2" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "7170:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6661:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6672:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6684:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6692:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6700:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "6708:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "6716:6:2", - "type": "" - } - ], - "src": "6572:652:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7426:1359:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "7436:12:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7446:2:2", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "7440:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7457:32:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7475:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7486:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7471:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7471:18:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "7461:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7505:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7516:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7498:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7498:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7498:21:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7528:17:2", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "7539:6:2" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7532:3:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7554:27:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7574:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "7568:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "7568:13:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7558:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "7597:6:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7605:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7590:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7590:22:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7590:22:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7621:12:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7631:2:2", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "7625:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7642:25:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7653:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7664:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7649:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7649:18:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7642:3:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7676:54:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7698:9:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7713:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7721:2:2" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "7709:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7709:15:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7694:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7694:31:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7727:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7690:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7690:40:2" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "7680:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7739:29:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7757:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7765:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7753:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7753:15:2" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "7743:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7777:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7786:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "7781:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7845:911:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7866:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "7879:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7887:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7875:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7875:22:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7903:2:2", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "7899:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7899:7:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7871:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7871:36:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7859:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7859:49:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7859:49:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7921:23:2", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "7937:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "7931:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "7931:13:2" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "7925:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7957:14:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7967:4:2", - "type": "", - "value": "0x80" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "7961:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7984:29:2", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "8010:2:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8004:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "8004:9:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "7988:12:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8033:6:2" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "8041:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8026:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8026:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8026:18:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8057:62:2", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "8089:12:2" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8107:6:2" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "8115:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8103:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8103:15:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "8071:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "8071:48:2" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "8061:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8132:40:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "8164:2:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8168:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8160:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8160:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8154:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "8154:18:2" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "8136:14:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8196:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8204:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8192:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8192:15:2" - }, - { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "8213:6:2" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8221:6:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8209:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8209:19:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8185:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8185:44:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8185:44:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8242:55:2", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "8274:14:2" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "8290:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "8256:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "8256:41:2" - }, - "variables": [ - { - "name": "tail_4", - "nodeType": "YulTypedName", - "src": "8246:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8310:40:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "8342:2:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "8346:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8338:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8338:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8332:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "8332:18:2" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "8314:14:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8374:6:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "8382:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8370:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8370:15:2" - }, - { - "arguments": [ - { - "name": "tail_4", - "nodeType": "YulIdentifier", - "src": "8391:6:2" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8399:6:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8387:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8387:19:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8363:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8363:44:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8363:44:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8420:55:2", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "8452:14:2" - }, - { - "name": "tail_4", - "nodeType": "YulIdentifier", - "src": "8468:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "8434:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "8434:41:2" - }, - "variables": [ - { - "name": "tail_5", - "nodeType": "YulTypedName", - "src": "8424:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8488:14:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8498:4:2", - "type": "", - "value": "0x60" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "8492:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8515:40:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "8547:2:2" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "8551:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8543:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8543:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8537:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "8537:18:2" - }, - "variables": [ - { - "name": "memberValue0_3", - "nodeType": "YulTypedName", - "src": "8519:14:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8579:6:2" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "8587:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8575:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8575:15:2" - }, - { - "arguments": [ - { - "name": "tail_5", - "nodeType": "YulIdentifier", - "src": "8596:6:2" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8604:6:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8592:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8592:19:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8568:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8568:44:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8568:44:2" - }, - { - "nodeType": "YulAssignment", - "src": "8625:51:2", - "value": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "8653:14:2" - }, - { - "name": "tail_5", - "nodeType": "YulIdentifier", - "src": "8669:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "8635:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "8635:41:2" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8625:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8689:25:2", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "8703:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8711:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8699:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8699:15:2" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "8689:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8727:19:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8738:3:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8743:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8734:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8734:12:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8727:3:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "7807:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7810:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "7804:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "7804:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "7818:18:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7820:14:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "7829:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7832:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7825:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7825:9:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "7820:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "7800:3:2", - "statements": [] - }, - "src": "7796:960:2" - }, - { - "nodeType": "YulAssignment", - "src": "8765:14:2", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "8773:6:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8765:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7395:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7406:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7417:4:2", - "type": "" - } - ], - "src": "7229:1556:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8891:125:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8901:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8913:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8924:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8909:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8909:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8901:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8943:9:2" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8958:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8966:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "8954:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8954:55:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8936:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8936:74:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8936:74:2" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8860:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8871:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8882:4:2", - "type": "" - } - ], - "src": "8790:226:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9093:275:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9142:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9151:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9154:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9144:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9144:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9144:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9121:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9129:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9117:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9117:17:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9136:3:2" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9113:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9113:27:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "9106:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9106:35:2" - }, - "nodeType": "YulIf", - "src": "9103:55:2" - }, - { - "nodeType": "YulAssignment", - "src": "9167:30:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9190:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9177:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "9177:20:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9167:6:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9240:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9249:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9252:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9242:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9242:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9242:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9212:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9220:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9209:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "9209:30:2" - }, - "nodeType": "YulIf", - "src": "9206:50:2" - }, - { - "nodeType": "YulAssignment", - "src": "9265:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9281:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9289:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9277:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9277:17:2" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "9265:8:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9346:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9355:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9358:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9348:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9348:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9348:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9317:6:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9325:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9313:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9313:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9334:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9309:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9309:30:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9341:3:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9306:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "9306:39:2" - }, - "nodeType": "YulIf", - "src": "9303:59:2" - } - ] - }, - "name": "abi_decode_bytes_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9056:6:2", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "9064:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "9072:8:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9082:6:2", - "type": "" - } - ], - "src": "9021:347:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9531:700:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9578:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9587:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9590:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9580:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9580:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9580:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9552:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9561:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9548:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9548:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9573:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9544:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9544:33:2" - }, - "nodeType": "YulIf", - "src": "9541:53:2" - }, - { - "nodeType": "YulAssignment", - "src": "9603:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9626:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9613:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "9613:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9603:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9645:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9677:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9688:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9673:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9673:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "9655:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "9655:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9645:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9701:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9732:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9743:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9728:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9728:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9715:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "9715:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9705:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9756:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9766:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9760:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9811:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9820:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9823:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9813:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9813:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9813:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9799:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9807:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9796:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "9796:14:2" - }, - "nodeType": "YulIf", - "src": "9793:34:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9836:84:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9892:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9903:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9888:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9888:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9912:7:2" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "9862:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "9862:58:2" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "9840:8:2", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "9850:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9929:18:2", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "9939:8:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9929:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9956:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "9966:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "9956:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9983:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10016:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10027:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10012:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10012:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9999:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "9999:32:2" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "9987:8:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10060:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10069:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10072:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10062:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10062:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10062:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "10046:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10056:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10043:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "10043:16:2" - }, - "nodeType": "YulIf", - "src": "10040:36:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10085:86:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10141:9:2" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "10152:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10137:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10137:24:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10163:7:2" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "10111:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "10111:60:2" - }, - "variables": [ - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "10089:8:2", - "type": "" - }, - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "10099:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10180:18:2", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "10190:8:2" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "10180:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10207:18:2", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "10217:8:2" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "10207:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9457:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9468:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9480:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9488:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9496:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9504:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9512:6:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "9520:6:2", - "type": "" - } - ], - "src": "9373:858:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10331:92:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10341:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10353:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10364:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10349:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10349:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10341:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10383:9:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10408:6:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10401:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10401:14:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10394:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10394:22:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10376:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10376:41:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10376:41:2" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10300:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10311:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "10322:4:2", - "type": "" - } - ], - "src": "10236:187:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10572:643:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10618:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10627:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10630:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10620:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10620:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10620:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10593:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10602:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10589:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10589:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10614:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10585:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10585:32:2" - }, - "nodeType": "YulIf", - "src": "10582:52:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10643:37:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10670:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10657:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "10657:23:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10647:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10689:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10699:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10693:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10744:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10753:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10756:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10746:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10746:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10746:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10732:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10740:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10729:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "10729:14:2" - }, - "nodeType": "YulIf", - "src": "10726:34:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10769:84:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10825:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10836:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10821:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10821:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10845:7:2" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "10795:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "10795:58:2" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "10773:8:2", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "10783:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10862:18:2", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "10872:8:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10862:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10889:18:2", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "10899:8:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10889:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10916:42:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10943:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10954:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10939:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10939:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10926:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "10926:32:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "10916:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10967:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11000:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11011:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10996:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10996:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10983:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "10983:32:2" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "10971:8:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11044:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11053:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11056:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11046:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "11046:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11046:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "11030:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11040:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11027:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "11027:16:2" - }, - "nodeType": "YulIf", - "src": "11024:36:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11069:86:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11125:9:2" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "11136:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11121:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11121:24:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11147:7:2" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "11095:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "11095:60:2" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "11073:8:2", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "11083:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11164:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "11174:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "11164:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11191:18:2", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "11201:8:2" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "11191:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptrt_bytes32t_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10506:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10517:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10529:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10537:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10545:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "10553:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "10561:6:2", - "type": "" - } - ], - "src": "10428:787:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11321:76:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11331:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11343:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11354:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11339:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11339:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11331:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11373:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11384:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11366:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "11366:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11366:25:2" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11290:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11301:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11312:4:2", - "type": "" - } - ], - "src": "11220:177:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11472:116:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11518:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11527:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11530:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11520:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "11520:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11520:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11493:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11502:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11489:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11489:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11514:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "11485:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11485:32:2" - }, - "nodeType": "YulIf", - "src": "11482:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "11543:39:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11572:9:2" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "11553:18:2" - }, - "nodeType": "YulFunctionCall", - "src": "11553:29:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11543:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11438:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11449:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11461:6:2", - "type": "" - } - ], - "src": "11402:186:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11662:115:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11708:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11717:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11720:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11710:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "11710:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11710:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11683:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11692:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11679:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11679:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11704:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "11675:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11675:32:2" - }, - "nodeType": "YulIf", - "src": "11672:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "11733:38:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11761:9:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "11743:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "11743:28:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11733:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11628:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11639:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11651:6:2", - "type": "" - } - ], - "src": "11593:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11983:949:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11993:12:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12003:2:2", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "11997:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12014:32:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12032:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12043:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12028:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12028:18:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "12018:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12062:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12073:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12055:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12055:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12055:21:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12085:17:2", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12096:6:2" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12089:3:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12111:27:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12131:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12125:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "12125:13:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "12115:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12154:6:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12162:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12147:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12147:22:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12147:22:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12178:12:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12188:2:2", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "12182:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12199:25:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12210:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12221:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12206:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12206:18:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12199:3:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12233:54:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12255:9:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12270:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12278:2:2" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "12266:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12266:15:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12251:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12251:31:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12284:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12247:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12247:40:2" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "12237:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12296:29:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12314:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12322:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12310:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12310:15:2" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "12300:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12334:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12343:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "12338:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12402:501:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12423:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12436:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12444:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12432:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12432:22:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12460:2:2", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "12456:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12456:7:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12428:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12428:36:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12416:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12416:49:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12416:49:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12478:23:2", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "12494:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12488:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "12488:13:2" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "12482:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12514:29:2", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "12540:2:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12534:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "12534:9:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "12518:12:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12563:6:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12571:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12556:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12556:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12556:18:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12587:62:2", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "12619:12:2" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12637:6:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12645:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12633:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12633:15:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "12601:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "12601:48:2" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "12591:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12662:40:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "12694:2:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12698:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12690:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12690:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12684:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "12684:18:2" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "12666:14:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12726:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12734:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12722:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12722:15:2" - }, - { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "12743:6:2" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12751:6:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12739:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12739:19:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12715:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12715:44:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12715:44:2" - }, - { - "nodeType": "YulAssignment", - "src": "12772:51:2", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "12800:14:2" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "12816:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "12782:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "12782:41:2" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12772:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12836:25:2", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "12850:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12858:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12846:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12846:15:2" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "12836:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12874:19:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12885:3:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12890:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12881:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12881:12:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12874:3:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12364:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12367:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12361:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "12361:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "12375:18:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12377:14:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12386:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12389:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12382:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12382:9:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12377:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "12357:3:2", - "statements": [] - }, - "src": "12353:550:2" - }, - { - "nodeType": "YulAssignment", - "src": "12912:14:2", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12920:6:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12912:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11952:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11963:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11974:4:2", - "type": "" - } - ], - "src": "11782:1150:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13040:223:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13086:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13095:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13098:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13088:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "13088:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "13088:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "13061:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13070:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13057:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13057:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13082:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "13053:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13053:32:2" - }, - "nodeType": "YulIf", - "src": "13050:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "13111:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13134:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13121:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "13121:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13111:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13153:48:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13186:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13197:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13182:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13182:18:2" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "13163:18:2" - }, - "nodeType": "YulFunctionCall", - "src": "13163:38:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13153:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13210:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13242:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13253:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13238:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13238:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "13220:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "13220:37:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "13210:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_addresst_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12990:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "13001:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13013:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "13021:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "13029:6:2", - "type": "" - } - ], - "src": "12937:326:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13387:99:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13404:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13415:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13397:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "13397:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "13397:21:2" - }, - { - "nodeType": "YulAssignment", - "src": "13427:53:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13453:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13465:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13476:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13461:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13461:18:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "13435:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "13435:45:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13427:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13356:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13367:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13378:4:2", - "type": "" - } - ], - "src": "13268:218:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13613:427:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13659:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13668:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13671:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13661:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "13661:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "13661:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "13634:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13643:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13630:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13630:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13655:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "13626:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13626:32:2" - }, - "nodeType": "YulIf", - "src": "13623:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "13684:33:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13707:9:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13694:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "13694:23:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13684:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13726:47:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13758:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13769:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13754:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13754:18:2" - } - ], - "functionName": { - "name": "abi_decode_uint64", - "nodeType": "YulIdentifier", - "src": "13736:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "13736:37:2" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13726:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13782:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13813:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13824:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13809:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13809:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13796:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "13796:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "13786:6:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13871:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13880:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13883:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13873:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "13873:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "13873:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "13843:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13851:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13840:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "13840:30:2" - }, - "nodeType": "YulIf", - "src": "13837:50:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13896:84:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13952:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "13963:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13948:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "13948:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "13972:7:2" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "13922:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "13922:58:2" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "13900:8:2", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "13910:8:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13989:18:2", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "13999:8:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "13989:6:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "14016:18:2", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "14026:8:2" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "14016:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13555:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "13566:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13578:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "13586:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "13594:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "13602:6:2", - "type": "" - } - ], - "src": "13491:549:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14219:179:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14236:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14247:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14229:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14229:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14229:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14270:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14281:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14266:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "14266:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14286:2:2", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14259:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14259:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14259:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14309:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14320:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14305:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "14305:18:2" - }, - { - "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14325:31:2", - "type": "", - "value": "Must called by the task owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14298:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14298:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14298:59:2" - }, - { - "nodeType": "YulAssignment", - "src": "14366:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14378:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14389:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14374:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "14374:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14366:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14196:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14210:4:2", - "type": "" - } - ], - "src": "14045:353:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14577:175:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14594:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14605:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14587:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14587:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14587:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14628:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14639:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14624:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "14624:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14644:2:2", - "type": "", - "value": "25" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14617:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14617:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14617:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14667:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14678:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14663:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "14663:18:2" - }, - { - "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14683:27:2", - "type": "", - "value": "this round does not exist" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14656:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14656:55:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14656:55:2" - }, - { - "nodeType": "YulAssignment", - "src": "14720:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14732:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14743:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14728:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "14728:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14720:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14554:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14568:4:2", - "type": "" - } - ], - "src": "14403:349:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14789:152:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14806:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14809:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14799:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14799:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14799:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14903:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14906:4:2", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14896:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14896:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14896:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14927:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14930:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14920:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14920:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14920:15:2" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "14757:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14978:152:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14995:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14998:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14988:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "14988:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "14988:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15092:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15095:4:2", - "type": "", - "value": "0x21" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15085:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15085:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15085:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15116:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15119:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15109:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15109:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15109:15:2" - } - ] - }, - "name": "panic_error_0x21", - "nodeType": "YulFunctionDefinition", - "src": "14946:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15262:144:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15272:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15284:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15295:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15280:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15280:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15272:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15314:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15325:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15307:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15307:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15307:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15352:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15363:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15348:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15348:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "15372:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15380:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15368:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15368:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15341:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15341:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15341:59:2" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15223:9:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "15234:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15242:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15253:4:2", - "type": "" - } - ], - "src": "15135:271:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15585:165:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15602:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15613:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15595:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15595:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15595:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15636:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15647:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15632:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15632:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15652:2:2", - "type": "", - "value": "15" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15625:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15625:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15625:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15675:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15686:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15671:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15671:18:2" - }, - { - "hexValue": "5461736b206e6f7420657869737473", - "kind": "string", - "nodeType": "YulLiteral", - "src": "15691:17:2", - "type": "", - "value": "Task not exists" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15664:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15664:45:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15664:45:2" - }, - { - "nodeType": "YulAssignment", - "src": "15718:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15730:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15741:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15726:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15726:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15718:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15562:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15576:4:2", - "type": "" - } - ], - "src": "15411:339:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15929:296:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15946:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15957:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15939:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15939:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15939:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15980:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15991:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15976:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "15976:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15996:2:2", - "type": "", - "value": "66" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15969:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "15969:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "15969:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16019:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16030:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16015:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16015:18:2" - }, - { - "hexValue": "74686520726f756e6420686173206265656e20616c7265616479207374617274", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16035:34:2", - "type": "", - "value": "the round has been already start" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16008:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16008:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16008:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16090:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16101:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16086:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16086:18:2" - }, - { - "hexValue": "6564206f72207468652070726520726f756e6420646f6573206e6f7420657869", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16106:34:2", - "type": "", - "value": "ed or the pre round does not exi" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16079:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16079:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16079:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16161:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16172:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16157:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16157:19:2" - }, - { - "hexValue": "7374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16178:4:2", - "type": "", - "value": "st" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16150:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16150:33:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16150:33:2" - }, - { - "nodeType": "YulAssignment", - "src": "16192:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16204:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16215:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16200:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16200:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16192:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15906:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15920:4:2", - "type": "" - } - ], - "src": "15755:470:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16262:152:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16279:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16282:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16272:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16272:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16272:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16376:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16379:4:2", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16369:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16369:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16369:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16400:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16403:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16393:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16393:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16393:15:2" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "16230:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16468:76:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "16490:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "16492:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "16492:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16492:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "16484:1:2" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "16487:1:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "16481:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "16481:8:2" - }, - "nodeType": "YulIf", - "src": "16478:34:2" - }, - { - "nodeType": "YulAssignment", - "src": "16521:17:2", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "16533:1:2" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "16536:1:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16529:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16529:9:2" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "16521:4:2" - } - ] - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "16450:1:2", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "16453:1:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "16459:4:2", - "type": "" - } - ], - "src": "16419:125:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16723:233:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16740:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16751:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16733:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16733:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16733:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16774:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16785:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16770:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16770:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16790:2:2", - "type": "", - "value": "43" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16763:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16763:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16763:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16813:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16824:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16809:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16809:18:2" - }, - { - "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f2073", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16829:34:2", - "type": "", - "value": "senders length is not equal to s" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16802:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16802:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16802:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16884:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16895:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16880:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16880:18:2" - }, - { - "hexValue": "65656473206c656e677468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16900:13:2", - "type": "", - "value": "eeds length" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16873:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "16873:41:2" - }, - "nodeType": "YulExpressionStatement", - "src": "16873:41:2" - }, - { - "nodeType": "YulAssignment", - "src": "16923:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16935:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16946:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16931:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "16931:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16923:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16700:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16714:4:2", - "type": "" - } - ], - "src": "16549:407:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17055:427:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "17065:51:2", - "value": { - "arguments": [ - { - "name": "ptr_to_tail", - "nodeType": "YulIdentifier", - "src": "17104:11:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17091:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "17091:25:2" - }, - "variables": [ - { - "name": "rel_offset_of_tail", - "nodeType": "YulTypedName", - "src": "17069:18:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17205:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17214:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17217:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17207:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17207:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17207:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "rel_offset_of_tail", - "nodeType": "YulIdentifier", - "src": "17139:18:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "functionName": { - "name": "calldatasize", - "nodeType": "YulIdentifier", - "src": "17167:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "17167:14:2" - }, - { - "name": "base_ref", - "nodeType": "YulIdentifier", - "src": "17183:8:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17163:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17163:29:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17198:2:2", - "type": "", - "value": "30" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "17194:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17194:7:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17159:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17159:43:2" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "17135:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17135:68:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "17128:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17128:76:2" - }, - "nodeType": "YulIf", - "src": "17125:96:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17230:47:2", - "value": { - "arguments": [ - { - "name": "base_ref", - "nodeType": "YulIdentifier", - "src": "17248:8:2" - }, - { - "name": "rel_offset_of_tail", - "nodeType": "YulIdentifier", - "src": "17258:18:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17244:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17244:33:2" - }, - "variables": [ - { - "name": "addr_1", - "nodeType": "YulTypedName", - "src": "17234:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17286:30:2", - "value": { - "arguments": [ - { - "name": "addr_1", - "nodeType": "YulIdentifier", - "src": "17309:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17296:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "17296:20:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17286:6:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17359:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17368:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17371:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17361:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17361:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17361:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17331:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17339:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "17328:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "17328:30:2" - }, - "nodeType": "YulIf", - "src": "17325:50:2" - }, - { - "nodeType": "YulAssignment", - "src": "17384:25:2", - "value": { - "arguments": [ - { - "name": "addr_1", - "nodeType": "YulIdentifier", - "src": "17396:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17404:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17392:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17392:17:2" - }, - "variableNames": [ - { - "name": "addr", - "nodeType": "YulIdentifier", - "src": "17384:4:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17460:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17469:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17472:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17462:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17462:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17462:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "addr", - "nodeType": "YulIdentifier", - "src": "17425:4:2" - }, - { - "arguments": [ - { - "arguments": [], - "functionName": { - "name": "calldatasize", - "nodeType": "YulIdentifier", - "src": "17435:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "17435:14:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "17451:6:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17431:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17431:27:2" - } - ], - "functionName": { - "name": "sgt", - "nodeType": "YulIdentifier", - "src": "17421:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17421:38:2" - }, - "nodeType": "YulIf", - "src": "17418:58:2" - } - ] - }, - "name": "access_calldata_tail_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "base_ref", - "nodeType": "YulTypedName", - "src": "17012:8:2", - "type": "" - }, - { - "name": "ptr_to_tail", - "nodeType": "YulTypedName", - "src": "17022:11:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "addr", - "nodeType": "YulTypedName", - "src": "17038:4:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "17044:6:2", - "type": "" - } - ], - "src": "16961:521:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17661:236:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17678:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17689:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17671:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17671:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17671:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17712:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17723:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17708:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17708:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17728:2:2", - "type": "", - "value": "46" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17701:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17701:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17701:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17751:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17762:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17747:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17747:18:2" - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d697420", - "kind": "string", - "nodeType": "YulLiteral", - "src": "17767:34:2", - "type": "", - "value": "commitment length exceeds limit " - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17740:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17740:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17740:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17822:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17833:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17818:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17818:18:2" - }, - { - "hexValue": "6f7220697420697320656d707479", - "kind": "string", - "nodeType": "YulLiteral", - "src": "17838:16:2", - "type": "", - "value": "or it is empty" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17811:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "17811:44:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17811:44:2" - }, - { - "nodeType": "YulAssignment", - "src": "17864:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17876:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17887:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17872:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17872:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17864:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17638:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "17652:4:2", - "type": "" - } - ], - "src": "17487:410:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17949:88:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "17980:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "17982:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "17982:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "17982:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "17965:5:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17976:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "17972:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "17972:6:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "17962:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "17962:17:2" - }, - "nodeType": "YulIf", - "src": "17959:43:2" - }, - { - "nodeType": "YulAssignment", - "src": "18011:20:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "18022:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18029:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18018:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18018:13:2" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "18011:3:2" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "17931:5:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "17941:3:2", - "type": "" - } - ], - "src": "17902:135:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18216:172:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18233:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18244:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18226:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18226:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18226:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18267:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18278:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18263:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18263:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18283:2:2", - "type": "", - "value": "22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18256:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18256:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18256:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18306:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18317:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18302:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18302:18:2" - }, - { - "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "kind": "string", - "nodeType": "YulLiteral", - "src": "18322:24:2", - "type": "", - "value": "not in upload ss phase" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18295:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18295:52:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18295:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "18356:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18368:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18379:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18364:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18364:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18356:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18193:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "18207:4:2", - "type": "" - } - ], - "src": "18042:346:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18448:382:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18458:22:2", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "18472:4:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18478:1:2", - "type": "", - "value": "2" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "18468:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18468:12:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18458:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18489:38:2", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "18519:4:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18525:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "18515:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18515:12:2" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "18493:18:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18566:31:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18568:27:2", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18582:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18590:4:2", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "18578:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "18578:17:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18568:6:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "18546:18:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "18539:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18539:26:2" - }, - "nodeType": "YulIf", - "src": "18536:61:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18656:168:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18677:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18680:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18670:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18670:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18670:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18778:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18781:4:2", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18771:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18771:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18771:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18806:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18809:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18799:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "18799:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "18799:15:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "18612:18:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18635:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18643:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "18632:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "18632:14:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "18609:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "18609:38:2" - }, - "nodeType": "YulIf", - "src": "18606:218:2" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "18428:4:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "18437:6:2", - "type": "" - } - ], - "src": "18393:437:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19009:178:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19026:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19037:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19019:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19019:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19019:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19060:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19071:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19056:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19056:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19076:2:2", - "type": "", - "value": "28" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19049:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19049:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19049:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19099:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19110:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19095:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19095:18:2" - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "19115:30:2", - "type": "", - "value": "must upload commitment first" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19088:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19088:58:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19088:58:2" - }, - { - "nodeType": "YulAssignment", - "src": "19155:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19167:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19178:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19163:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19163:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19155:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18986:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "19000:4:2", - "type": "" - } - ], - "src": "18835:352:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19366:223:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19383:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19394:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19376:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19376:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19376:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19417:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19428:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19413:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19413:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19433:2:2", - "type": "", - "value": "33" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19406:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19406:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19406:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19456:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19467:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19452:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19452:18:2" - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "19472:34:2", - "type": "", - "value": "cannot upload seed multiple time" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19445:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19445:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19445:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19527:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19538:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19523:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19523:18:2" - }, - { - "hexValue": "73", - "kind": "string", - "nodeType": "YulLiteral", - "src": "19543:3:2", - "type": "", - "value": "s" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19516:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19516:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19516:31:2" - }, - { - "nodeType": "YulAssignment", - "src": "19556:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19568:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19579:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19564:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19564:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19556:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "19343:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "19357:4:2", - "type": "" - } - ], - "src": "19192:397:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19660:200:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19677:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19682:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19670:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19670:19:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19670:19:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19715:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19720:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19711:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19711:14:2" - }, - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "19727:5:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19734:6:2" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "19698:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "19698:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19698:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19765:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19770:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19761:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19761:16:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19779:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19757:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19757:27:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19786:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19750:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "19750:38:2" - }, - "nodeType": "YulExpressionStatement", - "src": "19750:38:2" - }, - { - "nodeType": "YulAssignment", - "src": "19797:57:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19812:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19825:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19833:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19821:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19821:15:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19842:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "19838:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19838:7:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "19817:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19817:29:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19808:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19808:39:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19849:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19804:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "19804:50:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "19797:3:2" - } - ] - } - ] - }, - "name": "abi_encode_bytes_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "19629:5:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "19636:6:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "19644:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "19652:3:2", - "type": "" - } - ], - "src": "19594:266:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20205:538:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20222:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20233:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20215:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20215:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20215:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20260:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20271:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20256:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20256:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "20280:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20288:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "20276:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20276:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20249:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20249:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20249:59:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20317:52:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20327:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "20321:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20389:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20400:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20385:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20385:18:2" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "20409:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "20417:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "20405:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20405:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20378:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20378:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20378:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20441:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20452:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20437:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20437:18:2" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "20461:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "20469:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "20457:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20457:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20430:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20430:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20430:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20493:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20504:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20489:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20489:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20510:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20482:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20482:32:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20482:32:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20534:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20545:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20530:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20530:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20551:1:2", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20523:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20523:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20523:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20573:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20584:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20569:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20569:19:2" - }, - { - "hexValue": "53454544", - "kind": "string", - "nodeType": "YulLiteral", - "src": "20590:6:2", - "type": "", - "value": "SEED" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20562:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20562:35:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20562:35:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20606:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20616:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "20610:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20639:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20650:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20635:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20635:19:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "20656:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20628:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20628:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20628:31:2" - }, - { - "nodeType": "YulAssignment", - "src": "20668:69:2", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "20702:6:2" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "20710:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20722:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "20733:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20718:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20718:18:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "20676:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "20676:61:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20668:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20134:9:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "20145:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "20153:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "20161:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "20169:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "20177:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "20185:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20196:4:2", - "type": "" - } - ], - "src": "19865:878:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20922:172:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20939:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20950:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20932:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20932:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20932:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20973:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20984:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20969:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "20969:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20989:2:2", - "type": "", - "value": "22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20962:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "20962:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "20962:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21012:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21023:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21008:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21008:18:2" - }, - { - "hexValue": "4d7573742070726f7669646520616464726573736573", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21028:24:2", - "type": "", - "value": "Must provide addresses" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21001:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21001:52:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21001:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "21062:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21074:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21085:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21070:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21070:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21062:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20899:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20913:4:2", - "type": "" - } - ], - "src": "20748:346:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21273:170:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21290:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21301:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21283:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21283:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21283:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21324:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21335:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21320:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21320:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21340:2:2", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21313:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21313:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21313:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21363:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21374:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21359:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21359:18:2" - }, - { - "hexValue": "43616e646964617465206d757374206578697374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21379:22:2", - "type": "", - "value": "Candidate must exist" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21352:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21352:50:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21352:50:2" - }, - { - "nodeType": "YulAssignment", - "src": "21411:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21423:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21434:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21419:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21419:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21411:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21250:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21264:4:2", - "type": "" - } - ], - "src": "21099:344:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21663:610:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "21673:32:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21691:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21702:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21687:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21687:18:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "21677:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21721:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21732:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21714:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21714:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21714:25:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21748:12:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21758:2:2", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "21752:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21780:9:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "21791:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21776:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21776:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "21800:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21808:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "21796:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21796:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21769:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21769:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21769:59:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21848:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21859:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21844:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21844:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21864:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21837:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21837:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21837:30:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21876:17:2", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "21887:6:2" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "21880:3:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "21909:6:2" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "21917:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21902:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "21902:22:2" - }, - "nodeType": "YulExpressionStatement", - "src": "21902:22:2" - }, - { - "nodeType": "YulAssignment", - "src": "21933:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21944:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21955:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21940:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "21940:19:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21933:3:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21968:20:2", - "value": { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "21982:6:2" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "21972:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21997:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22006:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "22001:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22065:182:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22086:3:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "22114:6:2" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "22095:18:2" - }, - "nodeType": "YulFunctionCall", - "src": "22095:26:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22123:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "22091:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22091:75:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22079:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22079:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22079:88:2" - }, - { - "nodeType": "YulAssignment", - "src": "22180:19:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22191:3:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22196:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22187:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22187:12:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22180:3:2" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "22212:25:2", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "22226:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22234:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22222:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22222:15:2" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "22212:6:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22027:1:2" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "22030:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "22024:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "22024:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "22038:18:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22040:14:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22049:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22052:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22045:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22045:9:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22040:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "22020:3:2", - "statements": [] - }, - "src": "22016:231:2" - }, - { - "nodeType": "YulAssignment", - "src": "22256:11:2", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22264:3:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22256:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_array$_t_address_$dyn_calldata_ptr__to_t_bytes32_t_uint64_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21608:9:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "21619:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "21627:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "21635:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "21643:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21654:4:2", - "type": "" - } - ], - "src": "21448:825:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22452:177:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22469:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22480:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22462:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22462:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22462:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22503:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22514:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22499:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22499:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22519:2:2", - "type": "", - "value": "27" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22492:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22492:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22492:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22542:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22553:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22538:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22538:18:2" - }, - { - "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "22558:29:2", - "type": "", - "value": "Calculating has not started" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22531:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22531:57:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22531:57:2" - }, - { - "nodeType": "YulAssignment", - "src": "22597:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22609:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22620:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22605:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22605:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22597:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "22429:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "22443:4:2", - "type": "" - } - ], - "src": "22278:351:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22808:176:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22825:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22836:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22818:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22818:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22818:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22859:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22870:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22855:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22855:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22875:2:2", - "type": "", - "value": "26" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22848:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22848:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22848:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22898:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22909:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22894:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22894:18:2" - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "kind": "string", - "nodeType": "YulLiteral", - "src": "22914:28:2", - "type": "", - "value": "The Task Round Must exists" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22887:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "22887:56:2" - }, - "nodeType": "YulExpressionStatement", - "src": "22887:56:2" - }, - { - "nodeType": "YulAssignment", - "src": "22952:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22964:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22975:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22960:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "22960:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22952:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "22785:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "22799:4:2", - "type": "" - } - ], - "src": "22634:350:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23021:152:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23038:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23041:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23031:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23031:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23031:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23135:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23138:4:2", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23128:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23128:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23128:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23159:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23162:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "23152:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23152:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23152:15:2" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "22989:184:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23352:171:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23369:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23380:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23362:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23362:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23362:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23403:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23414:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23399:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23399:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23419:2:2", - "type": "", - "value": "21" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23392:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23392:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23392:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23442:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23453:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23438:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23438:18:2" - }, - { - "hexValue": "6a6f696e2070686173652068617320706173736564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23458:23:2", - "type": "", - "value": "join phase has passed" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23431:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23431:51:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23431:51:2" - }, - { - "nodeType": "YulAssignment", - "src": "23491:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23503:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23514:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23499:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23499:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23491:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23329:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23343:4:2", - "type": "" - } - ], - "src": "23178:345:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23702:231:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23719:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23730:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23712:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23712:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23712:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23753:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23764:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23749:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23749:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23769:2:2", - "type": "", - "value": "41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23742:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23742:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23742:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23792:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23803:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23788:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23788:18:2" - }, - { - "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23808:34:2", - "type": "", - "value": "Cannot join the same round multi" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23781:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23781:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23781:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23863:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23874:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23859:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23859:18:2" - }, - { - "hexValue": "706c652074696d6573", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23879:11:2", - "type": "", - "value": "ple times" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23852:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "23852:39:2" - }, - "nodeType": "YulExpressionStatement", - "src": "23852:39:2" - }, - { - "nodeType": "YulAssignment", - "src": "23900:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23912:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23923:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23908:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "23908:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23900:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23679:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23693:4:2", - "type": "" - } - ], - "src": "23528:405:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24211:427:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24228:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "24239:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24221:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24221:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24221:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24266:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24277:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24262:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24262:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "24286:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24294:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "24282:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24282:55:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24255:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24255:83:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24255:83:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24358:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24369:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24354:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24354:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24374:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24347:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24347:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24347:31:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24387:76:2", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "24427:6:2" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "24435:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24447:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24458:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24443:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24443:19:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "24401:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "24401:62:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "24391:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24483:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24494:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24479:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24479:18:2" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "24499:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24472:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24472:34:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24472:34:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24526:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24537:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24522:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24522:19:2" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "24547:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24555:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "24543:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24543:22:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24515:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24515:51:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24515:51:2" - }, - { - "nodeType": "YulAssignment", - "src": "24575:57:2", - "value": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "24609:6:2" - }, - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "24617:6:2" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "24625:6:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "24583:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "24583:49:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24575:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_address_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr__to_t_uint256_t_address_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24132:9:2", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "24143:6:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "24151:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "24159:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "24167:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "24175:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "24183:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "24191:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24202:4:2", - "type": "" - } - ], - "src": "23938:700:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24707:622:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "24756:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24765:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24768:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "24758:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24758:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24758:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "24735:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24743:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24731:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24731:17:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "24750:3:2" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "24727:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24727:27:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "24720:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "24720:35:2" - }, - "nodeType": "YulIf", - "src": "24717:55:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24781:23:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "24797:6:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "24791:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "24791:13:2" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "24785:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24813:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24823:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "24817:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24864:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "24866:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "24866:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "24866:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "24856:2:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "24860:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "24853:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "24853:10:2" - }, - "nodeType": "YulIf", - "src": "24850:36:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24895:17:2", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24909:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "24905:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24905:7:2" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "24899:2:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24921:23:2", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24941:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "24935:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "24935:9:2" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "24925:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24953:71:2", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "24975:6:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "24999:2:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25003:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24995:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24995:13:2" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "25010:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "24991:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24991:22:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25015:2:2", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24987:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24987:31:2" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "25020:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "24983:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24983:40:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24971:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "24971:53:2" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "24957:10:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25083:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "25085:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "25085:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25085:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "25042:10:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "25054:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25039:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25039:18:2" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "25062:10:2" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "25074:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "25059:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25059:22:2" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "25036:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25036:46:2" - }, - "nodeType": "YulIf", - "src": "25033:72:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25121:2:2", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "25125:10:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25114:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25114:22:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25114:22:2" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "25152:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "25160:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25145:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25145:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25145:18:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25211:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25220:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25223:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "25213:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25213:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25213:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "25186:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "25194:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25182:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25182:15:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25199:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25178:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25178:26:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "25206:3:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25175:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25175:35:2" - }, - "nodeType": "YulIf", - "src": "25172:55:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "25262:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25270:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25258:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25258:17:2" - }, - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "25281:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25289:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25277:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25277:17:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "25296:2:2" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "25236:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "25236:63:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25236:63:2" - }, - { - "nodeType": "YulAssignment", - "src": "25308:15:2", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "25317:6:2" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "25308:5:2" - } - ] - } - ] - }, - "name": "abi_decode_string_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "24681:6:2", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "24689:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "24697:5:2", - "type": "" - } - ], - "src": "24643:686:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25437:839:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "25483:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25492:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25495:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "25485:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25485:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25485:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "25458:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25467:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "25454:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25454:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25479:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "25450:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25450:32:2" - }, - "nodeType": "YulIf", - "src": "25447:52:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "25508:30:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25528:9:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "25522:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "25522:16:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "25512:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "25547:28:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25557:18:2", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "25551:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25602:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25611:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25614:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "25604:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25604:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25604:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "25590:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "25598:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25587:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25587:14:2" - }, - "nodeType": "YulIf", - "src": "25584:34:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "25627:32:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25641:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "25652:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25637:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25637:22:2" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "25631:2:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25699:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25708:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25711:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "25701:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25701:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25701:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "25679:7:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "25688:2:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "25675:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25675:16:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25693:4:2", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "25671:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25671:27:2" - }, - "nodeType": "YulIf", - "src": "25668:47:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "25724:25:2", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25744:4:2", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "25738:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "25738:11:2" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "25728:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "25758:35:2", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "25780:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25788:4:2", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25776:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "25776:17:2" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "25762:10:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25852:22:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "25854:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "25854:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25854:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "25811:10:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "25823:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25808:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25808:18:2" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "25831:10:2" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "25843:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "25828:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25828:22:2" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "25805:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25805:46:2" - }, - "nodeType": "YulIf", - "src": "25802:72:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25890:4:2", - "type": "", - "value": "0x40" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "25896:10:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25883:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25883:24:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25883:24:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "25916:25:2", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "25938:2:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "25932:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "25932:9:2" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "25920:8:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25970:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25979:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25982:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "25972:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25972:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25972:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "25956:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "25966:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25953:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "25953:16:2" - }, - "nodeType": "YulIf", - "src": "25950:36:2" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "26002:6:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "26043:2:2" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "26047:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26039:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26039:17:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "26058:7:2" - } - ], - "functionName": { - "name": "abi_decode_string_fromMemory", - "nodeType": "YulIdentifier", - "src": "26010:28:2" - }, - "nodeType": "YulFunctionCall", - "src": "26010:56:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25995:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "25995:72:2" - }, - "nodeType": "YulExpressionStatement", - "src": "25995:72:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "26076:34:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "26102:2:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26106:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26098:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26098:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "26092:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "26092:18:2" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "26080:8:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26139:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26148:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26151:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "26141:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26141:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26141:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "26125:8:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "26135:2:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "26122:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "26122:16:2" - }, - "nodeType": "YulIf", - "src": "26119:36:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "26175:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26183:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26171:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26171:15:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "26221:2:2" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "26225:8:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26217:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26217:17:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "26236:7:2" - } - ], - "functionName": { - "name": "abi_decode_string_fromMemory", - "nodeType": "YulIdentifier", - "src": "26188:28:2" - }, - "nodeType": "YulFunctionCall", - "src": "26188:56:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26164:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26164:81:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26164:81:2" - }, - { - "nodeType": "YulAssignment", - "src": "26254:16:2", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "26264:6:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "26254:6:2" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_Node_$1934_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "25403:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "25414:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "25426:6:2", - "type": "" - } - ], - "src": "25334:942:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26574:450:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26591:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "26602:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26584:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26584:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26584:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26629:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26640:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26625:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26625:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26645:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26618:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26618:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26618:31:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "26658:76:2", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "26698:6:2" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "26706:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26718:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26729:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26714:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26714:19:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "26672:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "26672:62:2" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "26662:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26754:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26765:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26750:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26750:18:2" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "26774:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26782:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "26770:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26770:22:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26743:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26743:50:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26743:50:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "26802:47:2", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "26834:6:2" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "26842:6:2" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "26816:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "26816:33:2" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "26806:6:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26869:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26880:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26865:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26865:18:2" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "26885:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26858:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26858:34:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26858:34:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26912:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26923:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26908:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26908:19:2" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "26933:6:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26941:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "26929:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "26929:22:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26901:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "26901:51:2" - }, - "nodeType": "YulExpressionStatement", - "src": "26901:51:2" - }, - { - "nodeType": "YulAssignment", - "src": "26961:57:2", - "value": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "26995:6:2" - }, - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "27003:6:2" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "27011:6:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "26969:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "26969:49:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26961:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_memory_ptr_t_bytes32_t_string_calldata_ptr__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26495:9:2", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "26506:6:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "26514:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "26522:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "26530:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "26538:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "26546:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "26554:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26565:4:2", - "type": "" - } - ], - "src": "26281:743:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27203:169:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27220:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27231:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27213:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27213:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27213:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27254:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27265:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27250:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27250:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27270:2:2", - "type": "", - "value": "19" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27243:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27243:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27243:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27293:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27304:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27289:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27289:18:2" - }, - { - "hexValue": "43616c6c6572206973206e6f74206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "27309:21:2", - "type": "", - "value": "Caller is not owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27282:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27282:49:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27282:49:2" - }, - { - "nodeType": "YulAssignment", - "src": "27340:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27352:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27363:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27348:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27348:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27340:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27180:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "27194:4:2", - "type": "" - } - ], - "src": "27029:343:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27551:179:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27568:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27579:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27561:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27561:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27561:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27602:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27613:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27598:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27598:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27618:2:2", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27591:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27591:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27591:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27641:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27652:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27637:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27637:18:2" - }, - { - "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", - "kind": "string", - "nodeType": "YulLiteral", - "src": "27657:31:2", - "type": "", - "value": "This round is not running now" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27630:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27630:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27630:59:2" - }, - { - "nodeType": "YulAssignment", - "src": "27698:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27710:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27721:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27706:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27706:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27698:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27528:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "27542:4:2", - "type": "" - } - ], - "src": "27377:353:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27909:245:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27926:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27937:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27919:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27919:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27919:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27960:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27971:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27956:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27956:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27976:2:2", - "type": "", - "value": "55" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27949:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27949:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27949:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27999:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28010:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27995:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "27995:18:2" - }, - { - "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f", - "kind": "string", - "nodeType": "YulLiteral", - "src": "28015:34:2", - "type": "", - "value": "receivers length is not equal to" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27988:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "27988:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "27988:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28070:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28081:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28066:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28066:18:2" - }, - { - "hexValue": "2073656564436f6d6d69746d656e7473206c656e677468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "28086:25:2", - "type": "", - "value": " seedCommitments length" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28059:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28059:53:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28059:53:2" - }, - { - "nodeType": "YulAssignment", - "src": "28121:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28133:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28144:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28129:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28129:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "28121:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27886:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "27900:4:2", - "type": "" - } - ], - "src": "27735:419:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28333:177:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28350:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28361:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28343:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28343:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28343:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28384:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28395:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28380:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28380:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28400:2:2", - "type": "", - "value": "27" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28373:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28373:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28373:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28423:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28434:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28419:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28419:18:2" - }, - { - "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "kind": "string", - "nodeType": "YulLiteral", - "src": "28439:29:2", - "type": "", - "value": "not in secret sharing phase" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28412:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28412:57:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28412:57:2" - }, - { - "nodeType": "YulAssignment", - "src": "28478:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28490:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28501:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28486:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28486:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "28478:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "28310:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "28324:4:2", - "type": "" - } - ], - "src": "28159:351:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28689:228:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28706:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28717:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28699:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28699:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28699:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28740:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28751:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28736:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28736:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28756:2:2", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28729:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28729:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28729:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28779:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28790:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28775:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28775:18:2" - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "28795:34:2", - "type": "", - "value": "cannot upload seed cmmt multiple" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28768:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28768:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28768:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28850:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28861:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28846:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28846:18:2" - }, - { - "hexValue": "2074696d6573", - "kind": "string", - "nodeType": "YulLiteral", - "src": "28866:8:2", - "type": "", - "value": " times" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28839:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "28839:36:2" - }, - "nodeType": "YulExpressionStatement", - "src": "28839:36:2" - }, - { - "nodeType": "YulAssignment", - "src": "28884:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28896:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28907:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28892:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "28892:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "28884:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "28666:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "28680:4:2", - "type": "" - } - ], - "src": "28515:402:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29262:542:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29279:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "29290:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29272:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29272:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29272:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29317:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29328:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29313:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29313:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "29337:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29345:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "29333:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29333:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29306:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29306:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29306:59:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29374:52:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29384:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "29378:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29446:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29457:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29442:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29442:18:2" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "29466:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "29474:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "29462:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29462:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29435:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29435:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29435:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29498:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29509:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29494:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29494:18:2" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "29518:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "29526:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "29514:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29514:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29487:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29487:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29487:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29550:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29561:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29546:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29546:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29567:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29539:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29539:32:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29539:32:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29591:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29602:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29587:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29587:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29608:1:2", - "type": "", - "value": "8" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29580:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29580:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29580:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29630:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29641:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29626:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29626:19:2" - }, - { - "hexValue": "53454544434d4d54", - "kind": "string", - "nodeType": "YulLiteral", - "src": "29647:10:2", - "type": "", - "value": "SEEDCMMT" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29619:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29619:39:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29619:39:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29667:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29677:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "29671:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29700:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29711:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29696:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29696:19:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "29717:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29689:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29689:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29689:31:2" - }, - { - "nodeType": "YulAssignment", - "src": "29729:69:2", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "29763:6:2" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "29771:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "29783:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "29794:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29779:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "29779:18:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "29737:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "29737:61:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "29729:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "29191:9:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "29202:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "29210:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "29218:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "29226:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "29234:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "29242:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "29253:4:2", - "type": "" - } - ], - "src": "28922:882:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29983:242:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30000:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30011:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29993:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "29993:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "29993:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30034:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30045:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30030:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30030:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30050:2:2", - "type": "", - "value": "52" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30023:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30023:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30023:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30073:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30084:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30069:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30069:18:2" - }, - { - "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f2073", - "kind": "string", - "nodeType": "YulLiteral", - "src": "30089:34:2", - "type": "", - "value": "senders length is not equal to s" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30062:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30062:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30062:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30144:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30155:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30140:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30140:18:2" - }, - { - "hexValue": "65637265746b65794d61736b73206c656e677468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "30160:22:2", - "type": "", - "value": "ecretkeyMasks length" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30133:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30133:50:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30133:50:2" - }, - { - "nodeType": "YulAssignment", - "src": "30192:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30204:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30215:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30200:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30200:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "30192:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "29960:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "29974:4:2", - "type": "" - } - ], - "src": "29809:416:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30570:540:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30587:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "30598:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30580:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30580:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30580:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30625:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30636:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30621:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30621:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "30645:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30653:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "30641:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30641:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30614:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30614:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30614:59:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30682:52:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30692:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "30686:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30754:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30765:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30750:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30750:18:2" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "30774:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "30782:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "30770:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30770:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30743:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30743:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30743:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30806:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30817:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30802:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30802:18:2" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "30826:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "30834:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "30822:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30822:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30795:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30795:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30795:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30858:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30869:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30854:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30854:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30875:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30847:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30847:32:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30847:32:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30899:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30910:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30895:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30895:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30916:1:2", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30888:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30888:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30888:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30938:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30949:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30934:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "30934:19:2" - }, - { - "hexValue": "534b4d41534b", - "kind": "string", - "nodeType": "YulLiteral", - "src": "30955:8:2", - "type": "", - "value": "SKMASK" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30927:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30927:37:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30927:37:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30973:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30983:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "30977:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31006:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31017:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31002:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31002:19:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "31023:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30995:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "30995:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "30995:31:2" - }, - { - "nodeType": "YulAssignment", - "src": "31035:69:2", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "31069:6:2" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "31077:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31089:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "31100:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31085:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31085:18:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "31043:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "31043:61:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "31035:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "30499:9:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "30510:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "30518:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "30526:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "30534:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "30542:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "30550:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "30561:4:2", - "type": "" - } - ], - "src": "30230:880:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31289:250:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31306:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31317:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31299:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "31299:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "31299:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31340:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31351:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31336:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31336:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31356:2:2", - "type": "", - "value": "60" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31329:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "31329:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "31329:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31379:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31390:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31375:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31375:18:2" - }, - { - "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f", - "kind": "string", - "nodeType": "YulLiteral", - "src": "31395:34:2", - "type": "", - "value": "receivers length is not equal to" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31368:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "31368:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "31368:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31450:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31461:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31446:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31446:18:2" - }, - { - "hexValue": "207365637265744b6579436f6d6d69746d656e7473206c656e677468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "31466:30:2", - "type": "", - "value": " secretKeyCommitments length" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31439:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "31439:58:2" - }, - "nodeType": "YulExpressionStatement", - "src": "31439:58:2" - }, - { - "nodeType": "YulAssignment", - "src": "31506:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31518:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31529:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31514:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31514:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "31506:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "31266:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "31280:4:2", - "type": "" - } - ], - "src": "31115:424:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31884:545:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31901:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "31912:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31894:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "31894:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "31894:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31939:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31950:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31935:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31935:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "31959:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31967:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "31955:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "31955:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31928:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "31928:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "31928:59:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31996:52:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32006:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "32000:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32068:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32079:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32064:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32064:18:2" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "32088:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "32096:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "32084:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32084:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32057:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32057:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32057:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32120:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32131:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32116:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32116:18:2" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "32140:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "32148:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "32136:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32136:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32109:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32109:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32109:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32172:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32183:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32168:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32168:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32189:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32161:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32161:32:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32161:32:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32213:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32224:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32209:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32209:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32230:2:2", - "type": "", - "value": "10" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32202:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32202:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32202:31:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32253:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32264:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32249:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32249:19:2" - }, - { - "hexValue": "534b4d41534b434d4d54", - "kind": "string", - "nodeType": "YulLiteral", - "src": "32270:12:2", - "type": "", - "value": "SKMASKCMMT" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32242:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32242:41:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32242:41:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "32292:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32302:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "32296:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32325:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32336:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32321:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32321:19:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "32342:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32314:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32314:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32314:31:2" - }, - { - "nodeType": "YulAssignment", - "src": "32354:69:2", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "32388:6:2" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "32396:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32408:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "32419:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32404:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32404:18:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "32362:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "32362:61:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "32354:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "31813:9:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "31824:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "31832:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "31840:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "31848:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "31856:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "31864:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "31875:4:2", - "type": "" - } - ], - "src": "31544:885:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32608:172:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32625:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32636:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32618:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32618:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32618:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32659:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32670:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32655:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32655:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32675:2:2", - "type": "", - "value": "22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32648:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32648:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32648:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32698:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32709:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32694:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32694:18:2" - }, - { - "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", - "kind": "string", - "nodeType": "YulLiteral", - "src": "32714:24:2", - "type": "", - "value": "not in uploading phase" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32687:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32687:52:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32687:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "32748:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32760:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32771:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32756:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "32756:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "32748:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "32585:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "32599:4:2", - "type": "" - } - ], - "src": "32434:346:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32959:235:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32976:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32987:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32969:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32969:21:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32969:21:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33010:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33021:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33006:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33006:18:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33026:2:2", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32999:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "32999:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "32999:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33049:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33060:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33045:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33045:18:2" - }, - { - "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d", - "kind": "string", - "nodeType": "YulLiteral", - "src": "33065:34:2", - "type": "", - "value": "cannot upload weightCommitment m" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33038:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33038:62:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33038:62:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33120:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33131:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33116:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33116:18:2" - }, - { - "hexValue": "756c7469706c652074696d6573", - "kind": "string", - "nodeType": "YulLiteral", - "src": "33136:15:2", - "type": "", - "value": "ultiple times" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33109:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33109:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33109:43:2" - }, - { - "nodeType": "YulAssignment", - "src": "33161:27:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33173:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33184:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33169:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33169:19:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "33161:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "32936:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "32950:4:2", - "type": "" - } - ], - "src": "32785:409:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33539:540:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33556:9:2" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "33567:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33549:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33549:25:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33549:25:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33594:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33605:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33590:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33590:18:2" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "33614:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33622:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "33610:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33610:31:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33583:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33583:59:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33583:59:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "33651:52:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33661:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "33655:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33723:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33734:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33719:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33719:18:2" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "33743:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "33751:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "33739:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33739:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33712:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33712:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33712:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33775:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33786:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33771:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33771:18:2" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "33795:6:2" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "33803:2:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "33791:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33791:15:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33764:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33764:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33764:43:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33827:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33838:3:2", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33823:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33823:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33844:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33816:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33816:32:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33816:32:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33868:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33879:3:2", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33864:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33864:19:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33885:1:2", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33857:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33857:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33857:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33907:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33918:3:2", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33903:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33903:19:2" - }, - { - "hexValue": "574549474854", - "kind": "string", - "nodeType": "YulLiteral", - "src": "33924:8:2", - "type": "", - "value": "WEIGHT" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33896:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33896:37:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33896:37:2" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "33942:13:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33952:3:2", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "33946:2:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33975:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33986:3:2", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33971:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "33971:19:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "33992:2:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33964:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "33964:31:2" - }, - "nodeType": "YulExpressionStatement", - "src": "33964:31:2" - }, - { - "nodeType": "YulAssignment", - "src": "34004:69:2", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "34038:6:2" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "34046:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34058:9:2" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "34069:2:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34054:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "34054:18:2" - } - ], - "functionName": { - "name": "abi_encode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "34012:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "34012:61:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34004:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33468:9:2", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "33479:6:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "33487:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "33495:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "33503:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "33511:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "33519:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "33530:4:2", - "type": "" - } - ], - "src": "33199:880:2" - } - ] - }, - "contents": "{\n { }\n function abi_decode_uint64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_uint32t_uint32(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n value2 := abi_decode_uint32(add(headStart, 64))\n value3 := abi_decode_uint32(add(headStart, 96))\n }\n function abi_decode_array_address_dyn_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, mul(length, 0x20)), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_1 := calldataload(add(headStart, 96))\n if gt(offset_1, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset_1), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_contract$_IdentityContract_$2193__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_encode_tuple_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__to_t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let tail_1 := add(headStart, 192)\n mstore(add(headStart, _1), and(mload(value0), 0xffffffffffffffff))\n let memberValue0 := mload(add(value0, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 64), and(memberValue0, _2))\n mstore(add(headStart, 96), and(mload(add(value0, 64)), _2))\n mstore(add(headStart, 128), and(mload(add(value0, 96)), 0xff))\n let memberValue0_1 := mload(add(value0, 128))\n mstore(add(headStart, 0xa0), 0xa0)\n let pos := tail_1\n let length := mload(memberValue0_1)\n mstore(tail_1, length)\n pos := add(headStart, 224)\n let srcPtr := add(memberValue0_1, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, and(mload(srcPtr), 0xffffffffffffffffffffffffffffffffffffffff))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function copy_memory_to_memory(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length) { mstore(add(dst, length), 0) }\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_struct$_Task_$62_memory_ptr__to_t_struct$_Task_$62_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), and(mload(value0), 0xffffffffffffffffffffffffffffffffffffffff))\n let memberValue0 := mload(add(value0, 32))\n mstore(add(headStart, 64), 0xc0)\n let tail_1 := abi_encode_string(memberValue0, add(headStart, 224))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := not(31)\n mstore(add(headStart, 96), add(sub(tail_1, headStart), _1))\n let tail_2 := abi_encode_string(memberValue0_1, tail_1)\n mstore(add(headStart, 128), mload(add(value0, 96)))\n let memberValue0_2 := mload(add(value0, 128))\n mstore(add(headStart, 160), add(sub(tail_2, headStart), _1))\n let tail_3 := abi_encode_string(memberValue0_2, tail_2)\n mstore(add(headStart, 0xc0), and(mload(add(value0, 160)), 0xffffffffffffffff))\n tail := tail_3\n }\n function abi_encode_tuple_t_uint64_t_uint64__to_t_uint64_t_uint64__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := 0xffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_array$_t_address_$dyn_calldata_ptrt_address(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_address_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n value4 := abi_decode_address(add(headStart, 96))\n }\n function abi_encode_tuple_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, mul(length, _1)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x80\n let memberValue0 := mload(_3)\n mstore(tail_2, _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let memberValue0_1 := mload(add(_3, _1))\n mstore(add(tail_2, _1), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let memberValue0_2 := mload(add(_3, _2))\n mstore(add(tail_2, _2), sub(tail_4, tail_2))\n let tail_5 := abi_encode_string(memberValue0_2, tail_4)\n let _5 := 0x60\n let memberValue0_3 := mload(add(_3, _5))\n mstore(add(tail_2, _5), sub(tail_5, tail_2))\n tail_2 := abi_encode_string(memberValue0_3, tail_5)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_bytes_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_1 := calldataload(add(headStart, 96))\n if gt(offset_1, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_bytes_calldata(add(headStart, offset_1), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_string_calldata_ptrt_bytes32t_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := calldataload(add(headStart, 32))\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_bytes_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n }\n function abi_decode_tuple_t_uint64(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_uint64(headStart)\n }\n function abi_encode_tuple_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, mul(length, _1)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let memberValue0 := mload(_3)\n mstore(tail_2, _2)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _2))\n let memberValue0_1 := mload(add(_3, _1))\n mstore(add(tail_2, _1), sub(tail_3, tail_2))\n tail_2 := abi_encode_string(memberValue0_1, tail_3)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_tuple_t_bytes32t_addresst_uint64(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_address(add(headStart, 32))\n value2 := abi_decode_uint64(add(headStart, 64))\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_uint64t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := abi_decode_uint64(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_encode_tuple_t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Must called by the task owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 25)\n mstore(add(headStart, 64), \"this round does not exist\")\n tail := add(headStart, 96)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x21()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n }\n function abi_encode_tuple_t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 15)\n mstore(add(headStart, 64), \"Task not exists\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 66)\n mstore(add(headStart, 64), \"the round has been already start\")\n mstore(add(headStart, 96), \"ed or the pre round does not exi\")\n mstore(add(headStart, 128), \"st\")\n tail := add(headStart, 160)\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n if lt(x, y) { panic_error_0x11() }\n diff := sub(x, y)\n }\n function abi_encode_tuple_t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"senders length is not equal to s\")\n mstore(add(headStart, 96), \"eeds length\")\n tail := add(headStart, 128)\n }\n function access_calldata_tail_t_bytes_calldata_ptr(base_ref, ptr_to_tail) -> addr, length\n {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), base_ref), not(30)))) { revert(0, 0) }\n let addr_1 := add(base_ref, rel_offset_of_tail)\n length := calldataload(addr_1)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n addr := add(addr_1, 0x20)\n if sgt(addr, sub(calldatasize(), length)) { revert(0, 0) }\n }\n function abi_encode_tuple_t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"commitment length exceeds limit \")\n mstore(add(headStart, 96), \"or it is empty\")\n tail := add(headStart, 128)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"not in upload ss phase\")\n tail := add(headStart, 96)\n }\n function extract_byte_array_length(data) -> length\n {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 28)\n mstore(add(headStart, 64), \"must upload commitment first\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 33)\n mstore(add(headStart, 64), \"cannot upload seed multiple time\")\n mstore(add(headStart, 96), \"s\")\n tail := add(headStart, 128)\n }\n function abi_encode_bytes_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 4)\n mstore(add(headStart, 224), \"SEED\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"Must provide addresses\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Candidate must exist\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_array$_t_address_$dyn_calldata_ptr__to_t_bytes32_t_uint64_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 96)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), and(value1, 0xffffffffffffffff))\n mstore(add(headStart, 64), 96)\n let pos := tail_1\n mstore(tail_1, value3)\n pos := add(headStart, 128)\n let srcPtr := value2\n let i := 0\n for { } lt(i, value3) { i := add(i, 1) }\n {\n mstore(pos, and(abi_decode_address(srcPtr), 0xffffffffffffffffffffffffffffffffffffffff))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_encode_tuple_t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"Calculating has not started\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 26)\n mstore(add(headStart, 64), \"The Task Round Must exists\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 21)\n mstore(add(headStart, 64), \"join phase has passed\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 41)\n mstore(add(headStart, 64), \"Cannot join the same round multi\")\n mstore(add(headStart, 96), \"ple times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_uint256_t_address_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr__to_t_uint256_t_address_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 64), 160)\n let tail_1 := abi_encode_bytes_calldata(value2, value3, add(headStart, 160))\n mstore(add(headStart, 96), value4)\n mstore(add(headStart, 128), sub(tail_1, headStart))\n tail := abi_encode_bytes_calldata(value5, value6, tail_1)\n }\n function abi_decode_string_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory(add(offset, 0x20), add(memPtr, 0x20), _1)\n array := memPtr\n }\n function abi_decode_tuple_t_struct$_Node_$1934_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x40) { revert(0, 0) }\n let memPtr := mload(0x40)\n let newFreePtr := add(memPtr, 0x40)\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(0x40, newFreePtr)\n let offset_1 := mload(_2)\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(memPtr, abi_decode_string_fromMemory(add(_2, offset_1), dataEnd))\n let offset_2 := mload(add(_2, 32))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(memPtr, 32), abi_decode_string_fromMemory(add(_2, offset_2), dataEnd))\n value0 := memPtr\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_memory_ptr_t_bytes32_t_string_calldata_ptr__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 160)\n let tail_1 := abi_encode_bytes_calldata(value1, value2, add(headStart, 160))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value3, tail_1)\n mstore(add(headStart, 96), value4)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_bytes_calldata(value5, value6, tail_2)\n }\n function abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 19)\n mstore(add(headStart, 64), \"Caller is not owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"This round is not running now\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 55)\n mstore(add(headStart, 64), \"receivers length is not equal to\")\n mstore(add(headStart, 96), \" seedCommitments length\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"not in secret sharing phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"cannot upload seed cmmt multiple\")\n mstore(add(headStart, 96), \" times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 8)\n mstore(add(headStart, 224), \"SEEDCMMT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 52)\n mstore(add(headStart, 64), \"senders length is not equal to s\")\n mstore(add(headStart, 96), \"ecretkeyMasks length\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 6)\n mstore(add(headStart, 224), \"SKMASK\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 60)\n mstore(add(headStart, 64), \"receivers length is not equal to\")\n mstore(add(headStart, 96), \" secretKeyCommitments length\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 10)\n mstore(add(headStart, 224), \"SKMASKCMMT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n function abi_encode_tuple_t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"not in uploading phase\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"cannot upload weightCommitment m\")\n mstore(add(headStart, 96), \"ultiple times\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_bytes32_t_uint64_t_address_t_address_t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58_t_bytes_calldata_ptr__to_t_bytes32_t_uint64_t_address_t_address_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), and(value3, _1))\n mstore(add(headStart, 128), 192)\n mstore(add(headStart, 192), 6)\n mstore(add(headStart, 224), \"WEIGHT\")\n let _2 := 256\n mstore(add(headStart, 160), _2)\n tail := abi_encode_bytes_calldata(value4, value5, add(headStart, _2))\n }\n}", - "id": 2, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "160:24367:0:-:0;;;539:51;;;-1:-1:-1;;;;;;596:41:0;;;;;4280:220;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4326:10;:18;;-1:-1:-1;;;;;;4326:18:0;;;-1:-1:-1;;;;;4326:18:0;;;;;-1:-1:-1;4354:18:0;;4362:10;4354:18;;;;;;4466:27;;4362:10;;4326;4466:27;;4326:10;;4466:27;4280:220;160:24367;;14:315:2;109:6;162:2;150:9;141:7;137:23;133:32;130:52;;;178:1;175;168:12;130:52;204:16;;-1:-1:-1;;;;;249:31:2;;239:42;;229:70;;295:1;292;285:12;229:70;318:5;14:315;-1:-1:-1;;;14:315:2:o;:::-;160:24367:0;;;;;;", - "deployedSourceMap": "160:24367:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13976:285;;;;;;;;;;-1:-1:-1;13976:285:0;;;;;:::i;:::-;;:::i;:::-;;6159:970;;;;;;;;;;-1:-1:-1;6159:970:0;;;;;:::i;:::-;;:::i;17823:1658::-;;;;;;;;;;-1:-1:-1;17823:1658:0;;;;;:::i;:::-;;:::i;187:34::-;;;;;;;;;;-1:-1:-1;187:34:0;;;;-1:-1:-1;;;;;187:34:0;;;;;;-1:-1:-1;;;;;2511:55:2;;;2493:74;;2481:2;2466:18;187:34:0;;;;;;;;9664:595;;;;;;;;;;-1:-1:-1;9664:595:0;;;;;:::i;:::-;;:::i;8941:508::-;;;;;;;;;;-1:-1:-1;8941:508:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;12433:695::-;;;;;;;;;;-1:-1:-1;12433:695:0;;;;;:::i;:::-;;:::i;4581:175::-;;;;;;;;;;-1:-1:-1;4581:175:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;23919:220::-;;;;;;;;;;-1:-1:-1;24062:20:0;;23919:220;;;-1:-1:-1;;;;;24062:20:0;;;;;6274:34:2;;24107:25:0;;;6339:2:2;6324:18;;6317:43;6210:18;23919:220:0;6067:299:2;11291:715:0;;;;;;;;;;-1:-1:-1;11291:715:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;24444:81::-;;;;;;;;;;-1:-1:-1;24513:5:0;;-1:-1:-1;;;;;24513:5:0;24444:81;;7395:778;;;;;;;;;;-1:-1:-1;7395:778:0;;;;;:::i;:::-;;:::i;:::-;;;10401:14:2;;10394:22;10376:41;;10364:2;10349:18;7395:778:0;10236:187:2;5055:896:0;;;;;;:::i;:::-;;:::i;:::-;;;11366:25:2;;;11354:2;11339:18;5055:896:0;11220:177:2;24230:127:0;;;;;;;;;;-1:-1:-1;24230:127:0;;;;;:::i;:::-;;:::i;13364:477::-;;;;;;;;;;-1:-1:-1;13364:477:0;;;;;:::i;:::-;;:::i;15887:1685::-;;;;;;;;;;-1:-1:-1;15887:1685:0;;;;;:::i;:::-;;:::i;23666:125::-;;;;;;;;;;-1:-1:-1;23666:125:0;;;;;:::i;:::-;;:::i;21795:1865::-;;;;;;;;;;-1:-1:-1;21795:1865:0;;;;;:::i;:::-;;:::i;23797:116::-;;;;;;;;;;-1:-1:-1;23797:116:0;;;;;:::i;:::-;;:::i;8276:493::-;;;;;;;;;;-1:-1:-1;8276:493:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;10696:534::-;;;;;;;;;;-1:-1:-1;10696:534:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19777:1742::-;;;;;;;;;;-1:-1:-1;19777:1742:0;;;;;:::i;:::-;;:::i;14468:1131::-;;;;;;;;;;-1:-1:-1;14468:1131:0;;;;;:::i;:::-;;:::i;13976:285::-;4099:21;;;;:12;:21;;;;;:29;14057:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;;;;;;;;;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;14085:6;;14093:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;14114:26:::2;14143:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;14143:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;;::::2;::::0;;;::::2;;14178:38:::0;;-1:-1:-1;;14178:38:0::2;::::0;::::2;::::0;;14231:23:::2;::::0;;15307:25:2;;;-1:-1:-1;;;;;15368:31:2;;15348:18;;;15341:59;;;;14231:23:0;;14143:25;;-1:-1:-1;14231:23:0::2;::::0;;;;;;::::2;14104:157;3597:200:::1;4207:1;;13976:285:::0;;;:::o;6159:970::-;3499:1;3458:21;;;:12;:21;;;;;:29;6301:6;;-1:-1:-1;;;;;3458:29:0;3450:71;;;;-1:-1:-1;;;;;3450:71:0;;;;;;;:::i;:::-;4099:21:::1;::::0;;;:12:::1;:21;::::0;;;;:29;6319:6;;-1:-1:-1;;;;;4099:29:0::1;4132:10;4099:43;4078:119;;;;-1:-1:-1::0;;;;;4078:119:0::1;;;;;;;:::i;:::-;6337:26:::2;6366:18:::0;;;:10:::2;:18;::::0;;;;6415:13;;-1:-1:-1;;;;;6415:22:0;::::2;;6394:135;;;::::0;-1:-1:-1;;;;;6394:135:0;;15957:2:2;6394:135:0::2;::::0;::::2;15939:21:2::0;15996:2;15976:18;;;15969:30;16035:34;16015:18;;;16008:62;16106:34;16086:18;;;16079:62;16178:4;16157:19;;;16150:33;16200:19;;6394:135:0::2;15755:470:2::0;6394:135:0::2;6539:17;6559:20:::0;;;:12:::2;:20;::::0;;;;6589:17:::2;::::0;::::2;:25:::0;;-1:-1:-1;;6589:25:0::2;-1:-1:-1::0;;;;;6589:25:0;::::2;;::::0;;6624:94:::2;6631:13:::0;;:18;;:47:::2;;-1:-1:-1::0;6653:13:0;;-1:-1:-1;;;;;6653:25:0;::::2;::::0;:17:::2;::::0;6669:1:::2;::::0;6653:17:::2;:::i;:::-;:25;6631:47;6624:94;;;6694:13:::0;;::::2;;::::0;;-1:-1:-1;6694:13:0;;;6624:94:::2;;;6756:5;6727:6;6734:5;-1:-1:-1::0;;;;;6727:13:0::2;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;:34:::0;;-1:-1:-1;;6727:34:0::2;-1:-1:-1::0;;;;;6727:34:0;;::::2;;::::0;;6771:13;;6797:9;;6771:13;;;;::::2;::::0;;::::2;;;;;:::i;:::-;;;;;;;;;;;:23;;;:35;;;;;;;;;;;;;;;;;;6842:9;6816:6;6823:5;-1:-1:-1::0;;;;;6816:13:0::2;;;;;;;;;:::i;:::-;;;;;;;;;;;:23;;;:35;;;;;;;;;;;;;;;;;;6884:19;6861:6;6868:5;-1:-1:-1::0;;;;;6861:13:0::2;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;:42:::0;;-1:-1:-1;;6861:42:0::2;-1:-1:-1::0;;;6861:42:0;::::2;::::0;::::2;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;6913:37:0::2;6953:29:::0;;;:21:::2;:29;::::0;;;;6992:91:::2;6999:12:::0;;:17;;:45:::2;;-1:-1:-1::0;7020:12:0;;-1:-1:-1;;;;;7020:24:0;::::2;::::0;:16:::2;::::0;7035:1:::2;::::0;7020:16:::2;:::i;:::-;:24;6999:45;6992:91;;;7060:12:::0;;::::2;;::::0;;-1:-1:-1;7060:12:0;;;6992:91:::2;;;7097:25;::::0;;15307::2;;;-1:-1:-1;;;;;15368:31:2;;15363:2;15348:18;;15341:59;7097:25:0::2;::::0;15280:18:2;7097:25:0::2;;;;;;;;6327:802;;;3531:1:::1;6159:970:::0;;;;;:::o;17823:1658::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;17982:6;;17990:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;18028:30;;::::1;18007:120;;;::::0;-1:-1:-1;;;;;18007:120:0;;16751:2:2;18007:120:0::1;::::0;::::1;16733:21:2::0;16790:2;16770:18;;;16763:30;16829:34;16809:18;;;16802:62;16900:13;16880:18;;;16873:41;16931:19;;18007:120:0::1;16549:407:2::0;18007:120:0::1;18142:9;18137:235;18157:16:::0;;::::1;18137:235;;;18237:1;18219:5;;18225:1;18219:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;;:19;:62;;;;-1:-1:-1::0;18261:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;18261:20:0::1;18242:5:::0;;18248:1;18242:8;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;;:39;;18219:62;18194:167;;;;-1:-1:-1::0;;;;;18194:167:0::1;;;;;;;:::i;:::-;18175:3:::0;::::1;::::0;::::1;:::i;:::-;;;;18137:235;;;-1:-1:-1::0;18381:26:0::1;18410:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;18410:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;18466:15:0;;-1:-1:-1;;;18466:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;18445:111;;;::::0;-1:-1:-1;;;;;18445:111:0;;18244:2:2;18445:111:0::1;::::0;::::1;18226:21:2::0;18283:2;18263:18;;;18256:30;18322:24;18302:18;;;18295:52;18364:18;;18445:111:0::1;18042:346:2::0;18445:111:0::1;18566:43;18612:51:::0;;;:21:::1;:51;::::0;;;;18716:18;;18612:51;;18566:43;18612:51;;-1:-1:-1;;;;;18716:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;18673:61;;18749:9;18744:731;18764:16:::0;;::::1;18744:731;;;18955:1;18826:10;:38;;:50;18865:7;;18873:1;18865:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18826:50:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;18826:50:0;;;18877:10:::1;18826:62:::0;;;;;;;:98:::1;;:126:::0;;::::1;::::0;::::1;:::i;:::-;;;:130;18801:217;;;::::0;-1:-1:-1;;;;;18801:217:0;;19037:2:2;18801:217:0::1;::::0;::::1;19019:21:2::0;19076:2;19056:18;;;19049:30;19115;19095:18;;;19088:58;19163:18;;18801:217:0::1;18835:352:2::0;18801:217:0::1;19057:10;:17;;:29;19075:7;;19083:1;19075:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19057:29:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;19057:29:0;;;19087:10:::1;19057:41:::0;;;;;;;:58;;::::1;::::0;::::1;:::i;:::-;:63:::0;;-1:-1:-1;19032:155:0::1;;;;-1:-1:-1::0;;;;;19032:155:0::1;;;;;;;:::i;:::-;19255:5;;19261:1;19255:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;19201:10;:17;;:29;19219:7;;19227:1;19219:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19201:29:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;19201:29:0;;;19231:10:::1;19201:41:::0;;;;;;;:62:::1;::::0;:41;;:62:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;19315:6:0::1;19339:5;19362:7;;19370:1;19362:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;19390;19442:5;;19448:1;19442:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;19282:182;;;;;;;;;;;:::i;:::-;;;;;;;;18782:3:::0;::::1;::::0;::::1;:::i;:::-;;;;18744:731;;;;17997:1484;;;3597:200:::0;17823:1658;;;;;;;;:::o;9664:595::-;4099:21;;;;:12;:21;;;;;:29;9793:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;9813:6;;9821:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;9846:16:::0;9838:51:::2;;;::::0;-1:-1:-1;;;;;9838:51:0;;20950:2:2;9838:51:0::2;::::0;::::2;20932:21:2::0;20989:2;20969:18;;;20962:30;21028:24;21008:18;;;21001:52;21070:18;;9838:51:0::2;20748:346:2::0;9838:51:0::2;9899:26;9928:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;9928:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;;;;;;;;;;9899:54;;9968:9;9963:191;9983:16:::0;;::::2;9963:191;;;10088:1;10045:8;:19;;:29;10065:5;;10071:1;10065:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10045:29:0::2;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;10045:29:0;:40;;::::2;::::0;::::2;:::i;:::-;;;:44;10020:123;;;::::0;-1:-1:-1;;;;;10020:123:0;;21301:2:2;10020:123:0::2;::::0;::::2;21283:21:2::0;21340:2;21320:18;;;21313:30;21379:22;21359:18;;;21352:50;21419:18;;10020:123:0::2;21099:344:2::0;10020:123:0::2;10001:3:::0;::::2;::::0;::::2;:::i;:::-;;;;9963:191;;;-1:-1:-1::0;10163:37:0;;-1:-1:-1;;10163:37:0::2;-1:-1:-1::0;;;10163:37:0::2;::::0;;10215::::2;::::0;::::2;::::0;::::2;::::0;10231:6;;10239:5;;10246;;;;10215:37:::2;:::i;8941:508::-:0;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3636:19:0;;;:10;:19;;;;;;3686:13;;3636:19;;9049:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;9128:22:::1;9153:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;9153:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;9200:242:::1;::::0;;::::1;::::0;::::1;::::0;;9153:25:::1;::::0;;::::1;::::0;;::::1;9251:17:::0;;-1:-1:-1;;;;;9251:17:0;::::1;9200:242:::0;;9293:14:::1;::::0;;::::1;::::0;::::1;9200:242:::0;;::::1;::::0;;;;9332:14;;::::1;::::0;;::::1;9200:242:::0;;;;;;;9153:25;-1:-1:-1;9200:242:0;;;;;9376:11:::1;-1:-1:-1::0;;;9376:11:0;;::::1;;9368:20;::::0;::::1;;;;;;:::i;:::-;9200:242;;;;;;9415:4;:16;;9200:242;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;9200:242:0::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;::::0;9188:254:::1;;9118:331;3597:200:::0;8941:508;;;;;;:::o;12433:695::-;4099:21;;;;:12;:21;;;;;:29;12568:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;12588:6;;12596:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;12613:26:::2;12642:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;12642:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;-1:-1:-1;12717:23:0::2;12698:15:::0;;-1:-1:-1;;;12698:15:0;::::2;;;:42;::::0;::::2;;;;;;:::i;:::-;;12677:116;;;::::0;-1:-1:-1;;;;;12677:116:0;;22480:2:2;12677:116:0::2;::::0;::::2;22462:21:2::0;22519:2;22499:18;;;22492:30;22558:29;22538:18;;;22531:57;22605:18;;12677:116:0::2;22278:351:2::0;12677:116:0::2;12803:41:::0;;-1:-1:-1;;12803:41:0::2;::::0;::::2;::::0;;-1:-1:-1;12854:207:0::2;12874:24:::0;;::::2;12854:207;;;12995:1;12944:8;:19;;:37;12964:13;;12978:1;12964:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12944:37:0::2;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;12944:37:0;:48;;::::2;::::0;::::2;:::i;:::-;;;:52;12919:131;;;::::0;-1:-1:-1;;;;;12919:131:0;;21301:2:2;12919:131:0::2;::::0;::::2;21283:21:2::0;21340:2;21320:18;;;21313:30;21379:22;21359:18;;;21352:50;21419:18;;12919:131:0::2;21099:344:2::0;12919:131:0::2;12900:3:::0;::::2;::::0;::::2;:::i;:::-;;;;12854:207;;;;13075:46;13092:6;13100:5;13107:13;;13075:46;;;;;;;;;:::i;4581:175::-:0;4690:16;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4690:16:0;3499:1;3458:21;;;:12;:21;;;;;:29;4665:6;;-1:-1:-1;;;;;3458:29:0;3450:71;;;;-1:-1:-1;;;;;3450:71:0;;;;;;;:::i;:::-;4729:20:::1;::::0;;;:12:::1;:20;::::0;;;;;;;;4722:27;;::::1;::::0;::::1;::::0;;;;;-1:-1:-1;;;;;4722:27:0::1;::::0;;;;::::1;::::0;;4729:20;;4722:27;::::1;::::0;::::1;::::0;::::1;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;4722:27:0;;;-1:-1:-1;;4722:27:0::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;4722:27:0::1;;::::0;;::::1;::::0;;4581:175;-1:-1:-1;;;4581:175:0:o;11291:715::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;11555:15;;11484:6;;11492:5;;3636:19;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;3869:37:::1;3909:30:::0;;;:21:::1;:30;::::0;;;;3957:12;;11523:6;;11531:5;;-1:-1:-1;;;;;3957:20:0;::::1;-1:-1:-1::0;3949:59:0::1;;;;-1:-1:-1::0;;;;;3949:59:0::1;;;;;;;:::i;:::-;11586:37:::2;11626:29:::0;;;:21:::2;:29;::::0;;;;11673:12;;-1:-1:-1;;;;;11673:21:0;::::2;-1:-1:-1::0;11673:21:0::2;11665:60;;;;-1:-1:-1::0;;;;;11665:60:0::2;;;;;;;:::i;:::-;11735:34;11772:5;11778;-1:-1:-1::0;;;;;11772:12:0::2;;;;;;;;;:::i;:::-;;::::0;;;::::2;::::0;;::::2;::::0;;::::2;;::::0;-1:-1:-1;11833:7:0;-1:-1:-1;;;;;11820:28:0;::::2;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11820:28:0::2;;;;;;;;;;;;;;;;;11794:54;;11863:9;11858:118;11878:18:::0;;::::2;11858:118;;;11931:4;:11;;:23;11943:7;;11951:1;11943:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11931:23:0::2;-1:-1:-1::0;;;;;11931:23:0::2;;;;;;;;;;;;:33;11955:8;-1:-1:-1::0;;;;;11931:33:0::2;-1:-1:-1::0;;;;;11931:33:0::2;;;;;;;;;;;;11917:48;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;:7;11925:1;11917:10;;;;;;;;:::i;:::-;;;;;;:48;;;;11898:3;;;;;:::i;:::-;;;;11858:118;;;-1:-1:-1::0;11992:7:0;11291:715;-1:-1:-1;;;;;;;;;;;;;;11291:715:0:o;7395:778::-;7584:4;3458:21;;;:12;:21;;;;;:29;7540:6;;-1:-1:-1;;;;;3458:29:0;3450:71;;;;-1:-1:-1;;;;;3450:71:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;7560:6;;7568:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;7600:26:::2;7629:18:::0;;;:10:::2;:18;::::0;;;;7694:13;;7629:18;;7600:26;7629:18;;7694:17:::2;::::0;7710:1:::2;::::0;7694:17:::2;:::i;:::-;7687:25;;;;;;;;:::i;:::-;;;;;;;;;;;7657:55;;7764:5;-1:-1:-1::0;;;;;7743:26:0::2;7759:1;7743:6;:13;;;;:17;;;;:::i;:::-;:26;:85;;;;-1:-1:-1::0;7809:19:0::2;7789:16:::0;;-1:-1:-1;;;7789:16:0;::::2;;;:39;::::0;::::2;;;;;;:::i;:::-;;7743:85;7722:153;;;::::0;-1:-1:-1;;;;;7722:153:0;;23380:2:2;7722:153:0::2;::::0;::::2;23362:21:2::0;23419:2;23399:18;;;23392:30;23458:23;23438:18;;;23431:51;23499:18;;7722:153:0::2;23178:345:2::0;7722:153:0::2;7927:10;7906:32;::::0;;;:20:::2;::::0;::::2;:32;::::0;;;;:43;;::::2;::::0;::::2;:::i;:::-;:48:::0;;-1:-1:-1;7885:136:0::2;;;::::0;-1:-1:-1;;;;;7885:136:0;;23730:2:2;7885:136:0::2;::::0;::::2;23712:21:2::0;23769:2;23749:18;;;23742:30;23808:34;23788:18;;;23781:62;23879:11;23859:18;;;23852:39;23908:19;;7885:136:0::2;23528:405:2::0;7885:136:0::2;8066:31;::::0;;;::::2;;::::0;::::2;::::0;;::::2;;::::0;;;;;;;;::::2;::::0;;;;;;;;8082:3;;;;;;8066:31;;8082:3;;;;8066:31;::::2;;::::0;::::2;::::0;;;;-1:-1:-1;;;8066:31:0;;;-1:-1:-1;8066:31:0::2;::::0;;::::2;;::::0;::::2;::::0;;::::2;::::0;::::2;::::0;;;;;;;;;;;;::::2;::::0;;8092:3;;;;;;8066:31;::::2;8092:3:::0;;;;8066:31;::::2;;::::0;::::2;::::0;;;-1:-1:-1;8066:31:0;;;;-1:-1:-1;;8052:10:0::2;8031:32:::0;;:20:::2;::::0;::::2;:32;::::0;;;;;;;:66;;;;:32;;-1:-1:-1;8031:66:0::2;::::0;:32;;:66;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;8031:66:0::2;::::0;;::::2;::::0;;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;;;8107:21:0::2;;:38:::0;;::::2;::::0;;::::2;::::0;;-1:-1:-1;8107:38:0;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;;8107:38:0::2;8134:10;8107:38;::::0;;;-1:-1:-1;;3597:200:0::1;3531:1;;7395:778:::0;;;;;;;;;:::o;5055:896::-;5200:14;5226:15;5278:12;5292:10;5304:7;;5313:10;5325:8;;5267:67;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;5267:67:0;;;;;;;5244:100;;5267:67;5244:100;;;;5354:33;5390:10;;:34;;;5413:10;5390:34;;;2493:74:2;5244:100:0;;-1:-1:-1;5354:33:0;-1:-1:-1;;;;;5390:10:0;;;;:22;;2466:18:2;;5390:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5390:34:0;;;;;;;;;;;;:::i;:::-;5354:70;;5458:210;;;;;;;;5520:10;-1:-1:-1;;;;;5458:210:0;;;;;5489:4;:8;;;5458:210;;;;5553:7;;5458:210;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5458:210:0;;;-1:-1:-1;5458:210:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5620:8;;;;;;5458:210;;5620:8;;;;5458:210;;;;;;;;-1:-1:-1;5458:210:0;;;-1:-1:-1;;;5458:210:0;;;;;;;5434:21;;;:12;:21;;;;;:234;;;;-1:-1:-1;;5434:234:0;-1:-1:-1;;;;;5434:234:0;;;;;;;;;;;;:21;;:234;;-1:-1:-1;5434:234:0;;;;;;;;:::i;:::-;-1:-1:-1;5434:234:0;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5434:234:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5434:234:0;;;;;;;;;;;;-1:-1:-1;;5434:234:0;-1:-1:-1;;;;;5434:234:0;;;;;;;;;-1:-1:-1;5733:18:0;;;:10;:18;;;;;;5761:13;;-1:-1:-1;5761:13:0;;;;;;;5880:8;;5789:155;;5733:18;;-1:-1:-1;5733:18:0;;5814:10;;5789:155;;;;5733:18;;5859:7;;;;5902:10;;5926:8;;;;5789:155;:::i;:::-;;;;;;;;5216:735;;;5055:896;;;;;;;:::o;24230:127::-;3350:5;;-1:-1:-1;;;;;3350:5:0;3336:10;:19;3328:51;;;;-1:-1:-1;;;;;3328:51:0;;;;;;;:::i;:::-;24308:5:::1;::::0;24299:25:::1;::::0;-1:-1:-1;;;;;24299:25:0;;::::1;::::0;24308:5:::1;::::0;24299:25:::1;::::0;24308:5:::1;::::0;24299:25:::1;24334:5;:16:::0;;-1:-1:-1;;24334:16:0::1;-1:-1:-1::0;;;;;24334:16:0;;;::::1;::::0;;;::::1;::::0;;24230:127::o;13364:477::-;4099:21;;;;:12;:21;;;;;:29;13499:6;;-1:-1:-1;;;;;4099:29:0;4132:10;4099:43;4078:119;;;;-1:-1:-1;;;;;4078:119:0;;;;;;;:::i;:::-;3607:26:::1;3636:19:::0;;;:10:::1;:19;::::0;;;;3686:13;;13519:6;;13527:5;;3702:1:::1;-1:-1:-1::0;3686:42:0;::::1;;;-1:-1:-1::0;3707:13:0;;-1:-1:-1;;;;;3707:21:0;::::1;-1:-1:-1::0;3686:42:0::1;3665:114;;;;-1:-1:-1::0;;;;;3665:114:0::1;;;;;;;:::i;:::-;13544:26:::2;13573:18:::0;;;:10:::2;:18;::::0;;;;:25;;-1:-1:-1;;;;;13573:25:0;::::2;::::0;;::::2;;;;;:::i;:::-;;::::0;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;-1:-1:-1;13648:19:0::2;13629:15:::0;;-1:-1:-1;;;13629:15:0;::::2;;;:38;::::0;::::2;;;;;;:::i;:::-;;13608:114;;;::::0;-1:-1:-1;;;;;13608:114:0;;27579:2:2;13608:114:0::2;::::0;::::2;27561:21:2::0;27618:2;27598:18;;;27591:30;27657:31;27637:18;;;27630:59;27706:18;;13608:114:0::2;27377:353:2::0;13608:114:0::2;13732:41:::0;;-1:-1:-1;;13732:41:0::2;::::0;::::2;::::0;;13788:46:::2;::::0;::::2;::::0;::::2;::::0;13805:6;;13813:5;;13820:13;;;;13788:46:::2;:::i;15887:1685::-:0;3607:26;3636:19;;;:10;:19;;;;;3686:13;;16068:6;;16076:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;16114:42;;::::1;16093:144;;;::::0;-1:-1:-1;;;;;16093:144:0;;27937:2:2;16093:144:0::1;::::0;::::1;27919:21:2::0;27976:2;27956:18;;;27949:30;28015:34;27995:18;;;27988:62;28086:25;28066:18;;;28059:53;28129:19;;16093:144:0::1;27735:419:2::0;16093:144:0::1;16252:9;16247:285;16267:26:::0;;::::1;16247:285;;;16367:1;16339:15;;16355:1;16339:18;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:25;;:29;:102;;;;-1:-1:-1::0;16421:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;16421:20:0::1;16392:15:::0;;16408:1;16392:18;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:25;;:49;;16339:102;16314:207;;;;-1:-1:-1::0;;;;;16314:207:0::1;;;;;;;:::i;:::-;16295:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16247:285;;;-1:-1:-1::0;16541:26:0::1;16570:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;16570:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;16645:19:0::1;16626:15:::0;;-1:-1:-1;;;16626:15:0;::::1;;;:38;::::0;::::1;;;;;;:::i;:::-;;16605:112;;;::::0;-1:-1:-1;;;;;16605:112:0;;28361:2:2;16605:112:0::1;::::0;::::1;28343:21:2::0;28400:2;28380:18;;;28373:30;28439:29;28419:18;;;28412:57;28486:18;;16605:112:0::1;28159:351:2::0;16605:112:0::1;16727:43;16773:51:::0;;;:21:::1;:51;::::0;;;;16877:18;;16773:51;;16727:43;16773:51;;-1:-1:-1;;;;;16877:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;16834:61;;16910:9;16905:661;16925:26:::0;;::::1;16905:661;;;17036:10;16997:50;::::0;;;:38:::1;::::0;::::1;:50;::::0;;;;;17048:9;;17058:1;17048:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16997:64:0::1;-1:-1:-1::0;;;;;16997:64:0::1;;;;;;;;;;;;:100;;:128;;;;;:::i;:::-;:133:::0;;-1:-1:-1;16972:230:0::1;;;;-1:-1:-1::0;;;;;16972:230:0::1;;;;;;;:::i;:::-;17290:15;;17323:1;17290:48;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;17247:10;17216:42;::::0;;;:30:::1;::::0;::::1;:42;::::0;;;;;17259:9;;17269:1;17259:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;17216:56:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;17216:56:0;:122:::1;::::0;:71:::1;::::0;;::::1;::::0;:122:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;17390:6:0::1;17414:5;17437:10;17465:9;;17475:1;17465:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;17523:15;;17539:1;17523:18;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;17357:198;;;;;;;;;;;:::i;:::-;;;;;;;;16953:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16905:661;;23666:125:::0;3350:5;;-1:-1:-1;;;;;3350:5:0;3336:10;:19;3328:51;;;;-1:-1:-1;;;;;3328:51:0;;;;;;;:::i;:::-;23747:25:::1;:37:::0;;-1:-1:-1;;23747:37:0::1;-1:-1:-1::0;;;;;23747:37:0;;;::::1;::::0;;;::::1;::::0;;23666:125::o;21795:1865::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;21972:6;;21980:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;22018:39;;::::1;21997:138;;;::::0;-1:-1:-1;;;;;21997:138:0;;30011:2:2;21997:138:0::1;::::0;::::1;29993:21:2::0;30050:2;30030:18;;;30023:30;30089:34;30069:18;;;30062:62;30160:22;30140:18;;;30133:50;30200:19;;21997:138:0::1;29809:416:2::0;21997:138:0::1;22150:9;22145:282;22165:25:::0;;::::1;22145:282;;;22263:1;22236:14;;22251:1;22236:17;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:24;;:28;:100;;;;-1:-1:-1::0;22316:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;22316:20:0::1;22288:14:::0;;22303:1;22288:17;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:24;;:48;;22236:100;22211:205;;;;-1:-1:-1::0;;;;;22211:205:0::1;;;;;;;:::i;:::-;22192:3:::0;::::1;::::0;::::1;:::i;:::-;;;;22145:282;;;-1:-1:-1::0;22436:26:0::1;22465:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;22465:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;22521:15:0;;-1:-1:-1;;;22521:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;22500:111;;;::::0;-1:-1:-1;;;;;22500:111:0;;18244:2:2;22500:111:0::1;::::0;::::1;18226:21:2::0;18283:2;18263:18;;;18256:30;18322:24;18302:18;;;18295:52;18364:18;;22500:111:0::1;18042:346:2::0;22500:111:0::1;22621:43;22667:51:::0;;;:21:::1;:51;::::0;;;;22771:18;;22667:51;;22621:43;22667:51;;-1:-1:-1;;;;;22771:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;22728:61;;22804:9;22799:855;22819:25:::0;;::::1;22799:855;;;23028:1;22890:10;:38;;:50;22929:7;;22937:1;22929:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;22890:50:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;22890:50:0;;;22941:10:::1;22890:62:::0;;;;;;;:107:::1;;:135:::0;;::::1;::::0;::::1;:::i;:::-;;;:139;22865:226;;;::::0;-1:-1:-1;;;;;22865:226:0;;19037:2:2;22865:226:0::1;::::0;::::1;19019:21:2::0;19076:2;19056:18;;;19049:30;19115;19095:18;;;19088:58;19163:18;;22865:226:0::1;18835:352:2::0;22865:226:0::1;23130:10;:38;;:50;23169:7;;23177:1;23169:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23130:50:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;23130:50:0;;;23181:10:::1;23130:62:::0;;;;;;;:98:::1;;:126:::0;;::::1;::::0;::::1;:::i;:::-;:131:::0;;-1:-1:-1;23105:223:0::1;;;;-1:-1:-1::0;;;;;23105:223:0::1;;;;;;;:::i;:::-;23414:14;;23429:1;23414:17;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;23342:10;:30;;:42;23373:7;;23381:1;23373:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23342:42:0::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;-1:-1:-1;23342:42:0;;;23385:10:::1;23342:54:::0;;;;;;;:89:::1;::::0;:69:::1;::::0;;::::1;::::0;:89:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;23483:6:0::1;23507:5;23530:7;;23538:1;23530:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;23558;23612:14;;23627:1;23612:17;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;23450:193;;;;;;;;;;;:::i;:::-;;;;;;;;22846:3:::0;::::1;::::0;::::1;:::i;:::-;;;;22799:855;;23797:116:::0;3350:5;;-1:-1:-1;;;;;3350:5:0;3336:10;:19;3328:51;;;;-1:-1:-1;;;;;3328:51:0;;;;;;;:::i;:::-;23874:20:::1;:32:::0;;-1:-1:-1;;;;;23874:32:0;;::::1;::::0;::::1;-1:-1:-1::0;;23874:32:0;;::::1;::::0;;;::::1;::::0;;23797:116::o;8276:493::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;8448:18;;8424:6;;8432:5;;3636:19;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;8478:29:::1;8526:14:::0;-1:-1:-1;;;;;8510:38:0;::::1;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;8510:38:0::1;;;;;;;;;;;;;;;;8478:70;;8563:9;8558:178;8578:25:::0;;::::1;8558:178;;;8640:18;::::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;8640:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;:36;;:85;8694:14;;8709:1;8694:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8640:85:0::1;-1:-1:-1::0;;;;;8640:85:0::1;;;;;;;;;;;;8624:101;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;:10;8635:1;8624:13;;;;;;;;:::i;:::-;;;;;;:101;;;;8605:3;;;;;:::i;:::-;;;;8558:178;;;-1:-1:-1::0;8752:10:0;8276:493;-1:-1:-1;;;;;;;;8276:493:0:o;10696:534::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;10927:23;;10856:6;;10864:5;;3636:19;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;3869:37:::1;3909:30:::0;;;:21:::1;:30;::::0;;;;3957:12;;10895:6;;10903:5;;-1:-1:-1;;;;;3957:20:0;::::1;-1:-1:-1::0;3949:59:0::1;;;;-1:-1:-1::0;;;;;3949:59:0::1;;;;;;;:::i;:::-;10966:37:::2;11006:29:::0;;;:21:::2;:29;::::0;;;;11053:12;;-1:-1:-1;;;;;11053:21:0;::::2;-1:-1:-1::0;11053:21:0::2;11045:60;;;;-1:-1:-1::0;;;;;11045:60:0::2;;;;;;;:::i;:::-;11115:34;11152:5;11158;-1:-1:-1::0;;;;;11152:12:0::2;;;;;;;;;:::i;:::-;;;;;;;;;;;11115:49;;11187:4;:21;;:36;11209:13;-1:-1:-1::0;;;;;11187:36:0::2;-1:-1:-1::0;;;;;11187:36:0::2;;;;;;;;;;;;11174:49;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10956:274;;3859:167:::1;3789:1;;3597:200:::0;10696:534;;;;;;;:::o;19777:1742::-;3607:26;3636:19;;;:10;:19;;;;;3686:13;;19968:6;;19976:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;20014:47;;::::1;19993:154;;;::::0;-1:-1:-1;;;;;19993:154:0;;31317:2:2;19993:154:0::1;::::0;::::1;31299:21:2::0;31356:2;31336:18;;;31329:30;31395:34;31375:18;;;31368:62;31466:30;31446:18;;;31439:58;31514:19;;19993:154:0::1;31115:424:2::0;19993:154:0::1;20162:9;20157:300;20177:31:::0;;::::1;20157:300;;;20287:1;20254:20;;20275:1;20254:23;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:30;;:34;:112;;;;-1:-1:-1::0;20346:20:0::1;::::0;;;::::1;-1:-1:-1::0;;;;;20346:20:0::1;20312::::0;;20333:1;20312:23;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:30;;:54;;20254:112;20229:217;;;;-1:-1:-1::0;;;;;20229:217:0::1;;;;;;;:::i;:::-;20210:3:::0;::::1;::::0;::::1;:::i;:::-;;;;20157:300;;;-1:-1:-1::0;20466:26:0::1;20495:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;20495:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;20570:19:0::1;20551:15:::0;;-1:-1:-1;;;20551:15:0;::::1;;;:38;::::0;::::1;;;;;;:::i;:::-;;20530:112;;;::::0;-1:-1:-1;;;;;20530:112:0;;28361:2:2;20530:112:0::1;::::0;::::1;28343:21:2::0;28400:2;28380:18;;;28373:30;28439:29;28419:18;;;28412:57;28486:18;;20530:112:0::1;28159:351:2::0;20530:112:0::1;20652:43;20698:51:::0;;;:21:::1;:51;::::0;;;;20802:18;;20698:51;;20652:43;20698:51;;-1:-1:-1;;;;;20802:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;;;;;;;;;;20759:61;;20835:9;20830:683;20850:31:::0;;::::1;20830:683;;;20966:10;20927:50;::::0;;;:38:::1;::::0;::::1;:50;::::0;;;;;20978:9;;20988:1;20978:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20927:64:0::1;-1:-1:-1::0;;;;;20927:64:0::1;;;;;;;;;;;;:109;;:137;;;;;:::i;:::-;:142:::0;;-1:-1:-1;20902:239:0::1;;;;-1:-1:-1::0;;;;;20902:239:0::1;;;;;;;:::i;:::-;21255:20;;21276:1;21255:23;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;21186:10;21155:42;::::0;;;:30:::1;::::0;::::1;:42;::::0;;;;;21198:9;;21208:1;21198:12;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;21155:56:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;21155:56:0;:123:::1;::::0;:97:::1;::::0;;::::1;::::0;:123:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;21330:6:0::1;21354:5;21377:10;21405:9;;21415:1;21405:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;21465:20;;21486:1;21465:23;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;21297:205;;;;;;;;;;;:::i;:::-;;;;;;;;20883:3:::0;::::1;::::0;::::1;:::i;:::-;;;;20830:683;;14468:1131:::0;3607:26;3636:19;;;:10;:19;;;;;3686:13;;14612:6;;14620:5;;3702:1;-1:-1:-1;3686:42:0;;;;-1:-1:-1;3707:13:0;;-1:-1:-1;;;;;3707:21:0;;-1:-1:-1;3686:42:0;3665:114;;;;-1:-1:-1;;;;;3665:114:0;;;;;;;:::i;:::-;14658:27;;;;;:99:::1;;-1:-1:-1::0;14732:25:0::1;::::0;-1:-1:-1;;;;;14732:25:0::1;14705:52:::0;::::1;;14658:99;14637:192;;;;-1:-1:-1::0;;;;;14637:192:0::1;;;;;;;:::i;:::-;14839:26;14868:18:::0;;;:10:::1;:18;::::0;;;;:25;;-1:-1:-1;;;;;14868:25:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;-1:-1:-1;14943:23:0::1;14924:15:::0;;-1:-1:-1;;;14924:15:0;::::1;;;:42;::::0;::::1;;;;;;:::i;:::-;;14903:111;;;::::0;-1:-1:-1;;;;;14903:111:0;;32636:2:2;14903:111:0::1;::::0;::::1;32618:21:2::0;32675:2;32655:18;;;32648:30;32714:24;32694:18;;;32687:52;32756:18;;14903:111:0::1;32434:346:2::0;14903:111:0::1;15024:43;15070:51:::0;;;:21:::1;:51;::::0;;;;15174:18;;15070:51;;15024:43;15070:51;;-1:-1:-1;;;;;15174:18:0;::::1;::::0;;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;15251:10:::1;15223:39:::0;;15174:18:::1;::::0;;::::1;::::0;;::::1;15223:39:::0;;;;;;;;:46;;15174:18;;-1:-1:-1;15223:39:0;:46:::1;::::0;::::1;:::i;:::-;:51:::0;;-1:-1:-1;15202:143:0::1;;;::::0;-1:-1:-1;;;;;15202:143:0;;32987:2:2;15202:143:0::1;::::0;::::1;32969:21:2::0;33026:2;33006:18;;;32999:30;33065:34;33045:18;;;33038:62;33136:15;33116:18;;;33109:43;33169:19;;15202:143:0::1;32785:409:2::0;15202:143:0::1;15383:10;15355:27;:39:::0;;;::::1;::::0;;;;;;:58:::1;::::0;15397:16;;15355:58:::1;:::i;:::-;;-1:-1:-1::0;;;;;;;;;;;15457:6:0::1;15477:5;15496:10;15528:1;15566:16;;15428:164;;;;;;;;;;;:::i;:::-;;;;;;;;14627:972;;;3597:200:::0;14468:1131;;;;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:171:2;81:20;;-1:-1:-1;;;;;130:30:2;;120:41;;110:69;;175:1;172;165:12;110:69;14:171;;;:::o;190:252::-;257:6;265;318:2;306:9;297:7;293:23;289:32;286:52;;;334:1;331;324:12;286:52;370:9;357:23;347:33;;399:37;432:2;421:9;417:18;399:37;:::i;:::-;389:47;;190:252;;;;;:::o;447:163::-;514:20;;574:10;563:22;;553:33;;543:61;;600:1;597;590:12;615:397;698:6;706;714;722;775:3;763:9;754:7;750:23;746:33;743:53;;;792:1;789;782:12;743:53;828:9;815:23;805:33;;857:37;890:2;879:9;875:18;857:37;:::i;:::-;847:47;;913:37;946:2;935:9;931:18;913:37;:::i;:::-;903:47;;969:37;1002:2;991:9;987:18;969:37;:::i;:::-;959:47;;615:397;;;;;;;:::o;1017:370::-;1080:8;1090:6;1144:3;1137:4;1129:6;1125:17;1121:27;1111:55;;1162:1;1159;1152:12;1111:55;-1:-1:-1;1185:20:2;;-1:-1:-1;;;;;1217:30:2;;1214:50;;;1260:1;1257;1250:12;1214:50;1297:4;1289:6;1285:17;1273:29;;1360:3;1353:4;1345;1337:6;1333:17;1325:6;1321:30;1317:41;1314:50;1311:70;;;1377:1;1374;1367:12;1311:70;1017:370;;;;;:::o;1392:925::-;1542:6;1550;1558;1566;1574;1582;1635:3;1623:9;1614:7;1610:23;1606:33;1603:53;;;1652:1;1649;1642:12;1603:53;1688:9;1675:23;1665:33;;1717:37;1750:2;1739:9;1735:18;1717:37;:::i;:::-;1707:47;;1805:2;1794:9;1790:18;1777:32;-1:-1:-1;;;;;1869:2:2;1861:6;1858:14;1855:34;;;1885:1;1882;1875:12;1855:34;1924:70;1986:7;1977:6;1966:9;1962:22;1924:70;:::i;:::-;2013:8;;-1:-1:-1;1898:96:2;-1:-1:-1;2101:2:2;2086:18;;2073:32;;-1:-1:-1;2117:16:2;;;2114:36;;;2146:1;2143;2136:12;2114:36;;2185:72;2249:7;2238:8;2227:9;2223:24;2185:72;:::i;:::-;1392:925;;;;-1:-1:-1;1392:925:2;;-1:-1:-1;1392:925:2;;2276:8;;1392:925;-1:-1:-1;;;1392:925:2:o;2578:577::-;2681:6;2689;2697;2705;2758:2;2746:9;2737:7;2733:23;2729:32;2726:52;;;2774:1;2771;2764:12;2726:52;2810:9;2797:23;2787:33;;2839:37;2872:2;2861:9;2857:18;2839:37;:::i;:::-;2829:47;;2927:2;2916:9;2912:18;2899:32;-1:-1:-1;;;;;2946:6:2;2943:30;2940:50;;;2986:1;2983;2976:12;2940:50;3025:70;3087:7;3078:6;3067:9;3063:22;3025:70;:::i;:::-;2578:577;;;;-1:-1:-1;3114:8:2;-1:-1:-1;;;;2578:577:2:o;3160:1174::-;3328:4;3357:2;3386;3375:9;3368:21;3427:3;3416:9;3412:19;-1:-1:-1;;;;;3477:6:2;3471:13;3467:38;3462:2;3451:9;3447:18;3440:66;3553:2;3545:6;3541:15;3535:22;3576:10;3640:2;3626:12;3622:21;3617:2;3606:9;3602:18;3595:49;3708:2;3702;3694:6;3690:15;3684:22;3680:31;3675:2;3664:9;3660:18;3653:59;;;3777:4;3771:2;3763:6;3759:15;3753:22;3749:33;3743:3;3732:9;3728:19;3721:62;3832:3;3824:6;3820:16;3814:23;3875:4;3868;3857:9;3853:20;3846:34;3900:6;3935:14;3929:21;3974:6;3966;3959:22;4012:3;4001:9;3997:19;3990:26;;4059:2;4043:14;4039:23;4025:37;;4080:1;4071:10;;4090:218;4104:6;4101:1;4098:13;4090:218;;;4169:13;;-1:-1:-1;;;;;4165:62:2;4153:75;;4283:15;;;;4126:1;4119:9;;;;;4248:12;;;;4090:218;;;-1:-1:-1;4325:3:2;3160:1174;-1:-1:-1;;;;;;3160:1174:2:o;4339:180::-;4398:6;4451:2;4439:9;4430:7;4426:23;4422:32;4419:52;;;4467:1;4464;4457:12;4419:52;-1:-1:-1;4490:23:2;;4339:180;-1:-1:-1;4339:180:2:o;4524:258::-;4596:1;4606:113;4620:6;4617:1;4614:13;4606:113;;;4696:11;;;4690:18;4677:11;;;4670:39;4642:2;4635:10;4606:113;;;4737:6;4734:1;4731:13;4728:48;;;4772:1;4763:6;4758:3;4754:16;4747:27;4728:48;;4524:258;;;:::o;4787:::-;4829:3;4867:5;4861:12;4894:6;4889:3;4882:19;4910:63;4966:6;4959:4;4954:3;4950:14;4943:4;4936:5;4932:16;4910:63;:::i;:::-;5027:2;5006:15;-1:-1:-1;;5002:29:2;4993:39;;;;5034:4;4989:50;;4787:258;-1:-1:-1;;4787:258:2:o;5050:1012::-;5219:2;5208:9;5201:21;-1:-1:-1;;;;;5268:6:2;5262:13;5258:62;5253:2;5242:9;5238:18;5231:90;5182:4;5368:2;5360:6;5356:15;5350:22;5408:4;5403:2;5392:9;5388:18;5381:32;5436:52;5483:3;5472:9;5468:19;5454:12;5436:52;:::i;:::-;5422:66;;5537:2;5529:6;5525:15;5519:22;5564:2;5560:7;5631:2;5619:9;5611:6;5607:22;5603:31;5598:2;5587:9;5583:18;5576:59;5658:41;5692:6;5676:14;5658:41;:::i;:::-;5644:55;;5754:2;5746:6;5742:15;5736:22;5730:3;5719:9;5715:19;5708:51;5808:3;5800:6;5796:16;5790:23;5768:45;;5878:2;5866:9;5858:6;5854:22;5850:31;5844:3;5833:9;5829:19;5822:60;;5905:41;5939:6;5923:14;5905:41;:::i;:::-;5891:55;;;-1:-1:-1;;;;;6006:3:2;5998:6;5994:16;5988:23;5984:48;5977:4;5966:9;5962:20;5955:78;6050:6;6042:14;;;5050:1012;;;;:::o;6371:196::-;6439:20;;-1:-1:-1;;;;;6488:54:2;;6478:65;;6468:93;;6557:1;6554;6547:12;6572:652;6684:6;6692;6700;6708;6716;6769:3;6757:9;6748:7;6744:23;6740:33;6737:53;;;6786:1;6783;6776:12;6737:53;6822:9;6809:23;6799:33;;6851:37;6884:2;6873:9;6869:18;6851:37;:::i;:::-;6841:47;;6939:2;6928:9;6924:18;6911:32;-1:-1:-1;;;;;6958:6:2;6955:30;6952:50;;;6998:1;6995;6988:12;6952:50;7037:70;7099:7;7090:6;7079:9;7075:22;7037:70;:::i;:::-;7126:8;;-1:-1:-1;7011:96:2;-1:-1:-1;7180:38:2;;-1:-1:-1;7214:2:2;7199:18;;7180:38;:::i;:::-;7170:48;;6572:652;;;;;;;;:::o;7229:1556::-;7446:2;7498:21;;;7568:13;;7471:18;;;7590:22;;;7417:4;;7446:2;7631;;7649:18;;;;7709:15;;;7694:31;;7690:40;;7753:15;;;7417:4;7796:960;7810:6;7807:1;7804:13;7796:960;;;7903:2;7899:7;7887:9;7879:6;7875:22;7871:36;7866:3;7859:49;7937:6;7931:13;7967:4;8010:2;8004:9;8041:2;8033:6;8026:18;8071:48;8115:2;8107:6;8103:15;8089:12;8071:48;:::i;:::-;8057:62;;;8168:2;8164;8160:11;8154:18;8221:6;8213;8209:19;8204:2;8196:6;8192:15;8185:44;8256:41;8290:6;8274:14;8256:41;:::i;:::-;8242:55;;;8346:2;8342;8338:11;8332:18;8399:6;8391;8387:19;8382:2;8374:6;8370:15;8363:44;8434:41;8468:6;8452:14;8434:41;:::i;:::-;8420:55;;;8498:4;8551:2;8547;8543:11;8537:18;8515:40;;8604:6;8596;8592:19;8587:2;8579:6;8575:15;8568:44;;8635:41;8669:6;8653:14;8635:41;:::i;:::-;8734:12;;;;8625:51;-1:-1:-1;;;8699:15:2;;;;7832:1;7825:9;7796:960;;;-1:-1:-1;8773:6:2;;7229:1556;-1:-1:-1;;;;;;;;7229:1556:2:o;9021:347::-;9072:8;9082:6;9136:3;9129:4;9121:6;9117:17;9113:27;9103:55;;9154:1;9151;9144:12;9103:55;-1:-1:-1;9177:20:2;;-1:-1:-1;;;;;9209:30:2;;9206:50;;;9252:1;9249;9242:12;9206:50;9289:4;9281:6;9277:17;9265:29;;9341:3;9334:4;9325:6;9317;9313:19;9309:30;9306:39;9303:59;;;9358:1;9355;9348:12;9373:858;9480:6;9488;9496;9504;9512;9520;9573:3;9561:9;9552:7;9548:23;9544:33;9541:53;;;9590:1;9587;9580:12;9541:53;9626:9;9613:23;9603:33;;9655:37;9688:2;9677:9;9673:18;9655:37;:::i;:::-;9645:47;;9743:2;9732:9;9728:18;9715:32;-1:-1:-1;;;;;9807:2:2;9799:6;9796:14;9793:34;;;9823:1;9820;9813:12;9793:34;9862:58;9912:7;9903:6;9892:9;9888:22;9862:58;:::i;:::-;9939:8;;-1:-1:-1;9836:84:2;-1:-1:-1;10027:2:2;10012:18;;9999:32;;-1:-1:-1;10043:16:2;;;10040:36;;;10072:1;10069;10062:12;10040:36;;10111:60;10163:7;10152:8;10141:9;10137:24;10111:60;:::i;10428:787::-;10529:6;10537;10545;10553;10561;10614:2;10602:9;10593:7;10589:23;10585:32;10582:52;;;10630:1;10627;10620:12;10582:52;10670:9;10657:23;-1:-1:-1;;;;;10740:2:2;10732:6;10729:14;10726:34;;;10756:1;10753;10746:12;10726:34;10795:58;10845:7;10836:6;10825:9;10821:22;10795:58;:::i;:::-;10872:8;;-1:-1:-1;10769:84:2;-1:-1:-1;10954:2:2;10939:18;;10926:32;;-1:-1:-1;11011:2:2;10996:18;;10983:32;;-1:-1:-1;11027:16:2;;;11024:36;;;11056:1;11053;11046:12;11024:36;;11095:60;11147:7;11136:8;11125:9;11121:24;11095:60;:::i;:::-;10428:787;;;;-1:-1:-1;10428:787:2;;-1:-1:-1;11174:8:2;;11069:86;10428:787;-1:-1:-1;;;10428:787:2:o;11402:186::-;11461:6;11514:2;11502:9;11493:7;11489:23;11485:32;11482:52;;;11530:1;11527;11520:12;11482:52;11553:29;11572:9;11553:29;:::i;:::-;11543:39;11402:186;-1:-1:-1;;;11402:186:2:o;11593:184::-;11651:6;11704:2;11692:9;11683:7;11679:23;11675:32;11672:52;;;11720:1;11717;11710:12;11672:52;11743:28;11761:9;11743:28;:::i;11782:1150::-;12003:2;12055:21;;;12125:13;;12028:18;;;12147:22;;;11974:4;;12003:2;12188;;12206:18;;;;12266:15;;;12251:31;;12247:40;;12310:15;;;11974:4;12353:550;12367:6;12364:1;12361:13;12353:550;;;12432:22;;;-1:-1:-1;;12428:36:2;12416:49;;12488:13;;12534:9;;12556:18;;;12601:48;12633:15;;;12534:9;12601:48;:::i;:::-;12690:11;;;12684:18;12739:19;;;12722:15;;;12715:44;12684:18;12587:62;-1:-1:-1;12782:41:2;12587:62;12684:18;12782:41;:::i;:::-;12881:12;;;;12772:51;-1:-1:-1;;;12846:15:2;;;;12389:1;12382:9;12353:550;;12937:326;13013:6;13021;13029;13082:2;13070:9;13061:7;13057:23;13053:32;13050:52;;;13098:1;13095;13088:12;13050:52;13134:9;13121:23;13111:33;;13163:38;13197:2;13186:9;13182:18;13163:38;:::i;:::-;13153:48;;13220:37;13253:2;13242:9;13238:18;13220:37;:::i;:::-;13210:47;;12937:326;;;;;:::o;13268:218::-;13415:2;13404:9;13397:21;13378:4;13435:45;13476:2;13465:9;13461:18;13453:6;13435:45;:::i;13491:549::-;13578:6;13586;13594;13602;13655:2;13643:9;13634:7;13630:23;13626:32;13623:52;;;13671:1;13668;13661:12;13623:52;13707:9;13694:23;13684:33;;13736:37;13769:2;13758:9;13754:18;13736:37;:::i;:::-;13726:47;;13824:2;13813:9;13809:18;13796:32;-1:-1:-1;;;;;13843:6:2;13840:30;13837:50;;;13883:1;13880;13873:12;13837:50;13922:58;13972:7;13963:6;13952:9;13948:22;13922:58;:::i;14045:353::-;14247:2;14229:21;;;14286:2;14266:18;;;14259:30;14325:31;14320:2;14305:18;;14298:59;14389:2;14374:18;;14045:353::o;14403:349::-;14605:2;14587:21;;;14644:2;14624:18;;;14617:30;14683:27;14678:2;14663:18;;14656:55;14743:2;14728:18;;14403:349::o;14757:184::-;-1:-1:-1;;;;;14806:1:2;14799:88;14906:4;14903:1;14896:15;14930:4;14927:1;14920:15;14946:184;-1:-1:-1;;;;;14995:1:2;14988:88;15095:4;15092:1;15085:15;15119:4;15116:1;15109:15;15411:339;15613:2;15595:21;;;15652:2;15632:18;;;15625:30;15691:17;15686:2;15671:18;;15664:45;15741:2;15726:18;;15411:339::o;16230:184::-;-1:-1:-1;;;;;16279:1:2;16272:88;16379:4;16376:1;16369:15;16403:4;16400:1;16393:15;16419:125;16459:4;16487:1;16484;16481:8;16478:34;;;16492:18;;:::i;:::-;-1:-1:-1;16529:9:2;;16419:125::o;16961:521::-;17038:4;17044:6;17104:11;17091:25;17198:2;17194:7;17183:8;17167:14;17163:29;17159:43;17139:18;17135:68;17125:96;;17217:1;17214;17207:12;17125:96;17244:33;;17296:20;;;-1:-1:-1;;;;;;17328:30:2;;17325:50;;;17371:1;17368;17361:12;17325:50;17404:4;17392:17;;-1:-1:-1;17435:14:2;17431:27;;;17421:38;;17418:58;;;17472:1;17469;17462:12;17487:410;17689:2;17671:21;;;17728:2;17708:18;;;17701:30;17767:34;17762:2;17747:18;;17740:62;17838:16;17833:2;17818:18;;17811:44;17887:3;17872:19;;17487:410::o;17902:135::-;17941:3;-1:-1:-1;;17962:17:2;;17959:43;;;17982:18;;:::i;:::-;-1:-1:-1;18029:1:2;18018:13;;17902:135::o;18393:437::-;18478:1;18468:12;;18525:1;18515:12;;;18536:61;;18590:4;18582:6;18578:17;18568:27;;18536:61;18643:2;18635:6;18632:14;18612:18;18609:38;18606:218;;;-1:-1:-1;;;;;18677:1:2;18670:88;18781:4;18778:1;18771:15;18809:4;18806:1;18799:15;18606:218;;18393:437;;;:::o;19192:397::-;19394:2;19376:21;;;19433:2;19413:18;;;19406:30;19472:34;19467:2;19452:18;;19445:62;19543:3;19538:2;19523:18;;19516:31;19579:3;19564:19;;19192:397::o;19594:266::-;19682:6;19677:3;19670:19;19734:6;19727:5;19720:4;19715:3;19711:14;19698:43;-1:-1:-1;19786:1:2;19761:16;;;19779:4;19757:27;;;19750:38;;;;19842:2;19821:15;;;-1:-1:-1;;19817:29:2;19808:39;;;19804:50;;19594:266::o;19865:878::-;20233:6;20222:9;20215:25;-1:-1:-1;;;;;20280:6:2;20276:31;20271:2;20260:9;20256:18;20249:59;20196:4;-1:-1:-1;;;;;20417:2:2;20409:6;20405:15;20400:2;20389:9;20385:18;20378:43;20469:2;20461:6;20457:15;20452:2;20441:9;20437:18;20430:43;;20510:3;20504;20493:9;20489:19;20482:32;20551:1;20545:3;20534:9;20530:19;20523:30;20590:6;20584:3;20573:9;20569:19;20562:35;20616:3;20656:2;20650:3;20639:9;20635:19;20628:31;20676:61;20733:2;20722:9;20718:18;20710:6;20702;20676:61;:::i;:::-;20668:69;19865:878;-1:-1:-1;;;;;;;;;19865:878:2:o;21448:825::-;21654:4;21702:2;21691:9;21687:18;21732:6;21721:9;21714:25;21758:2;-1:-1:-1;;;;;21800:6:2;21796:31;21791:2;21780:9;21776:18;21769:59;21864:2;21859;21848:9;21844:18;21837:30;21887:6;21917;21909;21902:22;21955:3;21944:9;21940:19;21933:26;;21982:6;21968:20;;22006:1;22016:231;22030:6;22027:1;22024:13;22016:231;;;-1:-1:-1;;;;;22095:26:2;22114:6;22095:26;:::i;:::-;22091:75;22079:88;;22222:15;;;;22187:12;;;;22052:1;22045:9;22016:231;;22634:350;22836:2;22818:21;;;22875:2;22855:18;;;22848:30;22914:28;22909:2;22894:18;;22887:56;22975:2;22960:18;;22634:350::o;22989:184::-;-1:-1:-1;;;;;23038:1:2;23031:88;23138:4;23135:1;23128:15;23162:4;23159:1;23152:15;23938:700;24239:6;24228:9;24221:25;-1:-1:-1;;;;;24286:6:2;24282:55;24277:2;24266:9;24262:18;24255:83;24374:3;24369:2;24358:9;24354:18;24347:31;24202:4;24401:62;24458:3;24447:9;24443:19;24435:6;24427;24401:62;:::i;:::-;24499:6;24494:2;24483:9;24479:18;24472:34;24555:9;24547:6;24543:22;24537:3;24526:9;24522:19;24515:51;24583:49;24625:6;24617;24609;24583:49;:::i;:::-;24575:57;23938:700;-1:-1:-1;;;;;;;;;;23938:700:2:o;24643:686::-;24697:5;24750:3;24743:4;24735:6;24731:17;24727:27;24717:55;;24768:1;24765;24758:12;24717:55;24797:6;24791:13;-1:-1:-1;;;;;24860:2:2;24856;24853:10;24850:36;;;24866:18;;:::i;:::-;24941:2;24935:9;24909:2;24995:13;;-1:-1:-1;;24991:22:2;;;25015:2;24987:31;24983:40;24971:53;;;25039:18;;;25059:22;;;25036:46;25033:72;;;25085:18;;:::i;:::-;25125:10;25121:2;25114:22;25160:2;25152:6;25145:18;25206:3;25199:4;25194:2;25186:6;25182:15;25178:26;25175:35;25172:55;;;25223:1;25220;25213:12;25172:55;25236:63;25296:2;25289:4;25281:6;25277:17;25270:4;25262:6;25258:17;25236:63;:::i;:::-;25317:6;24643:686;-1:-1:-1;;;;;;24643:686:2:o;25334:942::-;25426:6;25479:2;25467:9;25458:7;25454:23;25450:32;25447:52;;;25495:1;25492;25485:12;25447:52;25528:9;25522:16;-1:-1:-1;;;;;25598:2:2;25590:6;25587:14;25584:34;;;25614:1;25611;25604:12;25584:34;25637:22;;;;25693:4;25675:16;;;25671:27;25668:47;;;25711:1;25708;25701:12;25668:47;25744:4;25738:11;25788:4;25780:6;25776:17;25843:6;25831:10;25828:22;25823:2;25811:10;25808:18;25805:46;25802:72;;;25854:18;;:::i;:::-;25890:4;25883:24;25932:9;;25953:16;;;25950:36;;;25982:1;25979;25972:12;25950:36;26010:56;26058:7;26047:8;26043:2;26039:17;26010:56;:::i;:::-;26002:6;25995:72;;26106:2;26102;26098:11;26092:18;26135:2;26125:8;26122:16;26119:36;;;26151:1;26148;26141:12;26119:36;26188:56;26236:7;26225:8;26221:2;26217:17;26188:56;:::i;:::-;26183:2;26171:15;;26164:81;-1:-1:-1;26175:6:2;25334:942;-1:-1:-1;;;;;25334:942:2:o;26281:743::-;26602:6;26591:9;26584:25;26645:3;26640:2;26629:9;26625:18;26618:31;26565:4;26672:62;26729:3;26718:9;26714:19;26706:6;26698;26672:62;:::i;:::-;26782:9;26774:6;26770:22;26765:2;26754:9;26750:18;26743:50;26816:33;26842:6;26834;26816:33;:::i;:::-;26802:47;;26885:6;26880:2;26869:9;26865:18;26858:34;26941:9;26933:6;26929:22;26923:3;26912:9;26908:19;26901:51;26969:49;27011:6;27003;26995;26969:49;:::i;27029:343::-;27231:2;27213:21;;;27270:2;27250:18;;;27243:30;27309:21;27304:2;27289:18;;27282:49;27363:2;27348:18;;27029:343::o;28515:402::-;28717:2;28699:21;;;28756:2;28736:18;;;28729:30;28795:34;28790:2;28775:18;;28768:62;28866:8;28861:2;28846:18;;28839:36;28907:3;28892:19;;28515:402::o;28922:882::-;29290:6;29279:9;29272:25;-1:-1:-1;;;;;29337:6:2;29333:31;29328:2;29317:9;29313:18;29306:59;29253:4;-1:-1:-1;;;;;29474:2:2;29466:6;29462:15;29457:2;29446:9;29442:18;29435:43;29526:2;29518:6;29514:15;29509:2;29498:9;29494:18;29487:43;;29567:3;29561;29550:9;29546:19;29539:32;29608:1;29602:3;29591:9;29587:19;29580:30;29647:10;29641:3;29630:9;29626:19;29619:39;29677:3;29717:2;29711:3;29700:9;29696:19;29689:31;29737:61;29794:2;29783:9;29779:18;29771:6;29763;29737:61;:::i;30230:880::-;30598:6;30587:9;30580:25;-1:-1:-1;;;;;30645:6:2;30641:31;30636:2;30625:9;30621:18;30614:59;30561:4;-1:-1:-1;;;;;30782:2:2;30774:6;30770:15;30765:2;30754:9;30750:18;30743:43;30834:2;30826:6;30822:15;30817:2;30806:9;30802:18;30795:43;;30875:3;30869;30858:9;30854:19;30847:32;30916:1;30910:3;30899:9;30895:19;30888:30;30955:8;30949:3;30938:9;30934:19;30927:37;30983:3;31023:2;31017:3;31006:9;31002:19;30995:31;31043:61;31100:2;31089:9;31085:18;31077:6;31069;31043:61;:::i;31544:885::-;31912:6;31901:9;31894:25;-1:-1:-1;;;;;31959:6:2;31955:31;31950:2;31939:9;31935:18;31928:59;31875:4;-1:-1:-1;;;;;32096:2:2;32088:6;32084:15;32079:2;32068:9;32064:18;32057:43;32148:2;32140:6;32136:15;32131:2;32120:9;32116:18;32109:43;;32189:3;32183;32172:9;32168:19;32161:32;32230:2;32224:3;32213:9;32209:19;32202:31;32270:12;32264:3;32253:9;32249:19;32242:41;32302:3;32342:2;32336:3;32325:9;32321:19;32314:31;32362:61;32419:2;32408:9;32404:18;32396:6;32388;32362:61;:::i;33199:880::-;33567:6;33556:9;33549:25;-1:-1:-1;;;;;33614:6:2;33610:31;33605:2;33594:9;33590:18;33583:59;33530:4;-1:-1:-1;;;;;33751:2:2;33743:6;33739:15;33734:2;33723:9;33719:18;33712:43;33803:2;33795:6;33791:15;33786:2;33775:9;33771:18;33764:43;;33844:3;33838;33827:9;33823:19;33816:32;33885:1;33879:3;33868:9;33864:19;33857:30;33924:8;33918:3;33907:9;33903:19;33896:37;33952:3;33992:2;33986:3;33975:9;33971:19;33964:31;34012:61;34069:2;34058:9;34054:18;34046:6;34038;34012:61;:::i", - "source": "// SPDX-License-Identifier: GPL-3.0\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./Identity.sol\";\n\n/**\n * @title Delta Contract\n * @dev Delta Contract For Mpc\n */\ncontract HFLContract {\n IdentityContract public idContract;\n\n address private owner;\n enum RoundStatus {\n Started,\n Running,\n Calculating,\n Aggregating,\n Finished\n }\n mapping(bytes32 => Task) createdTasks;\n mapping(bytes32 => TaskRound[]) taskRounds;\n mapping(bytes32 => RoundModelCommitments[]) roundModelCommitments;\n uint64 private maxWeightCommitmentLength = 10485760;\n uint64 private maxSSComitmentLength = 256;\n struct RoundModelCommitments {\n mapping(address => bytes) weightCommitment;\n mapping(address => mapping(address => SSData)) ssdata;\n }\n struct Task {\n address creator;\n string creatorUrl;\n string dataSet;\n bytes32 commitment;\n string taskType;\n uint64 currentRound;\n }\n\n struct Candidate {\n bytes pk1;\n bytes pk2;\n }\n\n struct TaskRound {\n uint64 currentRound;\n uint32 maxSample;\n uint32 minSample;\n RoundStatus status;\n mapping(address => Candidate) candidates;\n address[] joinedAddrs;\n }\n\n struct ExtCallTaskRoundStruct {\n uint64 currentRound;\n uint32 maxSample;\n uint32 minSample;\n uint8 status;\n address[] joinedAddrs;\n }\n\n struct SSData {\n bytes seedPiece;\n bytes seedCommitment;\n bytes secretKeyPiece;\n bytes secretKeyMaskCommitment;\n }\n\n // event for EVM logging\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\n // triggered when task created\n event TaskCreated(\n address indexed creator,\n bytes32 taskId,\n string dataSet,\n string creatorUrl,\n bytes32 commitment,\n string taskType\n );\n // triggered when task developer call startRound\n event RoundStart(bytes32 taskId, uint64 round);\n\n // triggered when task developer call startRound\n event RoundEnd(bytes32 taskId, uint64 round);\n\n // triggered when task developer call selectCandidates\n event PartnerSelected(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when task developer call startAggregateUpload\n event AggregateStarted(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when task developer call startAggregate\n event CalculateStarted(bytes32 taskId, uint64 round, address[] addrs);\n\n // triggered when client call uploadWeightCommitment , uploadSeedCommitment ,uploadSkMaskCommitment\n event ContentUploaded(\n bytes32 taskId,\n uint64 round,\n address sender,\n address reciver,\n string contentType,\n bytes content\n );\n\n // modifier to check if caller is owner\n modifier isOwner() {\n // If the first argument of 'require' evaluates to 'false', execution terminates and all\n // changes to the state and to Ether balances are reverted.\n // This used to consume all gas in old EVM versions, but not anymore.\n // It is often a good idea to use 'require' to check if functions are called correctly.\n // As a second argument, you can also provide an explanation about what went wrong.\n require(msg.sender == owner, \"Caller is not owner\");\n _;\n }\n\n modifier taskExists(bytes32 task_id) {\n require(createdTasks[task_id].creator != address(0), \"Task not exists\");\n _;\n }\n\n modifier roundExists(bytes32 task_id, uint64 round) {\n TaskRound[] storage rounds = taskRounds[task_id];\n require(\n rounds.length > 1 && rounds.length > round,\n \"this round does not exist\"\n );\n _;\n }\n\n modifier roundcmmtExists(bytes32 task_id, uint64 round) {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[task_id];\n require(cmmts.length > round, \"The Task Round Must exists\");\n _;\n }\n\n modifier taskOwner(bytes32 task_id) {\n require(\n createdTasks[task_id].creator == msg.sender,\n \"Must called by the task owner\"\n );\n _;\n }\n\n /**\n * @dev Set contract deployer as owner\n */\n constructor(IdentityContract _addr) {\n idContract = _addr;\n owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor\n emit OwnerSet(address(0), owner);\n }\n\n /**\n * @dev get task info data\n * @param taskId taskId\n */\n function getTaskData(bytes32 taskId)\n public\n view\n taskExists(taskId)\n returns (Task memory task)\n {\n task = createdTasks[taskId];\n }\n\n /**\n * @dev called by task developer, notifying all clients that a new learning task has been published\n * @param dataSet data set name (file/folder name of training data)\n * @param commitment training code hash (client validation purpose)\n * @return taskId taskId\n */\n function createTask(\n string calldata dataSet,\n bytes32 commitment,\n string calldata taskType\n ) public payable returns (bytes32 taskId) {\n bytes32 task_id = keccak256(\n abi.encode(block.number, msg.sender, dataSet, commitment, taskType)\n );\n IdentityContract.Node memory node = idContract.getNodeInfo(msg.sender);\n createdTasks[task_id] = Task({\n creatorUrl: node.url,\n creator: msg.sender,\n dataSet: dataSet,\n commitment: commitment,\n taskType: taskType,\n currentRound: 0\n });\n taskId = task_id;\n TaskRound[] storage rounds = taskRounds[taskId];\n rounds.push();\n emit TaskCreated(\n msg.sender,\n task_id,\n dataSet,\n node.url,\n commitment,\n taskType\n );\n }\n\n /**\n * @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n * @param taskId taskId\n * @param round the round to start\n */\n function startRound(\n bytes32 taskId,\n uint64 round,\n uint32 maxSample,\n uint32 minSample\n ) public taskExists(taskId) taskOwner(taskId) {\n TaskRound[] storage rounds = taskRounds[taskId];\n require(\n rounds.length == round,\n \"the round has been already started or the pre round does not exist\"\n );\n Task storage task = createdTasks[taskId];\n task.currentRound = round;\n while (rounds.length == 0 || rounds.length - 1 < round) {\n rounds.push();\n }\n rounds[round].currentRound = round;\n rounds[round].maxSample = maxSample;\n rounds[round].minSample = minSample;\n rounds[round].status = RoundStatus.Started;\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n while (cmmts.length == 0 || cmmts.length - 1 < round) {\n cmmts.push();\n }\n emit RoundStart(taskId, round);\n }\n\n /**\n * @dev called by client, join for that round of computation\n * @param taskId taskId\n * @param round the round to join\n * @param pk1 used for secure communication channel establishment\n * @param pk2 used for mask generation\n */\n function joinRound(\n bytes32 taskId,\n uint64 round,\n bytes calldata pk1,\n bytes calldata pk2\n ) public taskExists(taskId) roundExists(taskId, round) returns (bool) {\n TaskRound[] storage rounds = taskRounds[taskId];\n TaskRound storage thisRound = rounds[rounds.length - 1];\n require(\n rounds.length - 1 == round &&\n thisRound.status == RoundStatus.Started,\n \"join phase has passed\"\n );\n require(\n thisRound.candidates[msg.sender].pk1.length == 0,\n \"Cannot join the same round multiple times\"\n );\n thisRound.candidates[msg.sender] = Candidate({pk1: pk1, pk2: pk2});\n thisRound.joinedAddrs.push(msg.sender);\n return true;\n }\n\n /**\n * @dev called by anyone, get Client Pks\n * @return candidate (pk1,pk2)\n */\n function getClientPublickeys(\n bytes32 taskId,\n uint64 round,\n address[] calldata candidateAddrs\n ) public view roundExists(taskId, round) returns (Candidate[] memory) {\n Candidate[] memory candidates = new Candidate[](candidateAddrs.length);\n for (uint256 i = 0; i < candidateAddrs.length; i++) {\n candidates[i] = taskRounds[taskId][round].candidates[\n candidateAddrs[i]\n ];\n }\n return candidates;\n }\n\n /**\n * @dev getting task round infos\n * @param taskId taskId\n * @param round the round to fetch\n * @return taskround the task round infos\n */\n function getTaskRound(bytes32 taskId, uint64 round)\n public\n view\n roundExists(taskId, round)\n returns (ExtCallTaskRoundStruct memory taskround)\n {\n TaskRound storage temp = taskRounds[taskId][round];\n taskround = ExtCallTaskRoundStruct({\n currentRound: temp.currentRound,\n maxSample: temp.maxSample,\n minSample: temp.minSample,\n status: (uint8)(temp.status),\n joinedAddrs: temp.joinedAddrs\n });\n }\n\n /**\n * @dev called by task developer, randomly choose candidates to be computation nodes\n * @dev clients now should start secret sharing phase\n * @param addrs selected client addresses\n */\n function selectCandidates(\n bytes32 taskId,\n uint64 round,\n address[] calldata addrs\n ) public taskOwner(taskId) roundExists(taskId, round) {\n require(addrs.length > 0, \"Must provide addresses\");\n TaskRound storage curRound = taskRounds[taskId][round];\n for (uint256 i = 0; i < addrs.length; i++) {\n require(\n curRound.candidates[addrs[i]].pk1.length > 0,\n \"Candidate must exist\"\n );\n }\n curRound.status = RoundStatus.Running;\n emit PartnerSelected(taskId, round, addrs);\n }\n\n /**\n * @dev called by task developer, get commitments from blockchain\n * @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n * @param taskId taskId\n * @param clientaddress the client that publish the commitments\n * @param round the round of that commitment\n * @return commitment commitment data\n */\n function getResultCommitment(\n bytes32 taskId,\n address clientaddress,\n uint64 round\n )\n public\n view\n roundExists(taskId, round)\n roundcmmtExists(taskId, round)\n returns (bytes memory commitment)\n {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n require(cmmts.length >= round, \"The Task Round Must exists\");\n RoundModelCommitments storage cmmt = cmmts[round];\n commitment = cmmt.weightCommitment[clientaddress];\n }\n\n /**\n * @dev called by any participants\n */\n function getSecretSharingDatas(\n bytes32 taskId,\n uint64 round,\n address[] calldata senders,\n address receiver\n )\n public\n view\n roundExists(taskId, round)\n roundcmmtExists(taskId, round)\n returns (SSData[] memory)\n {\n RoundModelCommitments[] storage cmmts = roundModelCommitments[taskId];\n require(cmmts.length >= round, \"The Task Round Must exists\");\n RoundModelCommitments storage cmmt = cmmts[round];\n SSData[] memory ssdatas = new SSData[](senders.length);\n for (uint256 i = 0; i < senders.length; i++) {\n ssdatas[i] = (cmmt.ssdata[senders[i]][receiver]);\n }\n return ssdatas;\n }\n\n /**\n * @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n * @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n * @param taskId taskId\n * @param round the task round\n * @param onlineClients clients that has transfered gradient to task developer\n */\n function startAggregate(\n bytes32 taskId,\n uint64 round,\n address[] calldata onlineClients\n ) public taskOwner(taskId) roundExists(taskId, round) {\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Calculating,\n \"Calculating has not started\"\n );\n curRound.status = RoundStatus.Aggregating;\n for (uint256 i = 0; i < onlineClients.length; i++) {\n require(\n curRound.candidates[onlineClients[i]].pk1.length > 0,\n \"Candidate must exist\"\n );\n }\n emit AggregateStarted(taskId, round, onlineClients);\n }\n\n /**\n * @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n * @param taskId taskId\n * @param round the task round\n */\n function startCalculate(\n bytes32 taskId,\n uint64 round,\n address[] calldata onlineClients\n ) public taskOwner(taskId) roundExists(taskId, round) {\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"This round is not running now\"\n );\n curRound.status = RoundStatus.Calculating;\n emit CalculateStarted(taskId, round, onlineClients);\n }\n\n /**\n * @dev called by task developer, close round\n * @param taskId taskId\n * @param round the task round\n */\n function endRound(bytes32 taskId, uint64 round)\n public\n taskOwner(taskId)\n roundExists(taskId, round)\n {\n TaskRound storage curRound = taskRounds[taskId][round];\n curRound.status = RoundStatus.Finished;\n emit RoundEnd(taskId, round);\n }\n\n /**\n * @dev called by client, upload weight commitment\n * @param taskId taskId\n * @param round the task round\n * @param resultCommitment masked model incremental commitment\n */\n function uploadResultCommitment(\n bytes32 taskId,\n uint64 round,\n bytes calldata resultCommitment\n ) public roundExists(taskId, round) {\n require(\n resultCommitment.length > 0 &&\n resultCommitment.length <= maxWeightCommitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Calculating,\n \"not in uploading phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n require(\n commitment.weightCommitment[msg.sender].length == 0,\n \"cannot upload weightCommitment multiple times\"\n );\n commitment.weightCommitment[msg.sender] = resultCommitment;\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n address(0),\n \"WEIGHT\",\n resultCommitment\n );\n }\n\n /**\n * @dev called by client, upload secret sharing seed commitment\n * @param taskId taskId\n * @param round the task round\n * @param receivers the receiver addresses\n * @param seedCommitments seedCommitments[i] is the commitment send to receivers[i]\n */\n function uploadSeedCommitment(\n bytes32 taskId,\n uint64 round,\n address[] calldata receivers,\n bytes[] calldata seedCommitments\n ) public roundExists(taskId, round) {\n require(\n receivers.length == seedCommitments.length,\n \"receivers length is not equal to seedCommitments length\"\n );\n for (uint256 i = 0; i < seedCommitments.length; i++) {\n require(\n seedCommitments[i].length > 0 &&\n seedCommitments[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"not in secret sharing phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < seedCommitments.length; i++) {\n require(\n commitment\n .ssdata[msg.sender][receivers[i]]\n .seedCommitment\n .length == 0,\n \"cannot upload seed cmmt multiple times\"\n );\n commitment\n .ssdata[msg.sender][receivers[i]].seedCommitment = seedCommitments[\n i\n ];\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n receivers[i],\n \"SEEDCMMT\",\n seedCommitments[i]\n );\n }\n }\n\n /**\n * @dev called by client, upload secret sharing seed commitment\n * @param taskId taskId\n * @param round the task round\n * @param senders senders address\n * @param seeds seeds[i] is the seed send by senders[i]\n */\n function uploadSeed(\n bytes32 taskId,\n uint64 round,\n address[] calldata senders,\n bytes[] calldata seeds\n ) public roundExists(taskId, round) {\n require(\n senders.length == seeds.length,\n \"senders length is not equal to seeds length\"\n );\n for (uint256 i = 0; i < seeds.length; i++) {\n require(\n seeds[i].length > 0 && seeds[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Aggregating,\n \"not in upload ss phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < seeds.length; i++) {\n require(\n commitment\n .ssdata[senders[i]][msg.sender]\n .seedCommitment\n .length > 0,\n \"must upload commitment first\"\n );\n require(\n commitment.ssdata[senders[i]][msg.sender].seedPiece.length == 0,\n \"cannot upload seed multiple times\"\n );\n commitment.ssdata[senders[i]][msg.sender].seedPiece = seeds[i];\n emit ContentUploaded(\n taskId,\n round,\n senders[i],\n msg.sender,\n \"SEED\",\n seeds[i]\n );\n }\n }\n\n /**\n * @dev called by client, upload secret sharing sk commitment\n * @param taskId taskId\n * @param round the task round\n * @param receivers the receiver addresses\n * @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i]\n */\n function uploadSecretKeyCommitment(\n bytes32 taskId,\n uint64 round,\n address[] calldata receivers,\n bytes[] calldata secretKeyCommitments\n ) public roundExists(taskId, round) {\n require(\n receivers.length == secretKeyCommitments.length,\n \"receivers length is not equal to secretKeyCommitments length\"\n );\n for (uint256 i = 0; i < secretKeyCommitments.length; i++) {\n require(\n secretKeyCommitments[i].length > 0 &&\n secretKeyCommitments[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Running,\n \"not in secret sharing phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < secretKeyCommitments.length; i++) {\n require(\n commitment\n .ssdata[msg.sender][receivers[i]]\n .secretKeyMaskCommitment\n .length == 0,\n \"cannot upload seed cmmt multiple times\"\n );\n commitment\n .ssdata[msg.sender][receivers[i]]\n .secretKeyMaskCommitment = secretKeyCommitments[i];\n emit ContentUploaded(\n taskId,\n round,\n msg.sender,\n receivers[i],\n \"SKMASKCMMT\",\n secretKeyCommitments[i]\n );\n }\n }\n\n /**\n * @dev called by client, upload secret sharing sk commitment\n * @param taskId taskId\n * @param round the task round\n * @param senders senders address\n * @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i]\n */\n function uploadSecretkeyMask(\n bytes32 taskId,\n uint64 round,\n address[] calldata senders,\n bytes[] calldata secretkeyMasks\n ) public roundExists(taskId, round) {\n require(\n senders.length == secretkeyMasks.length,\n \"senders length is not equal to secretkeyMasks length\"\n );\n for (uint256 i = 0; i < secretkeyMasks.length; i++) {\n require(\n secretkeyMasks[i].length > 0 &&\n secretkeyMasks[i].length <= maxSSComitmentLength,\n \"commitment length exceeds limit or it is empty\"\n );\n }\n TaskRound storage curRound = taskRounds[taskId][round];\n require(\n curRound.status == RoundStatus.Aggregating,\n \"not in upload ss phase\"\n );\n RoundModelCommitments[] storage commitments = roundModelCommitments[\n taskId\n ];\n RoundModelCommitments storage commitment = commitments[round];\n for (uint256 i = 0; i < secretkeyMasks.length; i++) {\n require(\n commitment\n .ssdata[senders[i]][msg.sender]\n .secretKeyMaskCommitment\n .length > 0,\n \"must upload commitment first\"\n );\n require(\n commitment\n .ssdata[senders[i]][msg.sender]\n .secretKeyPiece\n .length == 0,\n \"cannot upload seed multiple times\"\n );\n commitment\n .ssdata[senders[i]][msg.sender].secretKeyPiece = secretkeyMasks[i];\n emit ContentUploaded(\n taskId,\n round,\n senders[i],\n msg.sender,\n \"SKMASK\",\n secretkeyMasks[i]\n );\n }\n }\n\n function setMaxWeightCommitmentLength(uint64 maxLength) public isOwner {\n maxWeightCommitmentLength = maxLength;\n }\n\n function setMaxSSCommitmentLength(uint64 maxLength) public isOwner {\n maxSSComitmentLength = maxLength;\n }\n\n function getMaxCommitmentsLength()\n public\n view\n returns (uint64 sslength, uint64 weightLength)\n {\n sslength = maxSSComitmentLength;\n weightLength = maxWeightCommitmentLength;\n }\n\n /**\n * @dev Change owner\n * @param newOwner address of new owner\n */\n function changeOwner(address newOwner) public isOwner {\n emit OwnerSet(owner, newOwner);\n owner = newOwner;\n }\n\n /**\n * @dev Return owner address\n * @return address of owner\n */\n function getOwner() external view returns (address) {\n return owner;\n }\n}\n", - "sourcePath": "/home/hmiao/workspace/node/contract/contracts/HFLContract.sol", - "ast": { - "absolutePath": "project:/contracts/HFLContract.sol", - "exportedSymbols": { - "HFLContract": [ - 1927 - ], - "IdentityContract": [ - 2193 - ] - }, - "id": 1928, - "license": "GPL-3.0", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - ">=", - "0.7", - ".0", - "<", - "0.9", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "37:31:0" - }, - { - "absolutePath": "project:/contracts/Identity.sol", - "file": "./Identity.sol", - "id": 2, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1928, - "sourceUnit": 2194, - "src": "70:24:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "HFLContract", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 3, - "nodeType": "StructuredDocumentation", - "src": "96:63:0", - "text": " @title Delta Contract\n @dev Delta Contract For Mpc" - }, - "fullyImplemented": true, - "id": 1927, - "linearizedBaseContracts": [ - 1927 - ], - "name": "HFLContract", - "nameLocation": "169:11:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "3045a939", - "id": 6, - "mutability": "mutable", - "name": "idContract", - "nameLocation": "211:10:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "187:34:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - }, - "typeName": { - "id": 5, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 4, - "name": "IdentityContract", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2193, - "src": "187:16:0" - }, - "referencedDeclaration": 2193, - "src": "187:16:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 8, - "mutability": "mutable", - "name": "owner", - "nameLocation": "244:5:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "228:21:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "228:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "canonicalName": "HFLContract.RoundStatus", - "id": 14, - "members": [ - { - "id": 9, - "name": "Started", - "nameLocation": "282:7:0", - "nodeType": "EnumValue", - "src": "282:7:0" - }, - { - "id": 10, - "name": "Running", - "nameLocation": "299:7:0", - "nodeType": "EnumValue", - "src": "299:7:0" - }, - { - "id": 11, - "name": "Calculating", - "nameLocation": "316:11:0", - "nodeType": "EnumValue", - "src": "316:11:0" - }, - { - "id": 12, - "name": "Aggregating", - "nameLocation": "337:11:0", - "nodeType": "EnumValue", - "src": "337:11:0" - }, - { - "id": 13, - "name": "Finished", - "nameLocation": "358:8:0", - "nodeType": "EnumValue", - "src": "358:8:0" - } - ], - "name": "RoundStatus", - "nameLocation": "260:11:0", - "nodeType": "EnumDefinition", - "src": "255:117:0" - }, - { - "constant": false, - "id": 19, - "mutability": "mutable", - "name": "createdTasks", - "nameLocation": "402:12:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "377:37:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task)" - }, - "typeName": { - "id": 18, - "keyType": { - "id": 15, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "385:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "377:24:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task)" - }, - "valueType": { - "id": 17, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 16, - "name": "Task", - "nodeType": "IdentifierPath", - "referencedDeclaration": 62, - "src": "396:4:0" - }, - "referencedDeclaration": 62, - "src": "396:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 25, - "mutability": "mutable", - "name": "taskRounds", - "nameLocation": "452:10:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "420:42:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" - }, - "typeName": { - "id": 24, - "keyType": { - "id": 20, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "428:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "420:31:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" - }, - "valueType": { - "baseType": { - "id": 22, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 21, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "439:9:0" - }, - "referencedDeclaration": 85, - "src": "439:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 23, - "nodeType": "ArrayTypeName", - "src": "439:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 31, - "mutability": "mutable", - "name": "roundModelCommitments", - "nameLocation": "512:21:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "468:65:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" - }, - "typeName": { - "id": 30, - "keyType": { - "id": 26, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "476:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "468:43:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" - }, - "valueType": { - "baseType": { - "id": 28, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 27, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "487:21:0" - }, - "referencedDeclaration": 49, - "src": "487:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 29, - "nodeType": "ArrayTypeName", - "src": "487:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 34, - "mutability": "mutable", - "name": "maxWeightCommitmentLength", - "nameLocation": "554:25:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "539:51:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 32, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "539:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "value": { - "hexValue": "3130343835373630", - "id": 33, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "582:8:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_10485760_by_1", - "typeString": "int_const 10485760" - }, - "value": "10485760" - }, - "visibility": "private" - }, - { - "constant": false, - "id": 37, - "mutability": "mutable", - "name": "maxSSComitmentLength", - "nameLocation": "611:20:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "596:41:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 35, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "596:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "value": { - "hexValue": "323536", - "id": 36, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "634:3:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_256_by_1", - "typeString": "int_const 256" - }, - "value": "256" - }, - "visibility": "private" - }, - { - "canonicalName": "HFLContract.RoundModelCommitments", - "id": 49, - "members": [ - { - "constant": false, - "id": 41, - "mutability": "mutable", - "name": "weightCommitment", - "nameLocation": "708:16:0", - "nodeType": "VariableDeclaration", - "scope": 49, - "src": "682:42:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes)" - }, - "typeName": { - "id": 40, - "keyType": { - "id": 38, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "690:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "682:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes)" - }, - "valueType": { - "id": 39, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "701:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 48, - "mutability": "mutable", - "name": "ssdata", - "nameLocation": "781:6:0", - "nodeType": "VariableDeclaration", - "scope": 49, - "src": "734:53:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" - }, - "typeName": { - "id": 47, - "keyType": { - "id": 42, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "742:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "734:46:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" - }, - "valueType": { - "id": 46, - "keyType": { - "id": 43, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "761:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "753:26:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData)" - }, - "valueType": { - "id": 45, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 44, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "772:6:0" - }, - "referencedDeclaration": 106, - "src": "772:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - } - } - }, - "visibility": "internal" - } - ], - "name": "RoundModelCommitments", - "nameLocation": "650:21:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "643:151:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.Task", - "id": 62, - "members": [ - { - "constant": false, - "id": 51, - "mutability": "mutable", - "name": "creator", - "nameLocation": "829:7:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "821:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 50, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "821:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 53, - "mutability": "mutable", - "name": "creatorUrl", - "nameLocation": "853:10:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "846:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 52, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "846:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 55, - "mutability": "mutable", - "name": "dataSet", - "nameLocation": "880:7:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "873:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 54, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "873:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 57, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "905:10:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "897:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 56, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "897:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 59, - "mutability": "mutable", - "name": "taskType", - "nameLocation": "932:8:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "925:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 58, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "925:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 61, - "mutability": "mutable", - "name": "currentRound", - "nameLocation": "957:12:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "950:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 60, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "950:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "name": "Task", - "nameLocation": "806:4:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "799:177:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.Candidate", - "id": 67, - "members": [ - { - "constant": false, - "id": 64, - "mutability": "mutable", - "name": "pk1", - "nameLocation": "1015:3:0", - "nodeType": "VariableDeclaration", - "scope": 67, - "src": "1009:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 63, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1009:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 66, - "mutability": "mutable", - "name": "pk2", - "nameLocation": "1034:3:0", - "nodeType": "VariableDeclaration", - "scope": 67, - "src": "1028:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 65, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1028:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "Candidate", - "nameLocation": "989:9:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "982:62:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.TaskRound", - "id": 85, - "members": [ - { - "constant": false, - "id": 69, - "mutability": "mutable", - "name": "currentRound", - "nameLocation": "1084:12:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1077:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 68, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1077:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 71, - "mutability": "mutable", - "name": "maxSample", - "nameLocation": "1113:9:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1106:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 70, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1106:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 73, - "mutability": "mutable", - "name": "minSample", - "nameLocation": "1139:9:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1132:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 72, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1132:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 76, - "mutability": "mutable", - "name": "status", - "nameLocation": "1170:6:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1158:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "typeName": { - "id": 75, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 74, - "name": "RoundStatus", - "nodeType": "IdentifierPath", - "referencedDeclaration": 14, - "src": "1158:11:0" - }, - "referencedDeclaration": 14, - "src": "1158:11:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 81, - "mutability": "mutable", - "name": "candidates", - "nameLocation": "1216:10:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1186:40:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate)" - }, - "typeName": { - "id": 80, - "keyType": { - "id": 77, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1194:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1186:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate)" - }, - "valueType": { - "id": 79, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 78, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "1205:9:0" - }, - "referencedDeclaration": 67, - "src": "1205:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 84, - "mutability": "mutable", - "name": "joinedAddrs", - "nameLocation": "1246:11:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1236:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 82, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1236:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 83, - "nodeType": "ArrayTypeName", - "src": "1236:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "name": "TaskRound", - "nameLocation": "1057:9:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "1050:214:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.ExtCallTaskRoundStruct", - "id": 97, - "members": [ - { - "constant": false, - "id": 87, - "mutability": "mutable", - "name": "currentRound", - "nameLocation": "1317:12:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1310:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 86, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1310:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 89, - "mutability": "mutable", - "name": "maxSample", - "nameLocation": "1346:9:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1339:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 88, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1339:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 91, - "mutability": "mutable", - "name": "minSample", - "nameLocation": "1372:9:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1365:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 90, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1365:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 93, - "mutability": "mutable", - "name": "status", - "nameLocation": "1397:6:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1391:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 92, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1391:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 96, - "mutability": "mutable", - "name": "joinedAddrs", - "nameLocation": "1423:11:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1413:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 94, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1413:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 95, - "nodeType": "ArrayTypeName", - "src": "1413:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "name": "ExtCallTaskRoundStruct", - "nameLocation": "1277:22:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "1270:171:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.SSData", - "id": 106, - "members": [ - { - "constant": false, - "id": 99, - "mutability": "mutable", - "name": "seedPiece", - "nameLocation": "1477:9:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1471:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 98, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1471:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 101, - "mutability": "mutable", - "name": "seedCommitment", - "nameLocation": "1502:14:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1496:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 100, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1496:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "mutability": "mutable", - "name": "secretKeyPiece", - "nameLocation": "1532:14:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1526:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 102, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1526:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 105, - "mutability": "mutable", - "name": "secretKeyMaskCommitment", - "nameLocation": "1562:23:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1556:29:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 104, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1556:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "SSData", - "nameLocation": "1454:6:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "1447:145:0", - "visibility": "public" - }, - { - "anonymous": false, - "id": 112, - "name": "OwnerSet", - "nameLocation": "1633:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 111, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 108, - "indexed": true, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "1658:8:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1642:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 107, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1642:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 110, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "1684:8:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1668:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 109, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1668:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1641:52:0" - }, - "src": "1627:67:0" - }, - { - "anonymous": false, - "id": 126, - "name": "TaskCreated", - "nameLocation": "1740:11:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 125, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 114, - "indexed": true, - "mutability": "mutable", - "name": "creator", - "nameLocation": "1777:7:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1761:23:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 113, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1761:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 116, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "1802:6:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1794:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 115, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1794:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 118, - "indexed": false, - "mutability": "mutable", - "name": "dataSet", - "nameLocation": "1825:7:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1818:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 117, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1818:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 120, - "indexed": false, - "mutability": "mutable", - "name": "creatorUrl", - "nameLocation": "1849:10:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1842:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 119, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1842:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 122, - "indexed": false, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "1877:10:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1869:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 121, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1869:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 124, - "indexed": false, - "mutability": "mutable", - "name": "taskType", - "nameLocation": "1904:8:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1897:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 123, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1897:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1751:167:0" - }, - "src": "1734:185:0" - }, - { - "anonymous": false, - "id": 132, - "name": "RoundStart", - "nameLocation": "1983:10:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 131, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 128, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2002:6:0", - "nodeType": "VariableDeclaration", - "scope": 132, - "src": "1994:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 127, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1994:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 130, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2017:5:0", - "nodeType": "VariableDeclaration", - "scope": 132, - "src": "2010:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 129, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2010:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "1993:30:0" - }, - "src": "1977:47:0" - }, - { - "anonymous": false, - "id": 138, - "name": "RoundEnd", - "nameLocation": "2089:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 137, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 134, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2106:6:0", - "nodeType": "VariableDeclaration", - "scope": 138, - "src": "2098:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 133, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2098:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 136, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2121:5:0", - "nodeType": "VariableDeclaration", - "scope": 138, - "src": "2114:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 135, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2114:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "2097:30:0" - }, - "src": "2083:45:0" - }, - { - "anonymous": false, - "id": 147, - "name": "PartnerSelected", - "nameLocation": "2199:15:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 146, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 140, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2223:6:0", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2215:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 139, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2215:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 142, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2238:5:0", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2231:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 141, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2231:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 145, - "indexed": false, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "2255:5:0", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2245:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 143, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2245:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 144, - "nodeType": "ArrayTypeName", - "src": "2245:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "2214:47:0" - }, - "src": "2193:69:0" - }, - { - "anonymous": false, - "id": 156, - "name": "AggregateStarted", - "nameLocation": "2337:16:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 155, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 149, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2362:6:0", - "nodeType": "VariableDeclaration", - "scope": 156, - "src": "2354:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 148, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2354:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 151, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2377:5:0", - "nodeType": "VariableDeclaration", - "scope": 156, - "src": "2370:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 150, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2370:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 154, - "indexed": false, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "2394:5:0", - "nodeType": "VariableDeclaration", - "scope": 156, - "src": "2384:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 152, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2384:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 153, - "nodeType": "ArrayTypeName", - "src": "2384:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "2353:47:0" - }, - "src": "2331:70:0" - }, - { - "anonymous": false, - "id": 165, - "name": "CalculateStarted", - "nameLocation": "2470:16:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 158, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2495:6:0", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2487:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 157, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2487:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 160, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2510:5:0", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2503:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 159, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2503:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 163, - "indexed": false, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "2527:5:0", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2517:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 161, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2517:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 162, - "nodeType": "ArrayTypeName", - "src": "2517:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "2486:47:0" - }, - "src": "2464:70:0" - }, - { - "anonymous": false, - "id": 179, - "name": "ContentUploaded", - "nameLocation": "2650:15:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 178, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 167, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2683:6:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2675:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 166, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2675:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 169, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2706:5:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2699:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 168, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2699:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 171, - "indexed": false, - "mutability": "mutable", - "name": "sender", - "nameLocation": "2729:6:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2721:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 170, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2721:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 173, - "indexed": false, - "mutability": "mutable", - "name": "reciver", - "nameLocation": "2753:7:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2745:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 172, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2745:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 175, - "indexed": false, - "mutability": "mutable", - "name": "contentType", - "nameLocation": "2777:11:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2770:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 174, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2770:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 177, - "indexed": false, - "mutability": "mutable", - "name": "content", - "nameLocation": "2804:7:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2798:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 176, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2798:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2665:152:0" - }, - "src": "2644:174:0" - }, - { - "body": { - "id": 190, - "nodeType": "Block", - "src": "2887:510:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 182, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "3336:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3336:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 184, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "3350:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3336:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616c6c6572206973206e6f74206f776e6572", - "id": 186, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3357:21:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d", - "typeString": "literal_string \"Caller is not owner\"" - }, - "value": "Caller is not owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d", - "typeString": "literal_string \"Caller is not owner\"" - } - ], - "id": 181, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3328:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3328:51:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 188, - "nodeType": "ExpressionStatement", - "src": "3328:51:0" - }, - { - "id": 189, - "nodeType": "PlaceholderStatement", - "src": "3389:1:0" - } - ] - }, - "id": 191, - "name": "isOwner", - "nameLocation": "2877:7:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 180, - "nodeType": "ParameterList", - "parameters": [], - "src": "2884:2:0" - }, - "src": "2868:529:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 209, - "nodeType": "Block", - "src": "3440:99:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 196, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "3458:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 198, - "indexExpression": { - "id": 197, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 193, - "src": "3471:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3458:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "id": 199, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "creator", - "nodeType": "MemberAccess", - "referencedDeclaration": 51, - "src": "3458:29:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 202, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3499:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 201, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3491:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 200, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3491:7:0", - "typeDescriptions": {} - } - }, - "id": 203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3491:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3458:43:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5461736b206e6f7420657869737473", - "id": 205, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3503:17:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210", - "typeString": "literal_string \"Task not exists\"" - }, - "value": "Task not exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210", - "typeString": "literal_string \"Task not exists\"" - } - ], - "id": 195, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3450:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 206, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3450:71:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 207, - "nodeType": "ExpressionStatement", - "src": "3450:71:0" - }, - { - "id": 208, - "nodeType": "PlaceholderStatement", - "src": "3531:1:0" - } - ] - }, - "id": 210, - "name": "taskExists", - "nameLocation": "3412:10:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 194, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 193, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "3431:7:0", - "nodeType": "VariableDeclaration", - "scope": 210, - "src": "3423:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 192, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3423:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3422:17:0" - }, - "src": "3403:136:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 239, - "nodeType": "Block", - "src": "3597:200:0", - "statements": [ - { - "assignments": [ - 220 - ], - "declarations": [ - { - "constant": false, - "id": 220, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "3627:6:0", - "nodeType": "VariableDeclaration", - "scope": 239, - "src": "3607:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 218, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 217, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "3607:9:0" - }, - "referencedDeclaration": 85, - "src": "3607:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 219, - "nodeType": "ArrayTypeName", - "src": "3607:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 224, - "initialValue": { - "baseExpression": { - "id": 221, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "3636:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 223, - "indexExpression": { - "id": 222, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 212, - "src": "3647:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3636:19:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3607:48:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 226, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 220, - "src": "3686:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 227, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3686:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "31", - "id": 228, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3702:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3686:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 230, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 220, - "src": "3707:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 231, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3707:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 232, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 214, - "src": "3723:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3707:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3686:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", - "id": 235, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3742:27:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf", - "typeString": "literal_string \"this round does not exist\"" - }, - "value": "this round does not exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf", - "typeString": "literal_string \"this round does not exist\"" - } - ], - "id": 225, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3665:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3665:114:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 237, - "nodeType": "ExpressionStatement", - "src": "3665:114:0" - }, - { - "id": 238, - "nodeType": "PlaceholderStatement", - "src": "3789:1:0" - } - ] - }, - "id": 240, - "name": "roundExists", - "nameLocation": "3554:11:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 215, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 212, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "3574:7:0", - "nodeType": "VariableDeclaration", - "scope": 240, - "src": "3566:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 211, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3566:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 214, - "mutability": "mutable", - "name": "round", - "nameLocation": "3590:5:0", - "nodeType": "VariableDeclaration", - "scope": 240, - "src": "3583:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 213, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3583:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "3565:31:0" - }, - "src": "3545:252:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 264, - "nodeType": "Block", - "src": "3859:167:0", - "statements": [ - { - "assignments": [ - 250 - ], - "declarations": [ - { - "constant": false, - "id": 250, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "3901:5:0", - "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3869:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 248, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 247, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "3869:21:0" - }, - "referencedDeclaration": 49, - "src": "3869:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 249, - "nodeType": "ArrayTypeName", - "src": "3869:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 254, - "initialValue": { - "baseExpression": { - "id": 251, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "3909:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 253, - "indexExpression": { - "id": 252, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "3931:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3909:30:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3869:70:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 256, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 250, - "src": "3957:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 257, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3957:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 258, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 244, - "src": "3972:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3957:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3979:28:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - }, - "value": "The Task Round Must exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - } - ], - "id": 255, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3949:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3949:59:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 262, - "nodeType": "ExpressionStatement", - "src": "3949:59:0" - }, - { - "id": 263, - "nodeType": "PlaceholderStatement", - "src": "4018:1:0" - } - ] - }, - "id": 265, - "name": "roundcmmtExists", - "nameLocation": "3812:15:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 245, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 242, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "3836:7:0", - "nodeType": "VariableDeclaration", - "scope": 265, - "src": "3828:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 241, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3828:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 244, - "mutability": "mutable", - "name": "round", - "nameLocation": "3852:5:0", - "nodeType": "VariableDeclaration", - "scope": 265, - "src": "3845:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 243, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3845:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "3827:31:0" - }, - "src": "3803:223:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 281, - "nodeType": "Block", - "src": "4068:147:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 276, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 270, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "4099:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 272, - "indexExpression": { - "id": 271, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 267, - "src": "4112:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4099:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "id": 273, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "creator", - "nodeType": "MemberAccess", - "referencedDeclaration": 51, - "src": "4099:29:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 274, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4132:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4132:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4099:43:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", - "id": 277, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4156:31:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063", - "typeString": "literal_string \"Must called by the task owner\"" - }, - "value": "Must called by the task owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063", - "typeString": "literal_string \"Must called by the task owner\"" - } - ], - "id": 269, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4078:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 278, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4078:119:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 279, - "nodeType": "ExpressionStatement", - "src": "4078:119:0" - }, - { - "id": 280, - "nodeType": "PlaceholderStatement", - "src": "4207:1:0" - } - ] - }, - "id": 282, - "name": "taskOwner", - "nameLocation": "4041:9:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 268, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 267, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "4059:7:0", - "nodeType": "VariableDeclaration", - "scope": 282, - "src": "4051:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 266, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4051:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4050:17:0" - }, - "src": "4032:183:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 306, - "nodeType": "Block", - "src": "4316:184:0", - "statements": [ - { - "expression": { - "id": 291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 289, - "name": "idContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6, - "src": "4326:10:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 290, - "name": "_addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "4339:5:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "src": "4326:18:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "id": 292, - "nodeType": "ExpressionStatement", - "src": "4326:18:0" - }, - { - "expression": { - "id": 296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 293, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "4354:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 294, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4362:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4362:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4354:18:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 297, - "nodeType": "ExpressionStatement", - "src": "4354:18:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 301, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4483:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4475:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 299, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4475:7:0", - "typeDescriptions": {} - } - }, - "id": 302, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4475:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 303, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "4487:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 298, - "name": "OwnerSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "4466:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4466:27:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 305, - "nodeType": "EmitStatement", - "src": "4461:32:0" - } - ] - }, - "documentation": { - "id": 283, - "nodeType": "StructuredDocumentation", - "src": "4221:54:0", - "text": " @dev Set contract deployer as owner" - }, - "id": 307, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 287, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 286, - "mutability": "mutable", - "name": "_addr", - "nameLocation": "4309:5:0", - "nodeType": "VariableDeclaration", - "scope": 307, - "src": "4292:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - }, - "typeName": { - "id": 285, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 284, - "name": "IdentityContract", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2193, - "src": "4292:16:0" - }, - "referencedDeclaration": 2193, - "src": "4292:16:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "visibility": "internal" - } - ], - "src": "4291:24:0" - }, - "returnParameters": { - "id": 288, - "nodeType": "ParameterList", - "parameters": [], - "src": "4316:0:0" - }, - "scope": 1927, - "src": "4280:220:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 325, - "nodeType": "Block", - "src": "4712:44:0", - "statements": [ - { - "expression": { - "id": 323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 319, - "name": "task", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 317, - "src": "4722:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 320, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "4729:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 322, - "indexExpression": { - "id": 321, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 310, - "src": "4742:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4729:20:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "src": "4722:27:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task memory" - } - }, - "id": 324, - "nodeType": "ExpressionStatement", - "src": "4722:27:0" - } - ] - }, - "documentation": { - "id": 308, - "nodeType": "StructuredDocumentation", - "src": "4506:70:0", - "text": " @dev get task info data\n @param taskId taskId" - }, - "functionSelector": "58af9f73", - "id": 326, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 313, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 310, - "src": "4665:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 314, - "kind": "modifierInvocation", - "modifierName": { - "id": 312, - "name": "taskExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 210, - "src": "4654:10:0" - }, - "nodeType": "ModifierInvocation", - "src": "4654:18:0" - } - ], - "name": "getTaskData", - "nameLocation": "4590:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 311, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 310, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "4610:6:0", - "nodeType": "VariableDeclaration", - "scope": 326, - "src": "4602:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 309, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4602:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4601:16:0" - }, - "returnParameters": { - "id": 318, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 317, - "mutability": "mutable", - "name": "task", - "nameLocation": "4702:4:0", - "nodeType": "VariableDeclaration", - "scope": 326, - "src": "4690:16:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task" - }, - "typeName": { - "id": 316, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 315, - "name": "Task", - "nodeType": "IdentifierPath", - "referencedDeclaration": 62, - "src": "4690:4:0" - }, - "referencedDeclaration": 62, - "src": "4690:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - } - }, - "visibility": "internal" - } - ], - "src": "4689:18:0" - }, - "scope": 1927, - "src": "4581:175:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 408, - "nodeType": "Block", - "src": "5216:735:0", - "statements": [ - { - "assignments": [ - 339 - ], - "declarations": [ - { - "constant": false, - "id": 339, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "5234:7:0", - "nodeType": "VariableDeclaration", - "scope": 408, - "src": "5226:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 338, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5226:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 352, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 343, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "5278:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "src": "5278:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 345, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5292:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 346, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5292:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 347, - "name": "dataSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "5304:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 348, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "5313:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 349, - "name": "taskType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5325:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "expression": { - "id": 341, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "5267:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 342, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "5267:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5267:67:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 340, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "5244:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 351, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5244:100:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5226:118:0" - }, - { - "assignments": [ - 357 - ], - "declarations": [ - { - "constant": false, - "id": 357, - "mutability": "mutable", - "name": "node", - "nameLocation": "5383:4:0", - "nodeType": "VariableDeclaration", - "scope": 408, - "src": "5354:33:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node" - }, - "typeName": { - "id": 356, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 355, - "name": "IdentityContract.Node", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1934, - "src": "5354:21:0" - }, - "referencedDeclaration": 1934, - "src": "5354:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_storage_ptr", - "typeString": "struct IdentityContract.Node" - } - }, - "visibility": "internal" - } - ], - "id": 363, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 360, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5413:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5413:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 358, - "name": "idContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6, - "src": "5390:10:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "id": 359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getNodeInfo", - "nodeType": "MemberAccess", - "referencedDeclaration": 2192, - "src": "5390:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_Node_$1934_memory_ptr_$", - "typeString": "function (address) view external returns (struct IdentityContract.Node memory)" - } - }, - "id": 362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5390:34:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5354:70:0" - }, - { - "expression": { - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 364, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "5434:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 366, - "indexExpression": { - "id": 365, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 339, - "src": "5447:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "5434:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 368, - "name": "node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 357, - "src": "5489:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "id": 369, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1931, - "src": "5489:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "expression": { - "id": 370, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5520:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5520:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 372, - "name": "dataSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "5553:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 373, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "5586:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 374, - "name": "taskType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5620:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "hexValue": "30", - "id": 375, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5656:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 367, - "name": "Task", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 62, - "src": "5458:4:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Task_$62_storage_ptr_$", - "typeString": "type(struct HFLContract.Task storage pointer)" - } - }, - "id": 376, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "creatorUrl", - "creator", - "dataSet", - "commitment", - "taskType", - "currentRound" - ], - "nodeType": "FunctionCall", - "src": "5458:210:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task memory" - } - }, - "src": "5434:234:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "id": 378, - "nodeType": "ExpressionStatement", - "src": "5434:234:0" - }, - { - "expression": { - "id": 381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 379, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "5678:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 380, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 339, - "src": "5687:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "5678:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 382, - "nodeType": "ExpressionStatement", - "src": "5678:16:0" - }, - { - "assignments": [ - 387 - ], - "declarations": [ - { - "constant": false, - "id": 387, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "5724:6:0", - "nodeType": "VariableDeclaration", - "scope": 408, - "src": "5704:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 385, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 384, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "5704:9:0" - }, - "referencedDeclaration": 85, - "src": "5704:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 386, - "nodeType": "ArrayTypeName", - "src": "5704:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 391, - "initialValue": { - "baseExpression": { - "id": 388, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "5733:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 390, - "indexExpression": { - "id": 389, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "5744:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5733:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5704:47:0" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 392, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 387, - "src": "5761:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "5761:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", - "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" - } - }, - "id": 395, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5761:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 396, - "nodeType": "ExpressionStatement", - "src": "5761:13:0" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 398, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5814:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5814:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 400, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 339, - "src": "5838:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 401, - "name": "dataSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "5859:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "expression": { - "id": 402, - "name": "node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 357, - "src": "5880:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "id": 403, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1931, - "src": "5880:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 404, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "5902:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 405, - "name": "taskType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5926:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 397, - "name": "TaskCreated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 126, - "src": "5789:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,bytes32,string memory,string memory,bytes32,string memory)" - } - }, - "id": 406, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5789:155:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 407, - "nodeType": "EmitStatement", - "src": "5784:160:0" - } - ] - }, - "documentation": { - "id": 327, - "nodeType": "StructuredDocumentation", - "src": "4762:288:0", - "text": " @dev called by task developer, notifying all clients that a new learning task has been published\n @param dataSet data set name (file/folder name of training data)\n @param commitment training code hash (client validation purpose)\n @return taskId taskId" - }, - "functionSelector": "9bd3a869", - "id": 409, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "createTask", - "nameLocation": "5064:10:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 334, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 329, - "mutability": "mutable", - "name": "dataSet", - "nameLocation": "5100:7:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5084:23:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 328, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5084:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 331, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "5125:10:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5117:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 330, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5117:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 333, - "mutability": "mutable", - "name": "taskType", - "nameLocation": "5161:8:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5145:24:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 332, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5145:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5074:101:0" - }, - "returnParameters": { - "id": 337, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 336, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "5208:6:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5200:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 335, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5200:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5199:16:0" - }, - "scope": 1927, - "src": "5055:896:0", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 536, - "nodeType": "Block", - "src": "6327:802:0", - "statements": [ - { - "assignments": [ - 431 - ], - "declarations": [ - { - "constant": false, - "id": 431, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "6357:6:0", - "nodeType": "VariableDeclaration", - "scope": 536, - "src": "6337:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 429, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 428, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "6337:9:0" - }, - "referencedDeclaration": 85, - "src": "6337:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 430, - "nodeType": "ArrayTypeName", - "src": "6337:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 435, - "initialValue": { - "baseExpression": { - "id": 432, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "6366:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 434, - "indexExpression": { - "id": 433, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6377:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6366:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6337:47:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 437, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6415:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6415:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 439, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6415:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "74686520726f756e6420686173206265656e20616c72656164792073746172746564206f72207468652070726520726f756e6420646f6573206e6f74206578697374", - "id": 441, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6451:68:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7", - "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" - }, - "value": "the round has been already started or the pre round does not exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7", - "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" - } - ], - "id": 436, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6394:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6394:135:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 443, - "nodeType": "ExpressionStatement", - "src": "6394:135:0" - }, - { - "assignments": [ - 446 - ], - "declarations": [ - { - "constant": false, - "id": 446, - "mutability": "mutable", - "name": "task", - "nameLocation": "6552:4:0", - "nodeType": "VariableDeclaration", - "scope": 536, - "src": "6539:17:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - }, - "typeName": { - "id": 445, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 444, - "name": "Task", - "nodeType": "IdentifierPath", - "referencedDeclaration": 62, - "src": "6539:4:0" - }, - "referencedDeclaration": 62, - "src": "6539:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - } - }, - "visibility": "internal" - } - ], - "id": 450, - "initialValue": { - "baseExpression": { - "id": 447, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "6559:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 449, - "indexExpression": { - "id": 448, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6572:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6559:20:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6539:40:0" - }, - { - "expression": { - "id": 455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 451, - "name": "task", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 446, - "src": "6589:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task storage pointer" - } - }, - "id": 453, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "currentRound", - "nodeType": "MemberAccess", - "referencedDeclaration": 61, - "src": "6589:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 454, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6609:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6589:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 456, - "nodeType": "ExpressionStatement", - "src": "6589:25:0" - }, - { - "body": { - "id": 473, - "nodeType": "Block", - "src": "6680:38:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 468, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6694:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "6694:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", - "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" - } - }, - "id": 471, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6694:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 472, - "nodeType": "ExpressionStatement", - "src": "6694:13:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 457, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6631:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6631:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 459, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6648:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6631:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 461, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6653:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 462, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6653:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6669:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6653:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 465, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6673:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6653:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6631:47:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 474, - "nodeType": "WhileStatement", - "src": "6624:94:0" - }, - { - "expression": { - "id": 480, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 475, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6727:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 477, - "indexExpression": { - "id": 476, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6734:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6727:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 478, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "currentRound", - "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "6727:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 479, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6756:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6727:34:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 481, - "nodeType": "ExpressionStatement", - "src": "6727:34:0" - }, - { - "expression": { - "id": 487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 482, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6771:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 484, - "indexExpression": { - "id": 483, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6778:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6771:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 485, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "maxSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "6771:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 486, - "name": "maxSample", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 416, - "src": "6797:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "6771:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 488, - "nodeType": "ExpressionStatement", - "src": "6771:35:0" - }, - { - "expression": { - "id": 494, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 489, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6816:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 491, - "indexExpression": { - "id": 490, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6823:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6816:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 492, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "minSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 73, - "src": "6816:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 493, - "name": "minSample", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 418, - "src": "6842:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "6816:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 495, - "nodeType": "ExpressionStatement", - "src": "6816:35:0" - }, - { - "expression": { - "id": 502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 496, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6861:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 498, - "indexExpression": { - "id": 497, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6868:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6861:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 499, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "6861:20:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 500, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "6884:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 501, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Started", - "nodeType": "MemberAccess", - "referencedDeclaration": 9, - "src": "6884:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "6861:42:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 503, - "nodeType": "ExpressionStatement", - "src": "6861:42:0" - }, - { - "assignments": [ - 508 - ], - "declarations": [ - { - "constant": false, - "id": 508, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "6945:5:0", - "nodeType": "VariableDeclaration", - "scope": 536, - "src": "6913:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 506, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 505, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "6913:21:0" - }, - "referencedDeclaration": 49, - "src": "6913:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 507, - "nodeType": "ArrayTypeName", - "src": "6913:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 512, - "initialValue": { - "baseExpression": { - "id": 509, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "6953:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 511, - "indexExpression": { - "id": 510, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6975:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6953:29:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6913:69:0" - }, - { - "body": { - "id": 529, - "nodeType": "Block", - "src": "7046:37:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 524, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 508, - "src": "7060:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "7060:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct HFLContract.RoundModelCommitments storage ref[] storage pointer) returns (struct HFLContract.RoundModelCommitments storage ref)" - } - }, - "id": 527, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7060:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "id": 528, - "nodeType": "ExpressionStatement", - "src": "7060:12:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 523, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 516, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 513, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 508, - "src": "6999:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6999:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 515, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7015:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6999:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 520, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 517, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 508, - "src": "7020:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 518, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7020:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 519, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7035:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "7020:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 521, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "7039:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "7020:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6999:45:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 530, - "nodeType": "WhileStatement", - "src": "6992:91:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 532, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "7108:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 533, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "7116:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 531, - "name": "RoundStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 132, - "src": "7097:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", - "typeString": "function (bytes32,uint64)" - } - }, - "id": 534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7097:25:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 535, - "nodeType": "EmitStatement", - "src": "7092:30:0" - } - ] - }, - "documentation": { - "id": 410, - "nodeType": "StructuredDocumentation", - "src": "5957:197:0", - "text": " @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n @param taskId taskId\n @param round the round to start" - }, - "functionSelector": "07dcfa8e", - "id": 537, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 421, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6301:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 422, - "kind": "modifierInvocation", - "modifierName": { - "id": 420, - "name": "taskExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 210, - "src": "6290:10:0" - }, - "nodeType": "ModifierInvocation", - "src": "6290:18:0" - }, - { - "arguments": [ - { - "id": 424, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6319:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 425, - "kind": "modifierInvocation", - "modifierName": { - "id": 423, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "6309:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "6309:17:0" - } - ], - "name": "startRound", - "nameLocation": "6168:10:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 419, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 412, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "6196:6:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6188:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 411, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6188:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 414, - "mutability": "mutable", - "name": "round", - "nameLocation": "6219:5:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6212:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 413, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "6212:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 416, - "mutability": "mutable", - "name": "maxSample", - "nameLocation": "6241:9:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6234:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 415, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "6234:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 418, - "mutability": "mutable", - "name": "minSample", - "nameLocation": "6267:9:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6260:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 417, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "6260:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - } - ], - "src": "6178:104:0" - }, - "returnParameters": { - "id": 426, - "nodeType": "ParameterList", - "parameters": [], - "src": "6327:0:0" - }, - "scope": 1927, - "src": "6159:970:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 629, - "nodeType": "Block", - "src": "7590:583:0", - "statements": [ - { - "assignments": [ - 562 - ], - "declarations": [ - { - "constant": false, - "id": 562, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "7620:6:0", - "nodeType": "VariableDeclaration", - "scope": 629, - "src": "7600:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 560, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 559, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "7600:9:0" - }, - "referencedDeclaration": 85, - "src": "7600:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 561, - "nodeType": "ArrayTypeName", - "src": "7600:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 566, - "initialValue": { - "baseExpression": { - "id": 563, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "7629:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 565, - "indexExpression": { - "id": 564, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 540, - "src": "7640:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7629:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7600:47:0" - }, - { - "assignments": [ - 569 - ], - "declarations": [ - { - "constant": false, - "id": 569, - "mutability": "mutable", - "name": "thisRound", - "nameLocation": "7675:9:0", - "nodeType": "VariableDeclaration", - "scope": 629, - "src": "7657:27:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 568, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 567, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "7657:9:0" - }, - "referencedDeclaration": 85, - "src": "7657:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 576, - "initialValue": { - "baseExpression": { - "id": 570, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "7687:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 575, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 571, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "7694:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7694:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7710:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "7694:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7687:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7657:55:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 578, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "7743:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 579, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7743:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 580, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7759:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "7743:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 582, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 542, - "src": "7764:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "7743:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 584, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "7789:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 585, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "7789:16:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 586, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "7809:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 587, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Started", - "nodeType": "MemberAccess", - "referencedDeclaration": 9, - "src": "7809:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "7789:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7743:85:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6a6f696e2070686173652068617320706173736564", - "id": 590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7842:23:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2", - "typeString": "literal_string \"join phase has passed\"" - }, - "value": "join phase has passed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2", - "typeString": "literal_string \"join phase has passed\"" - } - ], - "id": 577, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7722:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7722:153:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 592, - "nodeType": "ExpressionStatement", - "src": "7722:153:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "expression": { - "id": 594, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "7906:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 595, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7906:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 598, - "indexExpression": { - "expression": { - "id": 596, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7927:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 597, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7927:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7906:32:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 599, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "pk1", - "nodeType": "MemberAccess", - "referencedDeclaration": 64, - "src": "7906:36:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7906:43:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 601, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7953:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7906:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469706c652074696d6573", - "id": 603, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7968:43:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172", - "typeString": "literal_string \"Cannot join the same round multiple times\"" - }, - "value": "Cannot join the same round multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172", - "typeString": "literal_string \"Cannot join the same round multiple times\"" - } - ], - "id": 593, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7885:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 604, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7885:136:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 605, - "nodeType": "ExpressionStatement", - "src": "7885:136:0" - }, - { - "expression": { - "id": 616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "expression": { - "id": 606, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "8031:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 610, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "8031:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 611, - "indexExpression": { - "expression": { - "id": 608, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8052:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8052:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8031:32:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 613, - "name": "pk1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "8082:3:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 614, - "name": "pk2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 546, - "src": "8092:3:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 612, - "name": "Candidate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 67, - "src": "8066:9:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Candidate_$67_storage_ptr_$", - "typeString": "type(struct HFLContract.Candidate storage pointer)" - } - }, - "id": 615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "pk1", - "pk2" - ], - "nodeType": "FunctionCall", - "src": "8066:31:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", - "typeString": "struct HFLContract.Candidate memory" - } - }, - "src": "8031:66:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 617, - "nodeType": "ExpressionStatement", - "src": "8031:66:0" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 623, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8134:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8134:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "expression": { - "id": 618, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "8107:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 621, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "joinedAddrs", - "nodeType": "MemberAccess", - "referencedDeclaration": 84, - "src": "8107:21:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 622, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "8107:26:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", - "typeString": "function (address[] storage pointer,address)" - } - }, - "id": 625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8107:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 626, - "nodeType": "ExpressionStatement", - "src": "8107:38:0" - }, - { - "expression": { - "hexValue": "74727565", - "id": 627, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8162:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 557, - "id": 628, - "nodeType": "Return", - "src": "8155:11:0" - } - ] - }, - "documentation": { - "id": 538, - "nodeType": "StructuredDocumentation", - "src": "7135:255:0", - "text": " @dev called by client, join for that round of computation\n @param taskId taskId\n @param round the round to join\n @param pk1 used for secure communication channel establishment\n @param pk2 used for mask generation" - }, - "functionSelector": "91d48f52", - "id": 630, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 549, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 540, - "src": "7540:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 550, - "kind": "modifierInvocation", - "modifierName": { - "id": 548, - "name": "taskExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 210, - "src": "7529:10:0" - }, - "nodeType": "ModifierInvocation", - "src": "7529:18:0" - }, - { - "arguments": [ - { - "id": 552, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 540, - "src": "7560:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 553, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 542, - "src": "7568:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 554, - "kind": "modifierInvocation", - "modifierName": { - "id": 551, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "7548:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "7548:26:0" - } - ], - "name": "joinRound", - "nameLocation": "7404:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 547, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 540, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "7431:6:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7423:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 539, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7423:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 542, - "mutability": "mutable", - "name": "round", - "nameLocation": "7454:5:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7447:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 541, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "7447:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 544, - "mutability": "mutable", - "name": "pk1", - "nameLocation": "7484:3:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7469:18:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 543, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7469:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 546, - "mutability": "mutable", - "name": "pk2", - "nameLocation": "7512:3:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7497:18:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 545, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7497:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7413:108:0" - }, - "returnParameters": { - "id": 557, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 556, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7584:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 555, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7584:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7583:6:0" - }, - "scope": 1927, - "src": "7395:778:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 692, - "nodeType": "Block", - "src": "8468:301:0", - "statements": [ - { - "assignments": [ - 653 - ], - "declarations": [ - { - "constant": false, - "id": 653, - "mutability": "mutable", - "name": "candidates", - "nameLocation": "8497:10:0", - "nodeType": "VariableDeclaration", - "scope": 692, - "src": "8478:29:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate[]" - }, - "typeName": { - "baseType": { - "id": 651, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 650, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "8478:9:0" - }, - "referencedDeclaration": 67, - "src": "8478:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - }, - "id": 652, - "nodeType": "ArrayTypeName", - "src": "8478:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.Candidate[]" - } - }, - "visibility": "internal" - } - ], - "id": 661, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 658, - "name": "candidateAddrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 638, - "src": "8526:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "8526:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 657, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "8510:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct HFLContract.Candidate memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 655, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 654, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "8514:9:0" - }, - "referencedDeclaration": 67, - "src": "8514:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - }, - "id": 656, - "nodeType": "ArrayTypeName", - "src": "8514:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.Candidate[]" - } - } - }, - "id": 660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8510:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8478:70:0" - }, - { - "body": { - "id": 688, - "nodeType": "Block", - "src": "8610:126:0", - "statements": [ - { - "expression": { - "id": 686, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 673, - "name": "candidates", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8624:10:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate memory[] memory" - } - }, - "id": 675, - "indexExpression": { - "id": 674, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8635:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8624:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", - "typeString": "struct HFLContract.Candidate memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 676, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "8640:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 678, - "indexExpression": { - "id": 677, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "8651:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8640:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 680, - "indexExpression": { - "id": 679, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "8659:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8640:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 681, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "8640:36:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 685, - "indexExpression": { - "baseExpression": { - "id": 682, - "name": "candidateAddrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 638, - "src": "8694:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 684, - "indexExpression": { - "id": 683, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8709:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8694:17:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8640:85:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "src": "8624:101:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", - "typeString": "struct HFLContract.Candidate memory" - } - }, - "id": 687, - "nodeType": "ExpressionStatement", - "src": "8624:101:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 666, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8578:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 667, - "name": "candidateAddrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 638, - "src": "8582:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "8582:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8578:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 689, - "initializationExpression": { - "assignments": [ - 663 - ], - "declarations": [ - { - "constant": false, - "id": 663, - "mutability": "mutable", - "name": "i", - "nameLocation": "8571:1:0", - "nodeType": "VariableDeclaration", - "scope": 689, - "src": "8563:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 662, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8563:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 665, - "initialValue": { - "hexValue": "30", - "id": 664, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8575:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "8563:13:0" - }, - "loopExpression": { - "expression": { - "id": 671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "8605:3:0", - "subExpression": { - "id": 670, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8605:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 672, - "nodeType": "ExpressionStatement", - "src": "8605:3:0" - }, - "nodeType": "ForStatement", - "src": "8558:178:0" - }, - { - "expression": { - "id": 690, - "name": "candidates", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8752:10:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate memory[] memory" - } - }, - "functionReturnParameters": 648, - "id": 691, - "nodeType": "Return", - "src": "8745:17:0" - } - ] - }, - "documentation": { - "id": 631, - "nodeType": "StructuredDocumentation", - "src": "8179:92:0", - "text": " @dev called by anyone, get Client Pks\n @return candidate (pk1,pk2)" - }, - "functionSelector": "e26e8871", - "id": 693, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 641, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "8424:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 642, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "8432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 643, - "kind": "modifierInvocation", - "modifierName": { - "id": 640, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "8412:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "8412:26:0" - } - ], - "name": "getClientPublickeys", - "nameLocation": "8285:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 639, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 633, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "8322:6:0", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8314:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 632, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8314:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 635, - "mutability": "mutable", - "name": "round", - "nameLocation": "8345:5:0", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8338:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 634, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "8338:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 638, - "mutability": "mutable", - "name": "candidateAddrs", - "nameLocation": "8379:14:0", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8360:33:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 636, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8360:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 637, - "nodeType": "ArrayTypeName", - "src": "8360:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "8304:95:0" - }, - "returnParameters": { - "id": 648, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 647, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8448:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate[]" - }, - "typeName": { - "baseType": { - "id": 645, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 644, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "8448:9:0" - }, - "referencedDeclaration": 67, - "src": "8448:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - }, - "id": 646, - "nodeType": "ArrayTypeName", - "src": "8448:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.Candidate[]" - } - }, - "visibility": "internal" - } - ], - "src": "8447:20:0" - }, - "scope": 1927, - "src": "8276:493:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 736, - "nodeType": "Block", - "src": "9118:331:0", - "statements": [ - { - "assignments": [ - 710 - ], - "declarations": [ - { - "constant": false, - "id": 710, - "mutability": "mutable", - "name": "temp", - "nameLocation": "9146:4:0", - "nodeType": "VariableDeclaration", - "scope": 736, - "src": "9128:22:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 709, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 708, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "9128:9:0" - }, - "referencedDeclaration": 85, - "src": "9128:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 716, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 711, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "9153:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 713, - "indexExpression": { - "id": 712, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 696, - "src": "9164:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9153:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 715, - "indexExpression": { - "id": 714, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 698, - "src": "9172:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9153:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9128:50:0" - }, - { - "expression": { - "id": 734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 717, - "name": "taskround", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 706, - "src": "9188:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 719, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9251:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 720, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currentRound", - "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "9251:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 721, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9293:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 722, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "maxSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "9293:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 723, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9332:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 724, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "minSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 73, - "src": "9332:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "arguments": [ - { - "expression": { - "id": 728, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9376:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 729, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "9376:11:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - ], - "components": [ - { - "id": 726, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9369:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 725, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "9369:5:0", - "typeDescriptions": {} - } - } - ], - "id": 727, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "9368:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - } - }, - "id": 730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9368:20:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "expression": { - "id": 731, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9415:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 732, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "joinedAddrs", - "nodeType": "MemberAccess", - "referencedDeclaration": 84, - "src": "9415:16:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - ], - "id": 718, - "name": "ExtCallTaskRoundStruct", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "9200:22:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr_$", - "typeString": "type(struct HFLContract.ExtCallTaskRoundStruct storage pointer)" - } - }, - "id": 733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "currentRound", - "maxSample", - "minSample", - "status", - "joinedAddrs" - ], - "nodeType": "FunctionCall", - "src": "9200:242:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" - } - }, - "src": "9188:254:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" - } - }, - "id": 735, - "nodeType": "ExpressionStatement", - "src": "9188:254:0" - } - ] - }, - "documentation": { - "id": 694, - "nodeType": "StructuredDocumentation", - "src": "8775:161:0", - "text": " @dev getting task round infos\n @param taskId taskId\n @param round the round to fetch\n @return taskround the task round infos" - }, - "functionSelector": "4893b362", - "id": 737, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 701, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 696, - "src": "9041:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 702, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 698, - "src": "9049:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 703, - "kind": "modifierInvocation", - "modifierName": { - "id": 700, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "9029:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "9029:26:0" - } - ], - "name": "getTaskRound", - "nameLocation": "8950:12:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 699, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 696, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "8971:6:0", - "nodeType": "VariableDeclaration", - "scope": 737, - "src": "8963:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 695, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8963:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 698, - "mutability": "mutable", - "name": "round", - "nameLocation": "8986:5:0", - "nodeType": "VariableDeclaration", - "scope": 737, - "src": "8979:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 697, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "8979:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "8962:30:0" - }, - "returnParameters": { - "id": 707, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 706, - "mutability": "mutable", - "name": "taskround", - "nameLocation": "9103:9:0", - "nodeType": "VariableDeclaration", - "scope": 737, - "src": "9073:39:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct" - }, - "typeName": { - "id": 705, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 704, - "name": "ExtCallTaskRoundStruct", - "nodeType": "IdentifierPath", - "referencedDeclaration": 97, - "src": "9073:22:0" - }, - "referencedDeclaration": 97, - "src": "9073:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct" - } - }, - "visibility": "internal" - } - ], - "src": "9072:41:0" - }, - "scope": 1927, - "src": "8941:508:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 812, - "nodeType": "Block", - "src": "9828:431:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 756, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "9846:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "9846:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9861:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "9846:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4d7573742070726f7669646520616464726573736573", - "id": 760, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9864:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171", - "typeString": "literal_string \"Must provide addresses\"" - }, - "value": "Must provide addresses" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171", - "typeString": "literal_string \"Must provide addresses\"" - } - ], - "id": 755, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9838:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9838:51:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 762, - "nodeType": "ExpressionStatement", - "src": "9838:51:0" - }, - { - "assignments": [ - 765 - ], - "declarations": [ - { - "constant": false, - "id": 765, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "9917:8:0", - "nodeType": "VariableDeclaration", - "scope": 812, - "src": "9899:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 764, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 763, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "9899:9:0" - }, - "referencedDeclaration": 85, - "src": "9899:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 771, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 766, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "9928:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 768, - "indexExpression": { - "id": 767, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "9939:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9928:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 770, - "indexExpression": { - "id": 769, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "9947:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9928:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9899:54:0" - }, - { - "body": { - "id": 797, - "nodeType": "Block", - "src": "10006:148:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 793, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "expression": { - "id": 784, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 765, - "src": "10045:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 785, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "10045:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 789, - "indexExpression": { - "baseExpression": { - "id": 786, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "10065:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 788, - "indexExpression": { - "id": 787, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10071:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10065:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10045:29:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 790, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "pk1", - "nodeType": "MemberAccess", - "referencedDeclaration": 64, - "src": "10045:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "10045:40:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 792, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10088:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "10045:44:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616e646964617465206d757374206578697374", - "id": 794, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10107:22:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - }, - "value": "Candidate must exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - } - ], - "id": 783, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10020:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10020:123:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 796, - "nodeType": "ExpressionStatement", - "src": "10020:123:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 779, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 776, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "9983:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 777, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "9987:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 778, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "9987:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9983:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 798, - "initializationExpression": { - "assignments": [ - 773 - ], - "declarations": [ - { - "constant": false, - "id": 773, - "mutability": "mutable", - "name": "i", - "nameLocation": "9976:1:0", - "nodeType": "VariableDeclaration", - "scope": 798, - "src": "9968:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 772, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9968:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 775, - "initialValue": { - "hexValue": "30", - "id": 774, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9980:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9968:13:0" - }, - "loopExpression": { - "expression": { - "id": 781, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "10001:3:0", - "subExpression": { - "id": 780, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10001:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 782, - "nodeType": "ExpressionStatement", - "src": "10001:3:0" - }, - "nodeType": "ForStatement", - "src": "9963:191:0" - }, - { - "expression": { - "id": 804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 799, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 765, - "src": "10163:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 801, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "10163:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 802, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "10181:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 803, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "10181:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "10163:37:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 805, - "nodeType": "ExpressionStatement", - "src": "10163:37:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 807, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "10231:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 808, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "10239:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 809, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "10246:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - ], - "id": 806, - "name": "PartnerSelected", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 147, - "src": "10215:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address[] memory)" - } - }, - "id": 810, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10215:37:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 811, - "nodeType": "EmitStatement", - "src": "10210:42:0" - } - ] - }, - "documentation": { - "id": 738, - "nodeType": "StructuredDocumentation", - "src": "9455:204:0", - "text": " @dev called by task developer, randomly choose candidates to be computation nodes\n @dev clients now should start secret sharing phase\n @param addrs selected client addresses" - }, - "functionSelector": "41e865cb", - "id": 813, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 748, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "9793:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 749, - "kind": "modifierInvocation", - "modifierName": { - "id": 747, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "9783:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "9783:17:0" - }, - { - "arguments": [ - { - "id": 751, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "9813:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 752, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "9821:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 753, - "kind": "modifierInvocation", - "modifierName": { - "id": 750, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "9801:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "9801:26:0" - } - ], - "name": "selectCandidates", - "nameLocation": "9673:16:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 746, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 740, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "9707:6:0", - "nodeType": "VariableDeclaration", - "scope": 813, - "src": "9699:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 739, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "9699:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 742, - "mutability": "mutable", - "name": "round", - "nameLocation": "9730:5:0", - "nodeType": "VariableDeclaration", - "scope": 813, - "src": "9723:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 741, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "9723:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 745, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "9764:5:0", - "nodeType": "VariableDeclaration", - "scope": 813, - "src": "9745:24:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 743, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9745:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 744, - "nodeType": "ArrayTypeName", - "src": "9745:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "9689:86:0" - }, - "returnParameters": { - "id": 754, - "nodeType": "ParameterList", - "parameters": [], - "src": "9828:0:0" - }, - "scope": 1927, - "src": "9664:595:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 864, - "nodeType": "Block", - "src": "10956:274:0", - "statements": [ - { - "assignments": [ - 837 - ], - "declarations": [ - { - "constant": false, - "id": 837, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "10998:5:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "10966:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 835, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 834, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "10966:21:0" - }, - "referencedDeclaration": 49, - "src": "10966:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 836, - "nodeType": "ArrayTypeName", - "src": "10966:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 841, - "initialValue": { - "baseExpression": { - "id": 838, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "11006:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 840, - "indexExpression": { - "id": 839, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "11028:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11006:29:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "10966:69:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 843, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 837, - "src": "11053:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11053:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 845, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "11069:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "11053:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 847, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11076:28:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - }, - "value": "The Task Round Must exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - } - ], - "id": 842, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11045:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11045:60:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 849, - "nodeType": "ExpressionStatement", - "src": "11045:60:0" - }, - { - "assignments": [ - 852 - ], - "declarations": [ - { - "constant": false, - "id": 852, - "mutability": "mutable", - "name": "cmmt", - "nameLocation": "11145:4:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "11115:34:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 851, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 850, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "11115:21:0" - }, - "referencedDeclaration": 49, - "src": "11115:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 856, - "initialValue": { - "baseExpression": { - "id": 853, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 837, - "src": "11152:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 855, - "indexExpression": { - "id": 854, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "11158:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11152:12:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11115:49:0" - }, - { - "expression": { - "id": 862, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 857, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 831, - "src": "11174:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "expression": { - "id": 858, - "name": "cmmt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 852, - "src": "11187:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 859, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "weightCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "11187:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes storage ref)" - } - }, - "id": 861, - "indexExpression": { - "id": 860, - "name": "clientaddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "11209:13:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11187:36:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "src": "11174:49:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 863, - "nodeType": "ExpressionStatement", - "src": "11174:49:0" - } - ] - }, - "documentation": { - "id": 814, - "nodeType": "StructuredDocumentation", - "src": "10265:426:0", - "text": " @dev called by task developer, get commitments from blockchain\n @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n @param taskId taskId\n @param clientaddress the client that publish the commitments\n @param round the round of that commitment\n @return commitment commitment data" - }, - "functionSelector": "e36bb28c", - "id": 865, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 823, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "10856:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 824, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "10864:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 825, - "kind": "modifierInvocation", - "modifierName": { - "id": 822, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "10844:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "10844:26:0" - }, - { - "arguments": [ - { - "id": 827, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "10895:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 828, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "10903:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 829, - "kind": "modifierInvocation", - "modifierName": { - "id": 826, - "name": "roundcmmtExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 265, - "src": "10879:15:0" - }, - "nodeType": "ModifierInvocation", - "src": "10879:30:0" - } - ], - "name": "getResultCommitment", - "nameLocation": "10705:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 821, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 816, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "10742:6:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10734:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 815, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "10734:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 818, - "mutability": "mutable", - "name": "clientaddress", - "nameLocation": "10766:13:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10758:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 817, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10758:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 820, - "mutability": "mutable", - "name": "round", - "nameLocation": "10796:5:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10789:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 819, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "10789:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "10724:83:0" - }, - "returnParameters": { - "id": 832, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 831, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "10940:10:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10927:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 830, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10927:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "10926:25:0" - }, - "scope": 1927, - "src": "10696:534:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 956, - "nodeType": "Block", - "src": "11576:430:0", - "statements": [ - { - "assignments": [ - 894 - ], - "declarations": [ - { - "constant": false, - "id": 894, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "11618:5:0", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11586:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 892, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 891, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "11586:21:0" - }, - "referencedDeclaration": 49, - "src": "11586:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 893, - "nodeType": "ArrayTypeName", - "src": "11586:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 898, - "initialValue": { - "baseExpression": { - "id": 895, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "11626:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 897, - "indexExpression": { - "id": 896, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 868, - "src": "11648:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11626:29:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11586:69:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 903, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 900, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "11673:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11673:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 902, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11689:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "11673:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 904, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11696:28:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - }, - "value": "The Task Round Must exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - } - ], - "id": 899, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11665:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 905, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11665:60:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 906, - "nodeType": "ExpressionStatement", - "src": "11665:60:0" - }, - { - "assignments": [ - 909 - ], - "declarations": [ - { - "constant": false, - "id": 909, - "mutability": "mutable", - "name": "cmmt", - "nameLocation": "11765:4:0", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11735:34:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 908, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 907, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "11735:21:0" - }, - "referencedDeclaration": 49, - "src": "11735:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 913, - "initialValue": { - "baseExpression": { - "id": 910, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "11772:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 912, - "indexExpression": { - "id": 911, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11778:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11772:12:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11735:49:0" - }, - { - "assignments": [ - 918 - ], - "declarations": [ - { - "constant": false, - "id": 918, - "mutability": "mutable", - "name": "ssdatas", - "nameLocation": "11810:7:0", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11794:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData[]" - }, - "typeName": { - "baseType": { - "id": 916, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 915, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "11794:6:0" - }, - "referencedDeclaration": 106, - "src": "11794:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - }, - "id": 917, - "nodeType": "ArrayTypeName", - "src": "11794:8:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.SSData[]" - } - }, - "visibility": "internal" - } - ], - "id": 926, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 923, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "11833:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 924, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11833:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 922, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "11820:12:0", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct HFLContract.SSData memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 920, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 919, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "11824:6:0" - }, - "referencedDeclaration": 106, - "src": "11824:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - }, - "id": 921, - "nodeType": "ArrayTypeName", - "src": "11824:8:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.SSData[]" - } - } - }, - "id": 925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11820:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11794:54:0" - }, - { - "body": { - "id": 952, - "nodeType": "Block", - "src": "11903:73:0", - "statements": [ - { - "expression": { - "id": 950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 938, - "name": "ssdatas", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "11917:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData memory[] memory" - } - }, - "id": 940, - "indexExpression": { - "id": 939, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11925:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11917:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", - "typeString": "struct HFLContract.SSData memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "components": [ - { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 941, - "name": "cmmt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 909, - "src": "11931:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 942, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "11931:11:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 946, - "indexExpression": { - "baseExpression": { - "id": 943, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "11943:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 945, - "indexExpression": { - "id": 944, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11951:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11943:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11931:23:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 948, - "indexExpression": { - "id": 947, - "name": "receiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 875, - "src": "11955:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11931:33:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - } - ], - "id": 949, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "11930:35:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "src": "11917:48:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", - "typeString": "struct HFLContract.SSData memory" - } - }, - "id": 951, - "nodeType": "ExpressionStatement", - "src": "11917:48:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 934, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 931, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11878:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 932, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "11882:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 933, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11882:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11878:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 953, - "initializationExpression": { - "assignments": [ - 928 - ], - "declarations": [ - { - "constant": false, - "id": 928, - "mutability": "mutable", - "name": "i", - "nameLocation": "11871:1:0", - "nodeType": "VariableDeclaration", - "scope": 953, - "src": "11863:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 927, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11863:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 930, - "initialValue": { - "hexValue": "30", - "id": 929, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11875:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "11863:13:0" - }, - "loopExpression": { - "expression": { - "id": 936, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "11898:3:0", - "subExpression": { - "id": 935, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11898:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 937, - "nodeType": "ExpressionStatement", - "src": "11898:3:0" - }, - "nodeType": "ForStatement", - "src": "11858:118:0" - }, - { - "expression": { - "id": 954, - "name": "ssdatas", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "11992:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData memory[] memory" - } - }, - "functionReturnParameters": 889, - "id": 955, - "nodeType": "Return", - "src": "11985:14:0" - } - ] - }, - "documentation": { - "id": 866, - "nodeType": "StructuredDocumentation", - "src": "11236:50:0", - "text": " @dev called by any participants" - }, - "functionSelector": "5ed14248", - "id": 957, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 878, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 868, - "src": "11484:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 879, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11492:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 880, - "kind": "modifierInvocation", - "modifierName": { - "id": 877, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "11472:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "11472:26:0" - }, - { - "arguments": [ - { - "id": 882, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 868, - "src": "11523:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 883, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11531:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 884, - "kind": "modifierInvocation", - "modifierName": { - "id": 881, - "name": "roundcmmtExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 265, - "src": "11507:15:0" - }, - "nodeType": "ModifierInvocation", - "src": "11507:30:0" - } - ], - "name": "getSecretSharingDatas", - "nameLocation": "11300:21:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 876, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 868, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "11339:6:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11331:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 867, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "11331:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 870, - "mutability": "mutable", - "name": "round", - "nameLocation": "11362:5:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11355:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 869, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "11355:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 873, - "mutability": "mutable", - "name": "senders", - "nameLocation": "11396:7:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11377:26:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 871, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11377:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 872, - "nodeType": "ArrayTypeName", - "src": "11377:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 875, - "mutability": "mutable", - "name": "receiver", - "nameLocation": "11421:8:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11413:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 874, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11413:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "11321:114:0" - }, - "returnParameters": { - "id": 889, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 888, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11555:15:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData[]" - }, - "typeName": { - "baseType": { - "id": 886, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 885, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "11555:6:0" - }, - "referencedDeclaration": 106, - "src": "11555:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - }, - "id": 887, - "nodeType": "ArrayTypeName", - "src": "11555:8:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.SSData[]" - } - }, - "visibility": "internal" - } - ], - "src": "11554:17:0" - }, - "scope": 1927, - "src": "11291:715:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1033, - "nodeType": "Block", - "src": "12603:525:0", - "statements": [ - { - "assignments": [ - 977 - ], - "declarations": [ - { - "constant": false, - "id": 977, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "12631:8:0", - "nodeType": "VariableDeclaration", - "scope": 1033, - "src": "12613:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 976, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 975, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "12613:9:0" - }, - "referencedDeclaration": 85, - "src": "12613:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 983, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 978, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "12642:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 980, - "indexExpression": { - "id": 979, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "12653:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12642:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 982, - "indexExpression": { - "id": 981, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 962, - "src": "12661:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12642:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12613:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 989, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 985, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 977, - "src": "12698:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 986, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "12698:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 987, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "12717:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 988, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Calculating", - "nodeType": "MemberAccess", - "referencedDeclaration": 11, - "src": "12717:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "12698:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", - "id": 990, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12754:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850", - "typeString": "literal_string \"Calculating has not started\"" - }, - "value": "Calculating has not started" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850", - "typeString": "literal_string \"Calculating has not started\"" - } - ], - "id": 984, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12677:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 991, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12677:116:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 992, - "nodeType": "ExpressionStatement", - "src": "12677:116:0" - }, - { - "expression": { - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 993, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 977, - "src": "12803:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 995, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "12803:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 996, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "12821:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 997, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Aggregating", - "nodeType": "MemberAccess", - "referencedDeclaration": 12, - "src": "12821:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "12803:41:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 999, - "nodeType": "ExpressionStatement", - "src": "12803:41:0" - }, - { - "body": { - "id": 1025, - "nodeType": "Block", - "src": "12905:156:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1021, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "expression": { - "id": 1012, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 977, - "src": "12944:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1013, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "12944:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 1017, - "indexExpression": { - "baseExpression": { - "id": 1014, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "12964:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1016, - "indexExpression": { - "id": 1015, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "12978:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12964:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12944:37:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 1018, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "pk1", - "nodeType": "MemberAccess", - "referencedDeclaration": 64, - "src": "12944:41:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1019, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12944:48:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1020, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12995:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12944:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616e646964617465206d757374206578697374", - "id": 1022, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13014:22:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - }, - "value": "Candidate must exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - } - ], - "id": 1011, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12919:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12919:131:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1024, - "nodeType": "ExpressionStatement", - "src": "12919:131:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1007, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1004, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "12874:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1005, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "12878:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12878:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12874:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1026, - "initializationExpression": { - "assignments": [ - 1001 - ], - "declarations": [ - { - "constant": false, - "id": 1001, - "mutability": "mutable", - "name": "i", - "nameLocation": "12867:1:0", - "nodeType": "VariableDeclaration", - "scope": 1026, - "src": "12859:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1000, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12859:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1003, - "initialValue": { - "hexValue": "30", - "id": 1002, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12871:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "12859:13:0" - }, - "loopExpression": { - "expression": { - "id": 1009, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "12900:3:0", - "subExpression": { - "id": 1008, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "12900:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1010, - "nodeType": "ExpressionStatement", - "src": "12900:3:0" - }, - "nodeType": "ForStatement", - "src": "12854:207:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1028, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "13092:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1029, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 962, - "src": "13100:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 1030, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "13107:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - ], - "id": 1027, - "name": "AggregateStarted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "13075:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address[] memory)" - } - }, - "id": 1031, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13075:46:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1032, - "nodeType": "EmitStatement", - "src": "13070:51:0" - } - ] - }, - "documentation": { - "id": 958, - "nodeType": "StructuredDocumentation", - "src": "12012:416:0", - "text": " @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n @param taskId taskId\n @param round the task round\n @param onlineClients clients that has transfered gradient to task developer" - }, - "functionSelector": "4956219b", - "id": 1034, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 968, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "12568:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 969, - "kind": "modifierInvocation", - "modifierName": { - "id": 967, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "12558:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "12558:17:0" - }, - { - "arguments": [ - { - "id": 971, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "12588:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 972, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 962, - "src": "12596:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 973, - "kind": "modifierInvocation", - "modifierName": { - "id": 970, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "12576:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "12576:26:0" - } - ], - "name": "startAggregate", - "nameLocation": "12442:14:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 966, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 960, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "12474:6:0", - "nodeType": "VariableDeclaration", - "scope": 1034, - "src": "12466:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 959, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "12466:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 962, - "mutability": "mutable", - "name": "round", - "nameLocation": "12497:5:0", - "nodeType": "VariableDeclaration", - "scope": 1034, - "src": "12490:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 961, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "12490:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 965, - "mutability": "mutable", - "name": "onlineClients", - "nameLocation": "12531:13:0", - "nodeType": "VariableDeclaration", - "scope": 1034, - "src": "12512:32:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 963, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12512:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 964, - "nodeType": "ArrayTypeName", - "src": "12512:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "12456:94:0" - }, - "returnParameters": { - "id": 974, - "nodeType": "ParameterList", - "parameters": [], - "src": "12603:0:0" - }, - "scope": 1927, - "src": "12433:695:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1083, - "nodeType": "Block", - "src": "13534:307:0", - "statements": [ - { - "assignments": [ - 1054 - ], - "declarations": [ - { - "constant": false, - "id": 1054, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "13562:8:0", - "nodeType": "VariableDeclaration", - "scope": 1083, - "src": "13544:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1053, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1052, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "13544:9:0" - }, - "referencedDeclaration": 85, - "src": "13544:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1060, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1055, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "13573:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1057, - "indexExpression": { - "id": 1056, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13584:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13573:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1059, - "indexExpression": { - "id": 1058, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "13592:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13573:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13544:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1066, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1062, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "13629:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1063, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "13629:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1064, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "13648:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1065, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "13648:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "13629:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", - "id": 1067, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13681:31:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2", - "typeString": "literal_string \"This round is not running now\"" - }, - "value": "This round is not running now" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2", - "typeString": "literal_string \"This round is not running now\"" - } - ], - "id": 1061, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13608:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1068, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13608:114:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1069, - "nodeType": "ExpressionStatement", - "src": "13608:114:0" - }, - { - "expression": { - "id": 1075, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1070, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "13732:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1072, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "13732:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1073, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "13750:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1074, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Calculating", - "nodeType": "MemberAccess", - "referencedDeclaration": 11, - "src": "13750:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "13732:41:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 1076, - "nodeType": "ExpressionStatement", - "src": "13732:41:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1078, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13805:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1079, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "13813:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 1080, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "13820:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - ], - "id": 1077, - "name": "CalculateStarted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "13788:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address[] memory)" - } - }, - "id": 1081, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13788:46:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1082, - "nodeType": "EmitStatement", - "src": "13783:51:0" - } - ] - }, - "documentation": { - "id": 1035, - "nodeType": "StructuredDocumentation", - "src": "13134:225:0", - "text": " @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n @param taskId taskId\n @param round the task round" - }, - "functionSelector": "abf2013a", - "id": 1084, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1045, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13499:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 1046, - "kind": "modifierInvocation", - "modifierName": { - "id": 1044, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "13489:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "13489:17:0" - }, - { - "arguments": [ - { - "id": 1048, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13519:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1049, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "13527:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1050, - "kind": "modifierInvocation", - "modifierName": { - "id": 1047, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "13507:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "13507:26:0" - } - ], - "name": "startCalculate", - "nameLocation": "13373:14:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1043, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1037, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "13405:6:0", - "nodeType": "VariableDeclaration", - "scope": 1084, - "src": "13397:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1036, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13397:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1039, - "mutability": "mutable", - "name": "round", - "nameLocation": "13428:5:0", - "nodeType": "VariableDeclaration", - "scope": 1084, - "src": "13421:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1038, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "13421:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1042, - "mutability": "mutable", - "name": "onlineClients", - "nameLocation": "13462:13:0", - "nodeType": "VariableDeclaration", - "scope": 1084, - "src": "13443:32:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1040, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13443:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1041, - "nodeType": "ArrayTypeName", - "src": "13443:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "13387:94:0" - }, - "returnParameters": { - "id": 1051, - "nodeType": "ParameterList", - "parameters": [], - "src": "13534:0:0" - }, - "scope": 1927, - "src": "13364:477:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1120, - "nodeType": "Block", - "src": "14104:157:0", - "statements": [ - { - "assignments": [ - 1101 - ], - "declarations": [ - { - "constant": false, - "id": 1101, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "14132:8:0", - "nodeType": "VariableDeclaration", - "scope": 1120, - "src": "14114:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1100, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1099, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "14114:9:0" - }, - "referencedDeclaration": 85, - "src": "14114:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1107, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1102, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "14143:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1104, - "indexExpression": { - "id": 1103, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14154:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14143:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1106, - "indexExpression": { - "id": 1105, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "14162:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14143:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "14114:54:0" - }, - { - "expression": { - "id": 1113, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1108, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1101, - "src": "14178:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1110, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "14178:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1111, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "14196:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1112, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Finished", - "nodeType": "MemberAccess", - "referencedDeclaration": 13, - "src": "14196:20:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "14178:38:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 1114, - "nodeType": "ExpressionStatement", - "src": "14178:38:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1116, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14240:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1117, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "14248:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 1115, - "name": "RoundEnd", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "14231:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", - "typeString": "function (bytes32,uint64)" - } - }, - "id": 1118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14231:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1119, - "nodeType": "EmitStatement", - "src": "14226:28:0" - } - ] - }, - "documentation": { - "id": 1085, - "nodeType": "StructuredDocumentation", - "src": "13847:124:0", - "text": " @dev called by task developer, close round\n @param taskId taskId\n @param round the task round" - }, - "functionSelector": "01bd7269", - "id": 1121, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1092, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14057:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 1093, - "kind": "modifierInvocation", - "modifierName": { - "id": 1091, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "14047:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "14047:17:0" - }, - { - "arguments": [ - { - "id": 1095, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14085:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1096, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "14093:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1097, - "kind": "modifierInvocation", - "modifierName": { - "id": 1094, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "14073:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "14073:26:0" - } - ], - "name": "endRound", - "nameLocation": "13985:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1090, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1087, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "14002:6:0", - "nodeType": "VariableDeclaration", - "scope": 1121, - "src": "13994:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1086, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13994:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1089, - "mutability": "mutable", - "name": "round", - "nameLocation": "14017:5:0", - "nodeType": "VariableDeclaration", - "scope": 1121, - "src": "14010:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1088, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "14010:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "13993:30:0" - }, - "returnParameters": { - "id": 1098, - "nodeType": "ParameterList", - "parameters": [], - "src": "14104:0:0" - }, - "scope": 1927, - "src": "13976:285:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1216, - "nodeType": "Block", - "src": "14627:972:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1139, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1136, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "14658:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1137, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14658:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1138, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14684:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "14658:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1140, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "14705:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1141, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14705:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1142, - "name": "maxWeightCommitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "14732:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "14705:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "14658:99:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14771:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1135, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14637:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14637:192:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1147, - "nodeType": "ExpressionStatement", - "src": "14637:192:0" - }, - { - "assignments": [ - 1150 - ], - "declarations": [ - { - "constant": false, - "id": 1150, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "14857:8:0", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "14839:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1149, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1148, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "14839:9:0" - }, - "referencedDeclaration": 85, - "src": "14839:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1156, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1151, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "14868:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1153, - "indexExpression": { - "id": 1152, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "14879:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14868:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1155, - "indexExpression": { - "id": 1154, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "14887:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14868:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "14839:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1158, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1150, - "src": "14924:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1159, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "14924:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1160, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "14943:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Calculating", - "nodeType": "MemberAccess", - "referencedDeclaration": 11, - "src": "14943:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "14924:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", - "id": 1163, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14980:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835", - "typeString": "literal_string \"not in uploading phase\"" - }, - "value": "not in uploading phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835", - "typeString": "literal_string \"not in uploading phase\"" - } - ], - "id": 1157, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14903:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1164, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14903:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1165, - "nodeType": "ExpressionStatement", - "src": "14903:111:0" - }, - { - "assignments": [ - 1170 - ], - "declarations": [ - { - "constant": false, - "id": 1170, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "15056:11:0", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "15024:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1168, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1167, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "15024:21:0" - }, - "referencedDeclaration": 49, - "src": "15024:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1169, - "nodeType": "ArrayTypeName", - "src": "15024:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1174, - "initialValue": { - "baseExpression": { - "id": 1171, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "15070:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1173, - "indexExpression": { - "id": 1172, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "15105:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15070:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15024:97:0" - }, - { - "assignments": [ - 1177 - ], - "declarations": [ - { - "constant": false, - "id": 1177, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "15161:10:0", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "15131:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1176, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1175, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "15131:21:0" - }, - "referencedDeclaration": 49, - "src": "15131:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1181, - "initialValue": { - "baseExpression": { - "id": 1178, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1170, - "src": "15174:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1180, - "indexExpression": { - "id": 1179, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "15186:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15174:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15131:61:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "expression": { - "id": 1183, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "15223:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1184, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "weightCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "15223:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes storage ref)" - } - }, - "id": 1187, - "indexExpression": { - "expression": { - "id": 1185, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15251:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15251:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15223:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1188, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15223:46:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1189, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15273:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "15223:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d756c7469706c652074696d6573", - "id": 1191, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15288:47:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086", - "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" - }, - "value": "cannot upload weightCommitment multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086", - "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" - } - ], - "id": 1182, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15202:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15202:143:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1193, - "nodeType": "ExpressionStatement", - "src": "15202:143:0" - }, - { - "expression": { - "id": 1201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "expression": { - "id": 1194, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "15355:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1198, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "weightCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "15355:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes storage ref)" - } - }, - "id": 1199, - "indexExpression": { - "expression": { - "id": 1196, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15383:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15383:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "15355:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1200, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "15397:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "15355:58:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1202, - "nodeType": "ExpressionStatement", - "src": "15355:58:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1204, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "15457:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1205, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "15477:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1206, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15496:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15496:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 1210, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15528:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15520:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1208, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15520:7:0", - "typeDescriptions": {} - } - }, - "id": 1211, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15520:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "574549474854", - "id": 1212, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15544:8:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58", - "typeString": "literal_string \"WEIGHT\"" - }, - "value": "WEIGHT" - }, - { - "id": 1213, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "15566:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58", - "typeString": "literal_string \"WEIGHT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1203, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "15428:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1214, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15428:164:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1215, - "nodeType": "EmitStatement", - "src": "15423:169:0" - } - ] - }, - "documentation": { - "id": 1122, - "nodeType": "StructuredDocumentation", - "src": "14267:196:0", - "text": " @dev called by client, upload weight commitment\n @param taskId taskId\n @param round the task round\n @param resultCommitment masked model incremental commitment" - }, - "functionSelector": "ebd3e836", - "id": 1217, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1131, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "14612:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1132, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "14620:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1133, - "kind": "modifierInvocation", - "modifierName": { - "id": 1130, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "14600:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "14600:26:0" - } - ], - "name": "uploadResultCommitment", - "nameLocation": "14477:22:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1129, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1124, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "14517:6:0", - "nodeType": "VariableDeclaration", - "scope": 1217, - "src": "14509:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1123, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "14509:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1126, - "mutability": "mutable", - "name": "round", - "nameLocation": "14540:5:0", - "nodeType": "VariableDeclaration", - "scope": 1217, - "src": "14533:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1125, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "14533:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1128, - "mutability": "mutable", - "name": "resultCommitment", - "nameLocation": "14570:16:0", - "nodeType": "VariableDeclaration", - "scope": 1217, - "src": "14555:31:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1127, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "14555:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "14499:93:0" - }, - "returnParameters": { - "id": 1134, - "nodeType": "ParameterList", - "parameters": [], - "src": "14627:0:0" - }, - "scope": 1927, - "src": "14468:1131:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1368, - "nodeType": "Block", - "src": "16083:1489:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1236, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "16114:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16114:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1238, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16134:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16134:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16114:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f2073656564436f6d6d69746d656e7473206c656e677468", - "id": 1241, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16170:57:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", - "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" - }, - "value": "receivers length is not equal to seedCommitments length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", - "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" - } - ], - "id": 1235, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16093:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1242, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16093:144:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1243, - "nodeType": "ExpressionStatement", - "src": "16093:144:0" - }, - { - "body": { - "id": 1272, - "nodeType": "Block", - "src": "16300:232:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1268, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1256, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16339:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1258, - "indexExpression": { - "id": 1257, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16355:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16339:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16339:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16367:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16339:29:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1267, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1262, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16392:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1264, - "indexExpression": { - "id": 1263, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16408:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16392:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1265, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16392:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1266, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "16421:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "16392:49:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16339:102:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1269, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16459:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1255, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16314:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1270, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16314:207:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1271, - "nodeType": "ExpressionStatement", - "src": "16314:207:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1248, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16267:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1249, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16271:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1250, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16271:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16267:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1273, - "initializationExpression": { - "assignments": [ - 1245 - ], - "declarations": [ - { - "constant": false, - "id": 1245, - "mutability": "mutable", - "name": "i", - "nameLocation": "16260:1:0", - "nodeType": "VariableDeclaration", - "scope": 1273, - "src": "16252:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1244, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "16252:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1247, - "initialValue": { - "hexValue": "30", - "id": 1246, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16264:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "16252:13:0" - }, - "loopExpression": { - "expression": { - "id": 1253, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "16295:3:0", - "subExpression": { - "id": 1252, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16295:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1254, - "nodeType": "ExpressionStatement", - "src": "16295:3:0" - }, - "nodeType": "ForStatement", - "src": "16247:285:0" - }, - { - "assignments": [ - 1276 - ], - "declarations": [ - { - "constant": false, - "id": 1276, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "16559:8:0", - "nodeType": "VariableDeclaration", - "scope": 1368, - "src": "16541:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1275, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1274, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "16541:9:0" - }, - "referencedDeclaration": 85, - "src": "16541:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1282, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1277, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "16570:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1279, - "indexExpression": { - "id": 1278, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "16581:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16570:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1281, - "indexExpression": { - "id": 1280, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "16589:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16570:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16541:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1288, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1284, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1276, - "src": "16626:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1285, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "16626:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1286, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "16645:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1287, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "16645:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "16626:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1289, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16678:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - }, - "value": "not in secret sharing phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - } - ], - "id": 1283, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16605:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1290, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16605:112:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1291, - "nodeType": "ExpressionStatement", - "src": "16605:112:0" - }, - { - "assignments": [ - 1296 - ], - "declarations": [ - { - "constant": false, - "id": 1296, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "16759:11:0", - "nodeType": "VariableDeclaration", - "scope": 1368, - "src": "16727:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1294, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1293, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "16727:21:0" - }, - "referencedDeclaration": 49, - "src": "16727:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1295, - "nodeType": "ArrayTypeName", - "src": "16727:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1300, - "initialValue": { - "baseExpression": { - "id": 1297, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "16773:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1299, - "indexExpression": { - "id": 1298, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "16808:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16773:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16727:97:0" - }, - { - "assignments": [ - 1303 - ], - "declarations": [ - { - "constant": false, - "id": 1303, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "16864:10:0", - "nodeType": "VariableDeclaration", - "scope": 1368, - "src": "16834:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1302, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1301, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "16834:21:0" - }, - "referencedDeclaration": 49, - "src": "16834:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1307, - "initialValue": { - "baseExpression": { - "id": 1304, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1296, - "src": "16877:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1306, - "indexExpression": { - "id": 1305, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "16889:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16877:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16834:61:0" - }, - { - "body": { - "id": 1366, - "nodeType": "Block", - "src": "16958:608:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1332, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1320, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "16997:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1321, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "16997:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1324, - "indexExpression": { - "expression": { - "id": 1322, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17036:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17036:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16997:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1328, - "indexExpression": { - "baseExpression": { - "id": 1325, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "17048:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1327, - "indexExpression": { - "id": 1326, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17058:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17048:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16997:64:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1329, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "16997:100:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1330, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16997:128:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1331, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17129:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16997:133:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", - "id": 1333, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17148:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - }, - "value": "cannot upload seed cmmt multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - } - ], - "id": 1319, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16972:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16972:230:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1335, - "nodeType": "ExpressionStatement", - "src": "16972:230:0" - }, - { - "expression": { - "id": 1350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1336, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "17216:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1343, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "17216:30:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1344, - "indexExpression": { - "expression": { - "id": 1338, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17247:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17247:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17216:42:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1345, - "indexExpression": { - "baseExpression": { - "id": 1340, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "17259:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1342, - "indexExpression": { - "id": 1341, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17269:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17259:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17216:56:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1346, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "17216:71:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1347, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "17290:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1349, - "indexExpression": { - "id": 1348, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17323:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17290:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "17216:122:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1351, - "nodeType": "ExpressionStatement", - "src": "17216:122:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1353, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "17390:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1354, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "17414:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1355, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17437:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17437:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "baseExpression": { - "id": 1357, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "17465:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1359, - "indexExpression": { - "id": 1358, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17475:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17465:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "53454544434d4d54", - "id": 1360, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17495:10:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - "value": "SEEDCMMT" - }, - { - "baseExpression": { - "id": 1361, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "17523:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1363, - "indexExpression": { - "id": 1362, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17539:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17523:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1352, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "17357:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1364, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17357:198:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1365, - "nodeType": "EmitStatement", - "src": "17352:203:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1315, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1312, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "16925:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1313, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16929:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16929:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16925:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1367, - "initializationExpression": { - "assignments": [ - 1309 - ], - "declarations": [ - { - "constant": false, - "id": 1309, - "mutability": "mutable", - "name": "i", - "nameLocation": "16918:1:0", - "nodeType": "VariableDeclaration", - "scope": 1367, - "src": "16910:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1308, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "16910:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1311, - "initialValue": { - "hexValue": "30", - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16922:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "16910:13:0" - }, - "loopExpression": { - "expression": { - "id": 1317, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "16953:3:0", - "subExpression": { - "id": 1316, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "16953:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1318, - "nodeType": "ExpressionStatement", - "src": "16953:3:0" - }, - "nodeType": "ForStatement", - "src": "16905:661:0" - } - ] - }, - "documentation": { - "id": 1218, - "nodeType": "StructuredDocumentation", - "src": "15605:277:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param seedCommitments seedCommitments[i] is the commitment send to receivers[i]" - }, - "functionSelector": "b194c028", - "id": 1369, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1231, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "16068:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1232, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "16076:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1233, - "kind": "modifierInvocation", - "modifierName": { - "id": 1230, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "16056:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "16056:26:0" - } - ], - "name": "uploadSeedCommitment", - "nameLocation": "15896:20:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1229, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1220, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "15934:6:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "15926:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1219, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "15926:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1222, - "mutability": "mutable", - "name": "round", - "nameLocation": "15957:5:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "15950:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1221, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "15950:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1225, - "mutability": "mutable", - "name": "receivers", - "nameLocation": "15991:9:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "15972:28:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1223, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15972:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1224, - "nodeType": "ArrayTypeName", - "src": "15972:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1228, - "mutability": "mutable", - "name": "seedCommitments", - "nameLocation": "16027:15:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "16010:32:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1226, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16010:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1227, - "nodeType": "ArrayTypeName", - "src": "16010:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "15916:132:0" - }, - "returnParameters": { - "id": 1234, - "nodeType": "ParameterList", - "parameters": [], - "src": "16083:0:0" - }, - "scope": 1927, - "src": "15887:1685:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1537, - "nodeType": "Block", - "src": "17997:1484:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1392, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1388, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "18028:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18028:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1390, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18046:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18046:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18028:30:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365656473206c656e677468", - "id": 1393, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18072:45:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", - "typeString": "literal_string \"senders length is not equal to seeds length\"" - }, - "value": "senders length is not equal to seeds length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", - "typeString": "literal_string \"senders length is not equal to seeds length\"" - } - ], - "id": 1387, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18007:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18007:120:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1395, - "nodeType": "ExpressionStatement", - "src": "18007:120:0" - }, - { - "body": { - "id": 1424, - "nodeType": "Block", - "src": "18180:192:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1408, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18219:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1410, - "indexExpression": { - "id": 1409, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18225:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18219:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18219:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1412, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18237:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18219:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1414, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18242:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1416, - "indexExpression": { - "id": 1415, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18248:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18242:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18242:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1418, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "18261:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "18242:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18219:62:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1421, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18299:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1407, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18194:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18194:167:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1423, - "nodeType": "ExpressionStatement", - "src": "18194:167:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1400, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18157:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1401, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18161:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1402, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18161:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18157:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1425, - "initializationExpression": { - "assignments": [ - 1397 - ], - "declarations": [ - { - "constant": false, - "id": 1397, - "mutability": "mutable", - "name": "i", - "nameLocation": "18150:1:0", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "18142:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1396, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "18142:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1399, - "initialValue": { - "hexValue": "30", - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18154:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "18142:13:0" - }, - "loopExpression": { - "expression": { - "id": 1405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "18175:3:0", - "subExpression": { - "id": 1404, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18175:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1406, - "nodeType": "ExpressionStatement", - "src": "18175:3:0" - }, - "nodeType": "ForStatement", - "src": "18137:235:0" - }, - { - "assignments": [ - 1428 - ], - "declarations": [ - { - "constant": false, - "id": 1428, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "18399:8:0", - "nodeType": "VariableDeclaration", - "scope": 1537, - "src": "18381:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1427, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1426, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "18381:9:0" - }, - "referencedDeclaration": 85, - "src": "18381:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1434, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1429, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "18410:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1431, - "indexExpression": { - "id": 1430, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "18421:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18410:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1433, - "indexExpression": { - "id": 1432, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "18429:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18410:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18381:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1436, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "18466:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1437, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "18466:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1438, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "18485:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1439, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Aggregating", - "nodeType": "MemberAccess", - "referencedDeclaration": 12, - "src": "18485:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "18466:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18522:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - }, - "value": "not in upload ss phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - } - ], - "id": 1435, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18445:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18445:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1443, - "nodeType": "ExpressionStatement", - "src": "18445:111:0" - }, - { - "assignments": [ - 1448 - ], - "declarations": [ - { - "constant": false, - "id": 1448, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "18598:11:0", - "nodeType": "VariableDeclaration", - "scope": 1537, - "src": "18566:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1446, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1445, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "18566:21:0" - }, - "referencedDeclaration": 49, - "src": "18566:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1447, - "nodeType": "ArrayTypeName", - "src": "18566:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1452, - "initialValue": { - "baseExpression": { - "id": 1449, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "18612:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1451, - "indexExpression": { - "id": 1450, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "18647:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18612:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18566:97:0" - }, - { - "assignments": [ - 1455 - ], - "declarations": [ - { - "constant": false, - "id": 1455, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "18703:10:0", - "nodeType": "VariableDeclaration", - "scope": 1537, - "src": "18673:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1454, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1453, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "18673:21:0" - }, - "referencedDeclaration": 49, - "src": "18673:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1459, - "initialValue": { - "baseExpression": { - "id": 1456, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "18716:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1458, - "indexExpression": { - "id": 1457, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "18728:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18716:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18673:61:0" - }, - { - "body": { - "id": 1535, - "nodeType": "Block", - "src": "18787:688:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1484, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1472, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "18826:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1473, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "18826:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1477, - "indexExpression": { - "baseExpression": { - "id": 1474, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "18865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1476, - "indexExpression": { - "id": 1475, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "18873:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18865:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18826:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1480, - "indexExpression": { - "expression": { - "id": 1478, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "18877:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1479, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "18877:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18826:62:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1481, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "18826:98:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1482, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18826:126:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1483, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18955:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18826:130:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1485, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18974:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1471, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18801:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18801:217:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1487, - "nodeType": "ExpressionStatement", - "src": "18801:217:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1489, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "19057:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1490, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "19057:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1494, - "indexExpression": { - "baseExpression": { - "id": 1491, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "19075:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1493, - "indexExpression": { - "id": 1492, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19083:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19075:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19057:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1497, - "indexExpression": { - "expression": { - "id": 1495, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19087:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19087:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19057:41:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1498, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "19057:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "19057:58:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1500, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19119:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "19057:63:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1502, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19138:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1488, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "19032:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19032:155:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1504, - "nodeType": "ExpressionStatement", - "src": "19032:155:0" - }, - { - "expression": { - "id": 1519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1505, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "19201:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "19201:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1513, - "indexExpression": { - "baseExpression": { - "id": 1507, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "19219:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1509, - "indexExpression": { - "id": 1508, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19227:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19219:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19201:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1514, - "indexExpression": { - "expression": { - "id": 1510, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19231:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1511, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19231:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19201:41:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1515, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "19201:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1516, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "19255:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1518, - "indexExpression": { - "id": 1517, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19261:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19255:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "19201:62:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1520, - "nodeType": "ExpressionStatement", - "src": "19201:62:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1522, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "19315:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1523, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "19339:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "baseExpression": { - "id": 1524, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "19362:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1526, - "indexExpression": { - "id": 1525, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19370:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19362:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1527, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19390:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19390:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "53454544", - "id": 1529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19418:6:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - "value": "SEED" - }, - { - "baseExpression": { - "id": 1530, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "19442:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1532, - "indexExpression": { - "id": 1531, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19448:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19442:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1521, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "19282:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1533, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19282:182:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1534, - "nodeType": "EmitStatement", - "src": "19277:187:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1464, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "18764:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1465, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18768:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18768:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18764:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1536, - "initializationExpression": { - "assignments": [ - 1461 - ], - "declarations": [ - { - "constant": false, - "id": 1461, - "mutability": "mutable", - "name": "i", - "nameLocation": "18757:1:0", - "nodeType": "VariableDeclaration", - "scope": 1536, - "src": "18749:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1460, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "18749:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1463, - "initialValue": { - "hexValue": "30", - "id": 1462, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18761:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "18749:13:0" - }, - "loopExpression": { - "expression": { - "id": 1469, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "18782:3:0", - "subExpression": { - "id": 1468, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "18782:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1470, - "nodeType": "ExpressionStatement", - "src": "18782:3:0" - }, - "nodeType": "ForStatement", - "src": "18744:731:0" - } - ] - }, - "documentation": { - "id": 1370, - "nodeType": "StructuredDocumentation", - "src": "17578:240:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param seeds seeds[i] is the seed send by senders[i]" - }, - "functionSelector": "1fd38b83", - "id": 1538, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1383, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "17982:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1384, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "17990:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1385, - "kind": "modifierInvocation", - "modifierName": { - "id": 1382, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "17970:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "17970:26:0" - } - ], - "name": "uploadSeed", - "nameLocation": "17832:10:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1381, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1372, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "17860:6:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17852:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1371, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "17852:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1374, - "mutability": "mutable", - "name": "round", - "nameLocation": "17883:5:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17876:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1373, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "17876:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1377, - "mutability": "mutable", - "name": "senders", - "nameLocation": "17917:7:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17898:26:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1375, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17898:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1376, - "nodeType": "ArrayTypeName", - "src": "17898:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1380, - "mutability": "mutable", - "name": "seeds", - "nameLocation": "17951:5:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17934:22:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1378, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17934:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1379, - "nodeType": "ArrayTypeName", - "src": "17934:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "17842:120:0" - }, - "returnParameters": { - "id": 1386, - "nodeType": "ParameterList", - "parameters": [], - "src": "17997:0:0" - }, - "scope": 1927, - "src": "17823:1658:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1689, - "nodeType": "Block", - "src": "19983:1536:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1557, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "20014:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1558, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20014:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1559, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20034:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1560, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20034:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20014:47:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f207365637265744b6579436f6d6d69746d656e7473206c656e677468", - "id": 1562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20075:62:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", - "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" - }, - "value": "receivers length is not equal to secretKeyCommitments length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", - "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" - } - ], - "id": 1556, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "19993:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1563, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19993:154:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1564, - "nodeType": "ExpressionStatement", - "src": "19993:154:0" - }, - { - "body": { - "id": 1593, - "nodeType": "Block", - "src": "20215:242:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1582, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1577, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20254:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1579, - "indexExpression": { - "id": 1578, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20275:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20254:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20254:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20287:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20254:34:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1583, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20312:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1585, - "indexExpression": { - "id": 1584, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20333:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20312:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20312:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1587, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "20346:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "20312:54:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "20254:112:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20384:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1576, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20229:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20229:217:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1592, - "nodeType": "ExpressionStatement", - "src": "20229:217:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1569, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20177:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1570, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20181:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1571, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20181:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20177:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1594, - "initializationExpression": { - "assignments": [ - 1566 - ], - "declarations": [ - { - "constant": false, - "id": 1566, - "mutability": "mutable", - "name": "i", - "nameLocation": "20170:1:0", - "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20162:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1565, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "20162:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1568, - "initialValue": { - "hexValue": "30", - "id": 1567, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20174:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "20162:13:0" - }, - "loopExpression": { - "expression": { - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "20210:3:0", - "subExpression": { - "id": 1573, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20210:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1575, - "nodeType": "ExpressionStatement", - "src": "20210:3:0" - }, - "nodeType": "ForStatement", - "src": "20157:300:0" - }, - { - "assignments": [ - 1597 - ], - "declarations": [ - { - "constant": false, - "id": 1597, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "20484:8:0", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "20466:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1596, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1595, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "20466:9:0" - }, - "referencedDeclaration": 85, - "src": "20466:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1603, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1598, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "20495:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1600, - "indexExpression": { - "id": 1599, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "20506:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20495:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1602, - "indexExpression": { - "id": 1601, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "20514:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20495:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20466:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1605, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1597, - "src": "20551:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1606, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "20551:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1607, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "20570:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "20570:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "20551:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1610, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20603:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - }, - "value": "not in secret sharing phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - } - ], - "id": 1604, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20530:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20530:112:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1612, - "nodeType": "ExpressionStatement", - "src": "20530:112:0" - }, - { - "assignments": [ - 1617 - ], - "declarations": [ - { - "constant": false, - "id": 1617, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "20684:11:0", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "20652:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1615, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1614, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "20652:21:0" - }, - "referencedDeclaration": 49, - "src": "20652:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1616, - "nodeType": "ArrayTypeName", - "src": "20652:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1621, - "initialValue": { - "baseExpression": { - "id": 1618, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "20698:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1620, - "indexExpression": { - "id": 1619, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "20733:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20698:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20652:97:0" - }, - { - "assignments": [ - 1624 - ], - "declarations": [ - { - "constant": false, - "id": 1624, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "20789:10:0", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "20759:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1623, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1622, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "20759:21:0" - }, - "referencedDeclaration": 49, - "src": "20759:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1628, - "initialValue": { - "baseExpression": { - "id": 1625, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1617, - "src": "20802:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1627, - "indexExpression": { - "id": 1626, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "20814:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20802:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20759:61:0" - }, - { - "body": { - "id": 1687, - "nodeType": "Block", - "src": "20888:625:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1653, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1641, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1624, - "src": "20927:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1642, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "20927:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1645, - "indexExpression": { - "expression": { - "id": 1643, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20966:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20966:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20927:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1649, - "indexExpression": { - "baseExpression": { - "id": 1646, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "20978:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1648, - "indexExpression": { - "id": 1647, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "20988:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20978:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20927:64:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1650, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 105, - "src": "20927:109:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20927:137:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21068:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20927:142:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", - "id": 1654, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21087:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - }, - "value": "cannot upload seed cmmt multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - } - ], - "id": 1640, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20902:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20902:239:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1656, - "nodeType": "ExpressionStatement", - "src": "20902:239:0" - }, - { - "expression": { - "id": 1671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1657, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1624, - "src": "21155:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1664, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "21155:30:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1665, - "indexExpression": { - "expression": { - "id": 1659, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "21186:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "21186:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21155:42:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1666, - "indexExpression": { - "baseExpression": { - "id": 1661, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "21198:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1663, - "indexExpression": { - "id": 1662, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21208:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21198:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21155:56:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1667, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 105, - "src": "21155:97:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1668, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "21255:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1670, - "indexExpression": { - "id": 1669, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21276:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21255:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "21155:123:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1672, - "nodeType": "ExpressionStatement", - "src": "21155:123:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1674, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "21330:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1675, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "21354:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1676, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "21377:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "21377:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "baseExpression": { - "id": 1678, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "21405:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1680, - "indexExpression": { - "id": 1679, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21415:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21405:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "534b4d41534b434d4d54", - "id": 1681, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21435:12:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - "value": "SKMASKCMMT" - }, - { - "baseExpression": { - "id": 1682, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "21465:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1684, - "indexExpression": { - "id": 1683, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21486:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21465:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1673, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "21297:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1685, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21297:205:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1686, - "nodeType": "EmitStatement", - "src": "21292:210:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1633, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "20850:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1634, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20854:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1635, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20854:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20850:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1688, - "initializationExpression": { - "assignments": [ - 1630 - ], - "declarations": [ - { - "constant": false, - "id": 1630, - "mutability": "mutable", - "name": "i", - "nameLocation": "20843:1:0", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "20835:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1629, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "20835:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1632, - "initialValue": { - "hexValue": "30", - "id": 1631, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20847:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "20835:13:0" - }, - "loopExpression": { - "expression": { - "id": 1638, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "20883:3:0", - "subExpression": { - "id": 1637, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "20883:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1639, - "nodeType": "ExpressionStatement", - "src": "20883:3:0" - }, - "nodeType": "ForStatement", - "src": "20830:683:0" - } - ] - }, - "documentation": { - "id": 1539, - "nodeType": "StructuredDocumentation", - "src": "19487:285:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i]" - }, - "functionSelector": "e49c9d43", - "id": 1690, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1552, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "19968:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1553, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "19976:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1554, - "kind": "modifierInvocation", - "modifierName": { - "id": 1551, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "19956:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "19956:26:0" - } - ], - "name": "uploadSecretKeyCommitment", - "nameLocation": "19786:25:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1550, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1541, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "19829:6:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19821:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1540, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "19821:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1543, - "mutability": "mutable", - "name": "round", - "nameLocation": "19852:5:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19845:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1542, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "19845:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1546, - "mutability": "mutable", - "name": "receivers", - "nameLocation": "19886:9:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19867:28:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1544, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19867:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1545, - "nodeType": "ArrayTypeName", - "src": "19867:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1549, - "mutability": "mutable", - "name": "secretKeyCommitments", - "nameLocation": "19922:20:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19905:37:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1547, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "19905:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1548, - "nodeType": "ArrayTypeName", - "src": "19905:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "19811:137:0" - }, - "returnParameters": { - "id": 1555, - "nodeType": "ParameterList", - "parameters": [], - "src": "19983:0:0" - }, - "scope": 1927, - "src": "19777:1742:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1858, - "nodeType": "Block", - "src": "21987:1673:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1709, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "22018:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22018:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1711, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22036:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1712, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22036:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22018:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365637265746b65794d61736b73206c656e677468", - "id": 1714, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22071:54:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", - "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" - }, - "value": "senders length is not equal to secretkeyMasks length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", - "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" - } - ], - "id": 1708, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "21997:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21997:138:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1716, - "nodeType": "ExpressionStatement", - "src": "21997:138:0" - }, - { - "body": { - "id": 1745, - "nodeType": "Block", - "src": "22197:230:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1729, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22236:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1731, - "indexExpression": { - "id": 1730, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22251:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22236:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1732, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22236:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1733, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22263:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "22236:28:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1735, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22288:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1737, - "indexExpression": { - "id": 1736, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22303:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22288:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22288:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1739, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "22316:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "22288:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "22236:100:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1742, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22354:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1728, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22211:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22211:205:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1744, - "nodeType": "ExpressionStatement", - "src": "22211:205:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1721, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22165:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1722, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22169:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1723, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22169:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22165:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1746, - "initializationExpression": { - "assignments": [ - 1718 - ], - "declarations": [ - { - "constant": false, - "id": 1718, - "mutability": "mutable", - "name": "i", - "nameLocation": "22158:1:0", - "nodeType": "VariableDeclaration", - "scope": 1746, - "src": "22150:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1717, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "22150:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1720, - "initialValue": { - "hexValue": "30", - "id": 1719, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22162:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "22150:13:0" - }, - "loopExpression": { - "expression": { - "id": 1726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "22192:3:0", - "subExpression": { - "id": 1725, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22192:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1727, - "nodeType": "ExpressionStatement", - "src": "22192:3:0" - }, - "nodeType": "ForStatement", - "src": "22145:282:0" - }, - { - "assignments": [ - 1749 - ], - "declarations": [ - { - "constant": false, - "id": 1749, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "22454:8:0", - "nodeType": "VariableDeclaration", - "scope": 1858, - "src": "22436:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1748, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1747, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "22436:9:0" - }, - "referencedDeclaration": 85, - "src": "22436:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1755, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1750, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "22465:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1752, - "indexExpression": { - "id": 1751, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "22476:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22465:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1754, - "indexExpression": { - "id": 1753, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "22484:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22465:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22436:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1757, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1749, - "src": "22521:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1758, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "22521:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1759, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "22540:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1760, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Aggregating", - "nodeType": "MemberAccess", - "referencedDeclaration": 12, - "src": "22540:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "22521:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22577:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - }, - "value": "not in upload ss phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - } - ], - "id": 1756, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22500:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22500:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1764, - "nodeType": "ExpressionStatement", - "src": "22500:111:0" - }, - { - "assignments": [ - 1769 - ], - "declarations": [ - { - "constant": false, - "id": 1769, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "22653:11:0", - "nodeType": "VariableDeclaration", - "scope": 1858, - "src": "22621:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1767, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1766, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "22621:21:0" - }, - "referencedDeclaration": 49, - "src": "22621:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1768, - "nodeType": "ArrayTypeName", - "src": "22621:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1773, - "initialValue": { - "baseExpression": { - "id": 1770, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "22667:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1772, - "indexExpression": { - "id": 1771, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "22702:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22667:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22621:97:0" - }, - { - "assignments": [ - 1776 - ], - "declarations": [ - { - "constant": false, - "id": 1776, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "22758:10:0", - "nodeType": "VariableDeclaration", - "scope": 1858, - "src": "22728:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1775, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1774, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "22728:21:0" - }, - "referencedDeclaration": 49, - "src": "22728:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1780, - "initialValue": { - "baseExpression": { - "id": 1777, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1769, - "src": "22771:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1779, - "indexExpression": { - "id": 1778, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "22783:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22771:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22728:61:0" - }, - { - "body": { - "id": 1856, - "nodeType": "Block", - "src": "22851:803:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1805, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1793, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1776, - "src": "22890:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1794, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "22890:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1798, - "indexExpression": { - "baseExpression": { - "id": 1795, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "22929:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1797, - "indexExpression": { - "id": 1796, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "22937:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22929:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22890:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1801, - "indexExpression": { - "expression": { - "id": 1799, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "22941:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1800, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "22941:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22890:62:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1802, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 105, - "src": "22890:107:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22890:135:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1804, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23028:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "22890:139:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23047:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1792, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22865:226:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1808, - "nodeType": "ExpressionStatement", - "src": "22865:226:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1810, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1776, - "src": "23130:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1811, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "23130:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1815, - "indexExpression": { - "baseExpression": { - "id": 1812, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "23169:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1814, - "indexExpression": { - "id": 1813, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23177:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23169:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23130:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1818, - "indexExpression": { - "expression": { - "id": 1816, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23181:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1817, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "23181:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23130:62:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1819, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "23130:98:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1820, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "23130:126:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23260:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "23130:131:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1823, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23279:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1809, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23105:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23105:223:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1825, - "nodeType": "ExpressionStatement", - "src": "23105:223:0" - }, - { - "expression": { - "id": 1840, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1826, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1776, - "src": "23342:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1833, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "23342:30:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1834, - "indexExpression": { - "baseExpression": { - "id": 1828, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "23373:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1830, - "indexExpression": { - "id": 1829, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23381:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23373:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23342:42:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1835, - "indexExpression": { - "expression": { - "id": 1831, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23385:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1832, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "23385:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23342:54:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1836, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "23342:69:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1837, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "23414:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1839, - "indexExpression": { - "id": 1838, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23429:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23414:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "23342:89:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1841, - "nodeType": "ExpressionStatement", - "src": "23342:89:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1843, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "23483:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1844, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "23507:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "baseExpression": { - "id": 1845, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "23530:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1847, - "indexExpression": { - "id": 1846, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23538:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23530:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1848, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23558:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1849, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "23558:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "534b4d41534b", - "id": 1850, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23586:8:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - "value": "SKMASK" - }, - { - "baseExpression": { - "id": 1851, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "23612:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1853, - "indexExpression": { - "id": 1852, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23627:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23612:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1842, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "23450:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1854, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23450:193:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1855, - "nodeType": "EmitStatement", - "src": "23445:198:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1785, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "22819:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1786, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22823:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1787, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22823:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22819:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1857, - "initializationExpression": { - "assignments": [ - 1782 - ], - "declarations": [ - { - "constant": false, - "id": 1782, - "mutability": "mutable", - "name": "i", - "nameLocation": "22812:1:0", - "nodeType": "VariableDeclaration", - "scope": 1857, - "src": "22804:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1781, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "22804:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1784, - "initialValue": { - "hexValue": "30", - "id": 1783, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22816:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "22804:13:0" - }, - "loopExpression": { - "expression": { - "id": 1790, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "22846:3:0", - "subExpression": { - "id": 1789, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "22846:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1791, - "nodeType": "ExpressionStatement", - "src": "22846:3:0" - }, - "nodeType": "ForStatement", - "src": "22799:855:0" - } - ] - }, - "documentation": { - "id": 1691, - "nodeType": "StructuredDocumentation", - "src": "21525:265:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i]" - }, - "functionSelector": "c96525ac", - "id": 1859, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1704, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "21972:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1705, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "21980:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1706, - "kind": "modifierInvocation", - "modifierName": { - "id": 1703, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "21960:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "21960:26:0" - } - ], - "name": "uploadSecretkeyMask", - "nameLocation": "21804:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1702, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1693, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "21841:6:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21833:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1692, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "21833:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1695, - "mutability": "mutable", - "name": "round", - "nameLocation": "21864:5:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21857:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1694, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "21857:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1698, - "mutability": "mutable", - "name": "senders", - "nameLocation": "21898:7:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21879:26:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1696, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "21879:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1697, - "nodeType": "ArrayTypeName", - "src": "21879:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1701, - "mutability": "mutable", - "name": "secretkeyMasks", - "nameLocation": "21932:14:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21915:31:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1699, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "21915:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1700, - "nodeType": "ArrayTypeName", - "src": "21915:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "21823:129:0" - }, - "returnParameters": { - "id": 1707, - "nodeType": "ParameterList", - "parameters": [], - "src": "21987:0:0" - }, - "scope": 1927, - "src": "21795:1865:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1870, - "nodeType": "Block", - "src": "23737:54:0", - "statements": [ - { - "expression": { - "id": 1868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1866, - "name": "maxWeightCommitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "23747:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1867, - "name": "maxLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1861, - "src": "23775:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "23747:37:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1869, - "nodeType": "ExpressionStatement", - "src": "23747:37:0" - } - ] - }, - "functionSelector": "b71b768d", - "id": 1871, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1864, - "kind": "modifierInvocation", - "modifierName": { - "id": 1863, - "name": "isOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 191, - "src": "23729:7:0" - }, - "nodeType": "ModifierInvocation", - "src": "23729:7:0" - } - ], - "name": "setMaxWeightCommitmentLength", - "nameLocation": "23675:28:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1862, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1861, - "mutability": "mutable", - "name": "maxLength", - "nameLocation": "23711:9:0", - "nodeType": "VariableDeclaration", - "scope": 1871, - "src": "23704:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1860, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "23704:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "23703:18:0" - }, - "returnParameters": { - "id": 1865, - "nodeType": "ParameterList", - "parameters": [], - "src": "23737:0:0" - }, - "scope": 1927, - "src": "23666:125:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1882, - "nodeType": "Block", - "src": "23864:49:0", - "statements": [ - { - "expression": { - "id": 1880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1878, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "23874:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1879, - "name": "maxLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "23897:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "23874:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1881, - "nodeType": "ExpressionStatement", - "src": "23874:32:0" - } - ] - }, - "functionSelector": "d6f02142", - "id": 1883, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1876, - "kind": "modifierInvocation", - "modifierName": { - "id": 1875, - "name": "isOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 191, - "src": "23856:7:0" - }, - "nodeType": "ModifierInvocation", - "src": "23856:7:0" - } - ], - "name": "setMaxSSCommitmentLength", - "nameLocation": "23806:24:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1873, - "mutability": "mutable", - "name": "maxLength", - "nameLocation": "23838:9:0", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "23831:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1872, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "23831:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "23830:18:0" - }, - "returnParameters": { - "id": 1877, - "nodeType": "ParameterList", - "parameters": [], - "src": "23864:0:0" - }, - "scope": 1927, - "src": "23797:116:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1898, - "nodeType": "Block", - "src": "24041:98:0", - "statements": [ - { - "expression": { - "id": 1892, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1890, - "name": "sslength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1886, - "src": "24051:8:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1891, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "24062:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "24051:31:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1893, - "nodeType": "ExpressionStatement", - "src": "24051:31:0" - }, - { - "expression": { - "id": 1896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1894, - "name": "weightLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1888, - "src": "24092:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1895, - "name": "maxWeightCommitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "24107:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "24092:40:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1897, - "nodeType": "ExpressionStatement", - "src": "24092:40:0" - } - ] - }, - "functionSelector": "5d3d7e63", - "id": 1899, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMaxCommitmentsLength", - "nameLocation": "23928:23:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1884, - "nodeType": "ParameterList", - "parameters": [], - "src": "23951:2:0" - }, - "returnParameters": { - "id": 1889, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1886, - "mutability": "mutable", - "name": "sslength", - "nameLocation": "24006:8:0", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "23999:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1885, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "23999:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1888, - "mutability": "mutable", - "name": "weightLength", - "nameLocation": "24023:12:0", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "24016:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1887, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "24016:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "23998:38:0" - }, - "scope": 1927, - "src": "23919:220:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1916, - "nodeType": "Block", - "src": "24284:73:0", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "id": 1908, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "24308:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1909, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1902, - "src": "24315:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1907, - "name": "OwnerSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "24299:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 1910, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "24299:25:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1911, - "nodeType": "EmitStatement", - "src": "24294:30:0" - }, - { - "expression": { - "id": 1914, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1912, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "24334:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1913, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1902, - "src": "24342:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "24334:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1915, - "nodeType": "ExpressionStatement", - "src": "24334:16:0" - } - ] - }, - "documentation": { - "id": 1900, - "nodeType": "StructuredDocumentation", - "src": "24145:80:0", - "text": " @dev Change owner\n @param newOwner address of new owner" - }, - "functionSelector": "a6f9dae1", - "id": 1917, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1905, - "kind": "modifierInvocation", - "modifierName": { - "id": 1904, - "name": "isOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 191, - "src": "24276:7:0" - }, - "nodeType": "ModifierInvocation", - "src": "24276:7:0" - } - ], - "name": "changeOwner", - "nameLocation": "24239:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1902, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "24259:8:0", - "nodeType": "VariableDeclaration", - "scope": 1917, - "src": "24251:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1901, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24251:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "24250:18:0" - }, - "returnParameters": { - "id": 1906, - "nodeType": "ParameterList", - "parameters": [], - "src": "24284:0:0" - }, - "scope": 1927, - "src": "24230:127:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1925, - "nodeType": "Block", - "src": "24496:29:0", - "statements": [ - { - "expression": { - "id": 1923, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "24513:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1922, - "id": 1924, - "nodeType": "Return", - "src": "24506:12:0" - } - ] - }, - "documentation": { - "id": 1918, - "nodeType": "StructuredDocumentation", - "src": "24363:76:0", - "text": " @dev Return owner address\n @return address of owner" - }, - "functionSelector": "893d20e8", - "id": 1926, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getOwner", - "nameLocation": "24453:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1919, - "nodeType": "ParameterList", - "parameters": [], - "src": "24461:2:0" - }, - "returnParameters": { - "id": 1922, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1921, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "24487:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1920, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24487:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "24486:9:0" - }, - "scope": 1927, - "src": "24444:81:0", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1928, - "src": "160:24367:0", - "usedErrors": [] - } - ], - "src": "37:24491:0" - }, - "legacyAST": { - "absolutePath": "project:/contracts/HFLContract.sol", - "exportedSymbols": { - "HFLContract": [ - 1927 - ], - "IdentityContract": [ - 2193 - ] - }, - "id": 1928, - "license": "GPL-3.0", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - ">=", - "0.7", - ".0", - "<", - "0.9", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "37:31:0" - }, - { - "absolutePath": "project:/contracts/Identity.sol", - "file": "./Identity.sol", - "id": 2, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1928, - "sourceUnit": 2194, - "src": "70:24:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "HFLContract", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 3, - "nodeType": "StructuredDocumentation", - "src": "96:63:0", - "text": " @title Delta Contract\n @dev Delta Contract For Mpc" - }, - "fullyImplemented": true, - "id": 1927, - "linearizedBaseContracts": [ - 1927 - ], - "name": "HFLContract", - "nameLocation": "169:11:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "3045a939", - "id": 6, - "mutability": "mutable", - "name": "idContract", - "nameLocation": "211:10:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "187:34:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - }, - "typeName": { - "id": 5, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 4, - "name": "IdentityContract", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2193, - "src": "187:16:0" - }, - "referencedDeclaration": 2193, - "src": "187:16:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 8, - "mutability": "mutable", - "name": "owner", - "nameLocation": "244:5:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "228:21:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "228:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "canonicalName": "HFLContract.RoundStatus", - "id": 14, - "members": [ - { - "id": 9, - "name": "Started", - "nameLocation": "282:7:0", - "nodeType": "EnumValue", - "src": "282:7:0" - }, - { - "id": 10, - "name": "Running", - "nameLocation": "299:7:0", - "nodeType": "EnumValue", - "src": "299:7:0" - }, - { - "id": 11, - "name": "Calculating", - "nameLocation": "316:11:0", - "nodeType": "EnumValue", - "src": "316:11:0" - }, - { - "id": 12, - "name": "Aggregating", - "nameLocation": "337:11:0", - "nodeType": "EnumValue", - "src": "337:11:0" - }, - { - "id": 13, - "name": "Finished", - "nameLocation": "358:8:0", - "nodeType": "EnumValue", - "src": "358:8:0" - } - ], - "name": "RoundStatus", - "nameLocation": "260:11:0", - "nodeType": "EnumDefinition", - "src": "255:117:0" - }, - { - "constant": false, - "id": 19, - "mutability": "mutable", - "name": "createdTasks", - "nameLocation": "402:12:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "377:37:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task)" - }, - "typeName": { - "id": 18, - "keyType": { - "id": 15, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "385:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "377:24:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task)" - }, - "valueType": { - "id": 17, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 16, - "name": "Task", - "nodeType": "IdentifierPath", - "referencedDeclaration": 62, - "src": "396:4:0" - }, - "referencedDeclaration": 62, - "src": "396:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 25, - "mutability": "mutable", - "name": "taskRounds", - "nameLocation": "452:10:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "420:42:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" - }, - "typeName": { - "id": 24, - "keyType": { - "id": 20, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "428:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "420:31:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound[])" - }, - "valueType": { - "baseType": { - "id": 22, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 21, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "439:9:0" - }, - "referencedDeclaration": 85, - "src": "439:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 23, - "nodeType": "ArrayTypeName", - "src": "439:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 31, - "mutability": "mutable", - "name": "roundModelCommitments", - "nameLocation": "512:21:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "468:65:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" - }, - "typeName": { - "id": 30, - "keyType": { - "id": 26, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "476:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "468:43:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments[])" - }, - "valueType": { - "baseType": { - "id": 28, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 27, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "487:21:0" - }, - "referencedDeclaration": 49, - "src": "487:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 29, - "nodeType": "ArrayTypeName", - "src": "487:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 34, - "mutability": "mutable", - "name": "maxWeightCommitmentLength", - "nameLocation": "554:25:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "539:51:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 32, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "539:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "value": { - "hexValue": "3130343835373630", - "id": 33, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "582:8:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_10485760_by_1", - "typeString": "int_const 10485760" - }, - "value": "10485760" - }, - "visibility": "private" - }, - { - "constant": false, - "id": 37, - "mutability": "mutable", - "name": "maxSSComitmentLength", - "nameLocation": "611:20:0", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "596:41:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 35, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "596:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "value": { - "hexValue": "323536", - "id": 36, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "634:3:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_256_by_1", - "typeString": "int_const 256" - }, - "value": "256" - }, - "visibility": "private" - }, - { - "canonicalName": "HFLContract.RoundModelCommitments", - "id": 49, - "members": [ - { - "constant": false, - "id": 41, - "mutability": "mutable", - "name": "weightCommitment", - "nameLocation": "708:16:0", - "nodeType": "VariableDeclaration", - "scope": 49, - "src": "682:42:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes)" - }, - "typeName": { - "id": 40, - "keyType": { - "id": 38, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "690:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "682:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes)" - }, - "valueType": { - "id": 39, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "701:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 48, - "mutability": "mutable", - "name": "ssdata", - "nameLocation": "781:6:0", - "nodeType": "VariableDeclaration", - "scope": 49, - "src": "734:53:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" - }, - "typeName": { - "id": 47, - "keyType": { - "id": 42, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "742:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "734:46:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData))" - }, - "valueType": { - "id": 46, - "keyType": { - "id": 43, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "761:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "753:26:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData)" - }, - "valueType": { - "id": 45, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 44, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "772:6:0" - }, - "referencedDeclaration": 106, - "src": "772:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - } - } - }, - "visibility": "internal" - } - ], - "name": "RoundModelCommitments", - "nameLocation": "650:21:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "643:151:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.Task", - "id": 62, - "members": [ - { - "constant": false, - "id": 51, - "mutability": "mutable", - "name": "creator", - "nameLocation": "829:7:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "821:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 50, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "821:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 53, - "mutability": "mutable", - "name": "creatorUrl", - "nameLocation": "853:10:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "846:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 52, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "846:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 55, - "mutability": "mutable", - "name": "dataSet", - "nameLocation": "880:7:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "873:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 54, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "873:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 57, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "905:10:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "897:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 56, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "897:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 59, - "mutability": "mutable", - "name": "taskType", - "nameLocation": "932:8:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "925:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 58, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "925:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 61, - "mutability": "mutable", - "name": "currentRound", - "nameLocation": "957:12:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "950:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 60, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "950:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "name": "Task", - "nameLocation": "806:4:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "799:177:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.Candidate", - "id": 67, - "members": [ - { - "constant": false, - "id": 64, - "mutability": "mutable", - "name": "pk1", - "nameLocation": "1015:3:0", - "nodeType": "VariableDeclaration", - "scope": 67, - "src": "1009:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 63, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1009:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 66, - "mutability": "mutable", - "name": "pk2", - "nameLocation": "1034:3:0", - "nodeType": "VariableDeclaration", - "scope": 67, - "src": "1028:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 65, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1028:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "Candidate", - "nameLocation": "989:9:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "982:62:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.TaskRound", - "id": 85, - "members": [ - { - "constant": false, - "id": 69, - "mutability": "mutable", - "name": "currentRound", - "nameLocation": "1084:12:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1077:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 68, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1077:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 71, - "mutability": "mutable", - "name": "maxSample", - "nameLocation": "1113:9:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1106:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 70, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1106:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 73, - "mutability": "mutable", - "name": "minSample", - "nameLocation": "1139:9:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1132:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 72, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1132:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 76, - "mutability": "mutable", - "name": "status", - "nameLocation": "1170:6:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1158:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "typeName": { - "id": 75, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 74, - "name": "RoundStatus", - "nodeType": "IdentifierPath", - "referencedDeclaration": 14, - "src": "1158:11:0" - }, - "referencedDeclaration": 14, - "src": "1158:11:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 81, - "mutability": "mutable", - "name": "candidates", - "nameLocation": "1216:10:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1186:40:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate)" - }, - "typeName": { - "id": 80, - "keyType": { - "id": 77, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1194:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1186:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate)" - }, - "valueType": { - "id": 79, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 78, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "1205:9:0" - }, - "referencedDeclaration": 67, - "src": "1205:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 84, - "mutability": "mutable", - "name": "joinedAddrs", - "nameLocation": "1246:11:0", - "nodeType": "VariableDeclaration", - "scope": 85, - "src": "1236:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 82, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1236:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 83, - "nodeType": "ArrayTypeName", - "src": "1236:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "name": "TaskRound", - "nameLocation": "1057:9:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "1050:214:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.ExtCallTaskRoundStruct", - "id": 97, - "members": [ - { - "constant": false, - "id": 87, - "mutability": "mutable", - "name": "currentRound", - "nameLocation": "1317:12:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1310:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 86, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1310:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 89, - "mutability": "mutable", - "name": "maxSample", - "nameLocation": "1346:9:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1339:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 88, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1339:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 91, - "mutability": "mutable", - "name": "minSample", - "nameLocation": "1372:9:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1365:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 90, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1365:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 93, - "mutability": "mutable", - "name": "status", - "nameLocation": "1397:6:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1391:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 92, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1391:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 96, - "mutability": "mutable", - "name": "joinedAddrs", - "nameLocation": "1423:11:0", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1413:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 94, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1413:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 95, - "nodeType": "ArrayTypeName", - "src": "1413:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "name": "ExtCallTaskRoundStruct", - "nameLocation": "1277:22:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "1270:171:0", - "visibility": "public" - }, - { - "canonicalName": "HFLContract.SSData", - "id": 106, - "members": [ - { - "constant": false, - "id": 99, - "mutability": "mutable", - "name": "seedPiece", - "nameLocation": "1477:9:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1471:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 98, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1471:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 101, - "mutability": "mutable", - "name": "seedCommitment", - "nameLocation": "1502:14:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1496:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 100, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1496:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "mutability": "mutable", - "name": "secretKeyPiece", - "nameLocation": "1532:14:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1526:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 102, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1526:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 105, - "mutability": "mutable", - "name": "secretKeyMaskCommitment", - "nameLocation": "1562:23:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "1556:29:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 104, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1556:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "SSData", - "nameLocation": "1454:6:0", - "nodeType": "StructDefinition", - "scope": 1927, - "src": "1447:145:0", - "visibility": "public" - }, - { - "anonymous": false, - "id": 112, - "name": "OwnerSet", - "nameLocation": "1633:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 111, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 108, - "indexed": true, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "1658:8:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1642:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 107, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1642:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 110, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "1684:8:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1668:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 109, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1668:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1641:52:0" - }, - "src": "1627:67:0" - }, - { - "anonymous": false, - "id": 126, - "name": "TaskCreated", - "nameLocation": "1740:11:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 125, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 114, - "indexed": true, - "mutability": "mutable", - "name": "creator", - "nameLocation": "1777:7:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1761:23:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 113, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1761:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 116, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "1802:6:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1794:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 115, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1794:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 118, - "indexed": false, - "mutability": "mutable", - "name": "dataSet", - "nameLocation": "1825:7:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1818:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 117, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1818:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 120, - "indexed": false, - "mutability": "mutable", - "name": "creatorUrl", - "nameLocation": "1849:10:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1842:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 119, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1842:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 122, - "indexed": false, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "1877:10:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1869:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 121, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1869:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 124, - "indexed": false, - "mutability": "mutable", - "name": "taskType", - "nameLocation": "1904:8:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "1897:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 123, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1897:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1751:167:0" - }, - "src": "1734:185:0" - }, - { - "anonymous": false, - "id": 132, - "name": "RoundStart", - "nameLocation": "1983:10:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 131, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 128, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2002:6:0", - "nodeType": "VariableDeclaration", - "scope": 132, - "src": "1994:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 127, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1994:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 130, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2017:5:0", - "nodeType": "VariableDeclaration", - "scope": 132, - "src": "2010:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 129, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2010:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "1993:30:0" - }, - "src": "1977:47:0" - }, - { - "anonymous": false, - "id": 138, - "name": "RoundEnd", - "nameLocation": "2089:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 137, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 134, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2106:6:0", - "nodeType": "VariableDeclaration", - "scope": 138, - "src": "2098:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 133, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2098:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 136, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2121:5:0", - "nodeType": "VariableDeclaration", - "scope": 138, - "src": "2114:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 135, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2114:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "2097:30:0" - }, - "src": "2083:45:0" - }, - { - "anonymous": false, - "id": 147, - "name": "PartnerSelected", - "nameLocation": "2199:15:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 146, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 140, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2223:6:0", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2215:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 139, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2215:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 142, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2238:5:0", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2231:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 141, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2231:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 145, - "indexed": false, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "2255:5:0", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2245:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 143, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2245:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 144, - "nodeType": "ArrayTypeName", - "src": "2245:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "2214:47:0" - }, - "src": "2193:69:0" - }, - { - "anonymous": false, - "id": 156, - "name": "AggregateStarted", - "nameLocation": "2337:16:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 155, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 149, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2362:6:0", - "nodeType": "VariableDeclaration", - "scope": 156, - "src": "2354:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 148, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2354:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 151, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2377:5:0", - "nodeType": "VariableDeclaration", - "scope": 156, - "src": "2370:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 150, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2370:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 154, - "indexed": false, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "2394:5:0", - "nodeType": "VariableDeclaration", - "scope": 156, - "src": "2384:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 152, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2384:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 153, - "nodeType": "ArrayTypeName", - "src": "2384:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "2353:47:0" - }, - "src": "2331:70:0" - }, - { - "anonymous": false, - "id": 165, - "name": "CalculateStarted", - "nameLocation": "2470:16:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 158, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2495:6:0", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2487:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 157, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2487:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 160, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2510:5:0", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2503:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 159, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2503:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 163, - "indexed": false, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "2527:5:0", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2517:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 161, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2517:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 162, - "nodeType": "ArrayTypeName", - "src": "2517:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "2486:47:0" - }, - "src": "2464:70:0" - }, - { - "anonymous": false, - "id": 179, - "name": "ContentUploaded", - "nameLocation": "2650:15:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 178, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 167, - "indexed": false, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "2683:6:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2675:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 166, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2675:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 169, - "indexed": false, - "mutability": "mutable", - "name": "round", - "nameLocation": "2706:5:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2699:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 168, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2699:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 171, - "indexed": false, - "mutability": "mutable", - "name": "sender", - "nameLocation": "2729:6:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2721:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 170, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2721:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 173, - "indexed": false, - "mutability": "mutable", - "name": "reciver", - "nameLocation": "2753:7:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2745:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 172, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2745:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 175, - "indexed": false, - "mutability": "mutable", - "name": "contentType", - "nameLocation": "2777:11:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2770:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 174, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2770:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 177, - "indexed": false, - "mutability": "mutable", - "name": "content", - "nameLocation": "2804:7:0", - "nodeType": "VariableDeclaration", - "scope": 179, - "src": "2798:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 176, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2798:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2665:152:0" - }, - "src": "2644:174:0" - }, - { - "body": { - "id": 190, - "nodeType": "Block", - "src": "2887:510:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 182, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "3336:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3336:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 184, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "3350:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3336:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616c6c6572206973206e6f74206f776e6572", - "id": 186, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3357:21:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d", - "typeString": "literal_string \"Caller is not owner\"" - }, - "value": "Caller is not owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d", - "typeString": "literal_string \"Caller is not owner\"" - } - ], - "id": 181, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3328:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3328:51:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 188, - "nodeType": "ExpressionStatement", - "src": "3328:51:0" - }, - { - "id": 189, - "nodeType": "PlaceholderStatement", - "src": "3389:1:0" - } - ] - }, - "id": 191, - "name": "isOwner", - "nameLocation": "2877:7:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 180, - "nodeType": "ParameterList", - "parameters": [], - "src": "2884:2:0" - }, - "src": "2868:529:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 209, - "nodeType": "Block", - "src": "3440:99:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 196, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "3458:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 198, - "indexExpression": { - "id": 197, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 193, - "src": "3471:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3458:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "id": 199, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "creator", - "nodeType": "MemberAccess", - "referencedDeclaration": 51, - "src": "3458:29:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 202, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3499:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 201, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3491:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 200, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3491:7:0", - "typeDescriptions": {} - } - }, - "id": 203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3491:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3458:43:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5461736b206e6f7420657869737473", - "id": 205, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3503:17:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210", - "typeString": "literal_string \"Task not exists\"" - }, - "value": "Task not exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_dcc2b9962b1a7c1e5daf9c607dc4b934c8f802ad17e4ae9bf6b26ee942a80210", - "typeString": "literal_string \"Task not exists\"" - } - ], - "id": 195, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3450:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 206, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3450:71:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 207, - "nodeType": "ExpressionStatement", - "src": "3450:71:0" - }, - { - "id": 208, - "nodeType": "PlaceholderStatement", - "src": "3531:1:0" - } - ] - }, - "id": 210, - "name": "taskExists", - "nameLocation": "3412:10:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 194, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 193, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "3431:7:0", - "nodeType": "VariableDeclaration", - "scope": 210, - "src": "3423:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 192, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3423:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3422:17:0" - }, - "src": "3403:136:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 239, - "nodeType": "Block", - "src": "3597:200:0", - "statements": [ - { - "assignments": [ - 220 - ], - "declarations": [ - { - "constant": false, - "id": 220, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "3627:6:0", - "nodeType": "VariableDeclaration", - "scope": 239, - "src": "3607:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 218, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 217, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "3607:9:0" - }, - "referencedDeclaration": 85, - "src": "3607:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 219, - "nodeType": "ArrayTypeName", - "src": "3607:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 224, - "initialValue": { - "baseExpression": { - "id": 221, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "3636:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 223, - "indexExpression": { - "id": 222, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 212, - "src": "3647:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3636:19:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3607:48:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 226, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 220, - "src": "3686:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 227, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3686:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "31", - "id": 228, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3702:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3686:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 230, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 220, - "src": "3707:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 231, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3707:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 232, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 214, - "src": "3723:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3707:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3686:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "7468697320726f756e6420646f6573206e6f74206578697374", - "id": 235, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3742:27:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf", - "typeString": "literal_string \"this round does not exist\"" - }, - "value": "this round does not exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fea753808ffb954b5cc66b133b8fecb4e91403ba4e880da2feeeebbe77b680bf", - "typeString": "literal_string \"this round does not exist\"" - } - ], - "id": 225, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3665:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3665:114:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 237, - "nodeType": "ExpressionStatement", - "src": "3665:114:0" - }, - { - "id": 238, - "nodeType": "PlaceholderStatement", - "src": "3789:1:0" - } - ] - }, - "id": 240, - "name": "roundExists", - "nameLocation": "3554:11:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 215, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 212, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "3574:7:0", - "nodeType": "VariableDeclaration", - "scope": 240, - "src": "3566:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 211, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3566:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 214, - "mutability": "mutable", - "name": "round", - "nameLocation": "3590:5:0", - "nodeType": "VariableDeclaration", - "scope": 240, - "src": "3583:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 213, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3583:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "3565:31:0" - }, - "src": "3545:252:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 264, - "nodeType": "Block", - "src": "3859:167:0", - "statements": [ - { - "assignments": [ - 250 - ], - "declarations": [ - { - "constant": false, - "id": 250, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "3901:5:0", - "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3869:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 248, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 247, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "3869:21:0" - }, - "referencedDeclaration": 49, - "src": "3869:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 249, - "nodeType": "ArrayTypeName", - "src": "3869:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 254, - "initialValue": { - "baseExpression": { - "id": 251, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "3909:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 253, - "indexExpression": { - "id": 252, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "3931:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3909:30:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3869:70:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 256, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 250, - "src": "3957:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 257, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3957:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 258, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 244, - "src": "3972:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3957:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3979:28:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - }, - "value": "The Task Round Must exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - } - ], - "id": 255, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3949:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3949:59:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 262, - "nodeType": "ExpressionStatement", - "src": "3949:59:0" - }, - { - "id": 263, - "nodeType": "PlaceholderStatement", - "src": "4018:1:0" - } - ] - }, - "id": 265, - "name": "roundcmmtExists", - "nameLocation": "3812:15:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 245, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 242, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "3836:7:0", - "nodeType": "VariableDeclaration", - "scope": 265, - "src": "3828:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 241, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3828:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 244, - "mutability": "mutable", - "name": "round", - "nameLocation": "3852:5:0", - "nodeType": "VariableDeclaration", - "scope": 265, - "src": "3845:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 243, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3845:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "3827:31:0" - }, - "src": "3803:223:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 281, - "nodeType": "Block", - "src": "4068:147:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 276, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 270, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "4099:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 272, - "indexExpression": { - "id": 271, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 267, - "src": "4112:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4099:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "id": 273, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "creator", - "nodeType": "MemberAccess", - "referencedDeclaration": 51, - "src": "4099:29:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 274, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4132:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4132:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4099:43:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4d7573742063616c6c656420627920746865207461736b206f776e6572", - "id": 277, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4156:31:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063", - "typeString": "literal_string \"Must called by the task owner\"" - }, - "value": "Must called by the task owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_87ff0cb3160e62ff3c935e3e5aaf754e75b5becfad8642045a84d9c21de40063", - "typeString": "literal_string \"Must called by the task owner\"" - } - ], - "id": 269, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4078:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 278, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4078:119:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 279, - "nodeType": "ExpressionStatement", - "src": "4078:119:0" - }, - { - "id": 280, - "nodeType": "PlaceholderStatement", - "src": "4207:1:0" - } - ] - }, - "id": 282, - "name": "taskOwner", - "nameLocation": "4041:9:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 268, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 267, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "4059:7:0", - "nodeType": "VariableDeclaration", - "scope": 282, - "src": "4051:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 266, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4051:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4050:17:0" - }, - "src": "4032:183:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 306, - "nodeType": "Block", - "src": "4316:184:0", - "statements": [ - { - "expression": { - "id": 291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 289, - "name": "idContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6, - "src": "4326:10:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 290, - "name": "_addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "4339:5:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "src": "4326:18:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "id": 292, - "nodeType": "ExpressionStatement", - "src": "4326:18:0" - }, - { - "expression": { - "id": 296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 293, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "4354:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 294, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4362:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4362:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4354:18:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 297, - "nodeType": "ExpressionStatement", - "src": "4354:18:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 301, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4483:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4475:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 299, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4475:7:0", - "typeDescriptions": {} - } - }, - "id": 302, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4475:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 303, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "4487:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 298, - "name": "OwnerSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "4466:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4466:27:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 305, - "nodeType": "EmitStatement", - "src": "4461:32:0" - } - ] - }, - "documentation": { - "id": 283, - "nodeType": "StructuredDocumentation", - "src": "4221:54:0", - "text": " @dev Set contract deployer as owner" - }, - "id": 307, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 287, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 286, - "mutability": "mutable", - "name": "_addr", - "nameLocation": "4309:5:0", - "nodeType": "VariableDeclaration", - "scope": 307, - "src": "4292:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - }, - "typeName": { - "id": 285, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 284, - "name": "IdentityContract", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2193, - "src": "4292:16:0" - }, - "referencedDeclaration": 2193, - "src": "4292:16:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "visibility": "internal" - } - ], - "src": "4291:24:0" - }, - "returnParameters": { - "id": 288, - "nodeType": "ParameterList", - "parameters": [], - "src": "4316:0:0" - }, - "scope": 1927, - "src": "4280:220:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 325, - "nodeType": "Block", - "src": "4712:44:0", - "statements": [ - { - "expression": { - "id": 323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 319, - "name": "task", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 317, - "src": "4722:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 320, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "4729:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 322, - "indexExpression": { - "id": 321, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 310, - "src": "4742:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4729:20:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "src": "4722:27:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task memory" - } - }, - "id": 324, - "nodeType": "ExpressionStatement", - "src": "4722:27:0" - } - ] - }, - "documentation": { - "id": 308, - "nodeType": "StructuredDocumentation", - "src": "4506:70:0", - "text": " @dev get task info data\n @param taskId taskId" - }, - "functionSelector": "58af9f73", - "id": 326, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 313, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 310, - "src": "4665:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 314, - "kind": "modifierInvocation", - "modifierName": { - "id": 312, - "name": "taskExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 210, - "src": "4654:10:0" - }, - "nodeType": "ModifierInvocation", - "src": "4654:18:0" - } - ], - "name": "getTaskData", - "nameLocation": "4590:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 311, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 310, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "4610:6:0", - "nodeType": "VariableDeclaration", - "scope": 326, - "src": "4602:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 309, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4602:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4601:16:0" - }, - "returnParameters": { - "id": 318, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 317, - "mutability": "mutable", - "name": "task", - "nameLocation": "4702:4:0", - "nodeType": "VariableDeclaration", - "scope": 326, - "src": "4690:16:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task" - }, - "typeName": { - "id": 316, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 315, - "name": "Task", - "nodeType": "IdentifierPath", - "referencedDeclaration": 62, - "src": "4690:4:0" - }, - "referencedDeclaration": 62, - "src": "4690:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - } - }, - "visibility": "internal" - } - ], - "src": "4689:18:0" - }, - "scope": 1927, - "src": "4581:175:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 408, - "nodeType": "Block", - "src": "5216:735:0", - "statements": [ - { - "assignments": [ - 339 - ], - "declarations": [ - { - "constant": false, - "id": 339, - "mutability": "mutable", - "name": "task_id", - "nameLocation": "5234:7:0", - "nodeType": "VariableDeclaration", - "scope": 408, - "src": "5226:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 338, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5226:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 352, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 343, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "5278:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "src": "5278:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 345, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5292:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 346, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5292:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 347, - "name": "dataSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "5304:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 348, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "5313:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 349, - "name": "taskType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5325:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "expression": { - "id": 341, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "5267:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 342, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "5267:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5267:67:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 340, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "5244:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 351, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5244:100:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5226:118:0" - }, - { - "assignments": [ - 357 - ], - "declarations": [ - { - "constant": false, - "id": 357, - "mutability": "mutable", - "name": "node", - "nameLocation": "5383:4:0", - "nodeType": "VariableDeclaration", - "scope": 408, - "src": "5354:33:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node" - }, - "typeName": { - "id": 356, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 355, - "name": "IdentityContract.Node", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1934, - "src": "5354:21:0" - }, - "referencedDeclaration": 1934, - "src": "5354:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_storage_ptr", - "typeString": "struct IdentityContract.Node" - } - }, - "visibility": "internal" - } - ], - "id": 363, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 360, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5413:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5413:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 358, - "name": "idContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6, - "src": "5390:10:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IdentityContract_$2193", - "typeString": "contract IdentityContract" - } - }, - "id": 359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getNodeInfo", - "nodeType": "MemberAccess", - "referencedDeclaration": 2192, - "src": "5390:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_Node_$1934_memory_ptr_$", - "typeString": "function (address) view external returns (struct IdentityContract.Node memory)" - } - }, - "id": 362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5390:34:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5354:70:0" - }, - { - "expression": { - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 364, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "5434:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 366, - "indexExpression": { - "id": 365, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 339, - "src": "5447:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "5434:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 368, - "name": "node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 357, - "src": "5489:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "id": 369, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1931, - "src": "5489:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "expression": { - "id": 370, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5520:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5520:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 372, - "name": "dataSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "5553:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 373, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "5586:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 374, - "name": "taskType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5620:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "hexValue": "30", - "id": 375, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5656:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 367, - "name": "Task", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 62, - "src": "5458:4:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Task_$62_storage_ptr_$", - "typeString": "type(struct HFLContract.Task storage pointer)" - } - }, - "id": 376, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "creatorUrl", - "creator", - "dataSet", - "commitment", - "taskType", - "currentRound" - ], - "nodeType": "FunctionCall", - "src": "5458:210:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_memory_ptr", - "typeString": "struct HFLContract.Task memory" - } - }, - "src": "5434:234:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "id": 378, - "nodeType": "ExpressionStatement", - "src": "5434:234:0" - }, - { - "expression": { - "id": 381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 379, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "5678:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 380, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 339, - "src": "5687:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "5678:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 382, - "nodeType": "ExpressionStatement", - "src": "5678:16:0" - }, - { - "assignments": [ - 387 - ], - "declarations": [ - { - "constant": false, - "id": 387, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "5724:6:0", - "nodeType": "VariableDeclaration", - "scope": 408, - "src": "5704:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 385, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 384, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "5704:9:0" - }, - "referencedDeclaration": 85, - "src": "5704:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 386, - "nodeType": "ArrayTypeName", - "src": "5704:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 391, - "initialValue": { - "baseExpression": { - "id": 388, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "5733:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 390, - "indexExpression": { - "id": 389, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "5744:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5733:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5704:47:0" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 392, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 387, - "src": "5761:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "5761:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", - "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" - } - }, - "id": 395, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5761:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 396, - "nodeType": "ExpressionStatement", - "src": "5761:13:0" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 398, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5814:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5814:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 400, - "name": "task_id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 339, - "src": "5838:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 401, - "name": "dataSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "5859:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "expression": { - "id": 402, - "name": "node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 357, - "src": "5880:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1934_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "id": 403, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1931, - "src": "5880:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 404, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "5902:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 405, - "name": "taskType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 333, - "src": "5926:8:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 397, - "name": "TaskCreated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 126, - "src": "5789:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,bytes32,string memory,string memory,bytes32,string memory)" - } - }, - "id": 406, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5789:155:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 407, - "nodeType": "EmitStatement", - "src": "5784:160:0" - } - ] - }, - "documentation": { - "id": 327, - "nodeType": "StructuredDocumentation", - "src": "4762:288:0", - "text": " @dev called by task developer, notifying all clients that a new learning task has been published\n @param dataSet data set name (file/folder name of training data)\n @param commitment training code hash (client validation purpose)\n @return taskId taskId" - }, - "functionSelector": "9bd3a869", - "id": 409, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "createTask", - "nameLocation": "5064:10:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 334, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 329, - "mutability": "mutable", - "name": "dataSet", - "nameLocation": "5100:7:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5084:23:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 328, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5084:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 331, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "5125:10:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5117:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 330, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5117:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 333, - "mutability": "mutable", - "name": "taskType", - "nameLocation": "5161:8:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5145:24:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 332, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5145:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5074:101:0" - }, - "returnParameters": { - "id": 337, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 336, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "5208:6:0", - "nodeType": "VariableDeclaration", - "scope": 409, - "src": "5200:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 335, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5200:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5199:16:0" - }, - "scope": 1927, - "src": "5055:896:0", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 536, - "nodeType": "Block", - "src": "6327:802:0", - "statements": [ - { - "assignments": [ - 431 - ], - "declarations": [ - { - "constant": false, - "id": 431, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "6357:6:0", - "nodeType": "VariableDeclaration", - "scope": 536, - "src": "6337:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 429, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 428, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "6337:9:0" - }, - "referencedDeclaration": 85, - "src": "6337:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 430, - "nodeType": "ArrayTypeName", - "src": "6337:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 435, - "initialValue": { - "baseExpression": { - "id": 432, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "6366:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 434, - "indexExpression": { - "id": 433, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6377:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6366:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6337:47:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 437, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6415:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6415:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 439, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6415:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "74686520726f756e6420686173206265656e20616c72656164792073746172746564206f72207468652070726520726f756e6420646f6573206e6f74206578697374", - "id": 441, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6451:68:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7", - "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" - }, - "value": "the round has been already started or the pre round does not exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3ed5c78a9c0f07a8187af513d51be0bd90c83031ccfb66bba52025e73953c1c7", - "typeString": "literal_string \"the round has been already started or the pre round does not exist\"" - } - ], - "id": 436, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6394:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6394:135:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 443, - "nodeType": "ExpressionStatement", - "src": "6394:135:0" - }, - { - "assignments": [ - 446 - ], - "declarations": [ - { - "constant": false, - "id": 446, - "mutability": "mutable", - "name": "task", - "nameLocation": "6552:4:0", - "nodeType": "VariableDeclaration", - "scope": 536, - "src": "6539:17:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - }, - "typeName": { - "id": 445, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 444, - "name": "Task", - "nodeType": "IdentifierPath", - "referencedDeclaration": 62, - "src": "6539:4:0" - }, - "referencedDeclaration": 62, - "src": "6539:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task" - } - }, - "visibility": "internal" - } - ], - "id": 450, - "initialValue": { - "baseExpression": { - "id": 447, - "name": "createdTasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "6559:12:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Task_$62_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.Task storage ref)" - } - }, - "id": 449, - "indexExpression": { - "id": 448, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6572:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6559:20:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage", - "typeString": "struct HFLContract.Task storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6539:40:0" - }, - { - "expression": { - "id": 455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 451, - "name": "task", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 446, - "src": "6589:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Task_$62_storage_ptr", - "typeString": "struct HFLContract.Task storage pointer" - } - }, - "id": 453, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "currentRound", - "nodeType": "MemberAccess", - "referencedDeclaration": 61, - "src": "6589:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 454, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6609:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6589:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 456, - "nodeType": "ExpressionStatement", - "src": "6589:25:0" - }, - { - "body": { - "id": 473, - "nodeType": "Block", - "src": "6680:38:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 468, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6694:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "6694:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$returns$_t_struct$_TaskRound_$85_storage_$bound_to$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr_$", - "typeString": "function (struct HFLContract.TaskRound storage ref[] storage pointer) returns (struct HFLContract.TaskRound storage ref)" - } - }, - "id": 471, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6694:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 472, - "nodeType": "ExpressionStatement", - "src": "6694:13:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 457, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6631:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6631:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 459, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6648:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6631:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 461, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6653:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 462, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6653:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6669:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6653:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 465, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6673:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6653:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6631:47:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 474, - "nodeType": "WhileStatement", - "src": "6624:94:0" - }, - { - "expression": { - "id": 480, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 475, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6727:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 477, - "indexExpression": { - "id": 476, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6734:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6727:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 478, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "currentRound", - "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "6727:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 479, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6756:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "6727:34:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 481, - "nodeType": "ExpressionStatement", - "src": "6727:34:0" - }, - { - "expression": { - "id": 487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 482, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6771:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 484, - "indexExpression": { - "id": 483, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6778:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6771:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 485, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "maxSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "6771:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 486, - "name": "maxSample", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 416, - "src": "6797:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "6771:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 488, - "nodeType": "ExpressionStatement", - "src": "6771:35:0" - }, - { - "expression": { - "id": 494, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 489, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6816:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 491, - "indexExpression": { - "id": 490, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6823:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6816:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 492, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "minSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 73, - "src": "6816:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 493, - "name": "minSample", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 418, - "src": "6842:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "6816:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 495, - "nodeType": "ExpressionStatement", - "src": "6816:35:0" - }, - { - "expression": { - "id": 502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 496, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 431, - "src": "6861:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 498, - "indexExpression": { - "id": 497, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "6868:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6861:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 499, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "6861:20:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 500, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "6884:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 501, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Started", - "nodeType": "MemberAccess", - "referencedDeclaration": 9, - "src": "6884:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "6861:42:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 503, - "nodeType": "ExpressionStatement", - "src": "6861:42:0" - }, - { - "assignments": [ - 508 - ], - "declarations": [ - { - "constant": false, - "id": 508, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "6945:5:0", - "nodeType": "VariableDeclaration", - "scope": 536, - "src": "6913:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 506, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 505, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "6913:21:0" - }, - "referencedDeclaration": 49, - "src": "6913:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 507, - "nodeType": "ArrayTypeName", - "src": "6913:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 512, - "initialValue": { - "baseExpression": { - "id": 509, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "6953:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 511, - "indexExpression": { - "id": 510, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6975:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6953:29:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6913:69:0" - }, - { - "body": { - "id": 529, - "nodeType": "Block", - "src": "7046:37:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 524, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 508, - "src": "7060:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "7060:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$returns$_t_struct$_RoundModelCommitments_$49_storage_$bound_to$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr_$", - "typeString": "function (struct HFLContract.RoundModelCommitments storage ref[] storage pointer) returns (struct HFLContract.RoundModelCommitments storage ref)" - } - }, - "id": 527, - "isConstant": false, - "isLValue": true, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7060:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "id": 528, - "nodeType": "ExpressionStatement", - "src": "7060:12:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 523, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 516, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 513, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 508, - "src": "6999:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6999:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 515, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7015:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6999:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 520, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 517, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 508, - "src": "7020:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 518, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7020:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 519, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7035:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "7020:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 521, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "7039:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "7020:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6999:45:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 530, - "nodeType": "WhileStatement", - "src": "6992:91:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 532, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "7108:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 533, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 414, - "src": "7116:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 531, - "name": "RoundStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 132, - "src": "7097:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", - "typeString": "function (bytes32,uint64)" - } - }, - "id": 534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7097:25:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 535, - "nodeType": "EmitStatement", - "src": "7092:30:0" - } - ] - }, - "documentation": { - "id": 410, - "nodeType": "StructuredDocumentation", - "src": "5957:197:0", - "text": " @dev called by task developer, notifying all clients that a new computing round is started and open for joining\n @param taskId taskId\n @param round the round to start" - }, - "functionSelector": "07dcfa8e", - "id": 537, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 421, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6301:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 422, - "kind": "modifierInvocation", - "modifierName": { - "id": 420, - "name": "taskExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 210, - "src": "6290:10:0" - }, - "nodeType": "ModifierInvocation", - "src": "6290:18:0" - }, - { - "arguments": [ - { - "id": 424, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 412, - "src": "6319:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 425, - "kind": "modifierInvocation", - "modifierName": { - "id": 423, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "6309:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "6309:17:0" - } - ], - "name": "startRound", - "nameLocation": "6168:10:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 419, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 412, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "6196:6:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6188:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 411, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6188:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 414, - "mutability": "mutable", - "name": "round", - "nameLocation": "6219:5:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6212:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 413, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "6212:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 416, - "mutability": "mutable", - "name": "maxSample", - "nameLocation": "6241:9:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6234:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 415, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "6234:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 418, - "mutability": "mutable", - "name": "minSample", - "nameLocation": "6267:9:0", - "nodeType": "VariableDeclaration", - "scope": 537, - "src": "6260:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 417, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "6260:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - } - ], - "src": "6178:104:0" - }, - "returnParameters": { - "id": 426, - "nodeType": "ParameterList", - "parameters": [], - "src": "6327:0:0" - }, - "scope": 1927, - "src": "6159:970:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 629, - "nodeType": "Block", - "src": "7590:583:0", - "statements": [ - { - "assignments": [ - 562 - ], - "declarations": [ - { - "constant": false, - "id": 562, - "mutability": "mutable", - "name": "rounds", - "nameLocation": "7620:6:0", - "nodeType": "VariableDeclaration", - "scope": 629, - "src": "7600:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - }, - "typeName": { - "baseType": { - "id": 560, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 559, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "7600:9:0" - }, - "referencedDeclaration": 85, - "src": "7600:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "id": 561, - "nodeType": "ArrayTypeName", - "src": "7600:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound[]" - } - }, - "visibility": "internal" - } - ], - "id": 566, - "initialValue": { - "baseExpression": { - "id": 563, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "7629:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 565, - "indexExpression": { - "id": 564, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 540, - "src": "7640:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7629:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7600:47:0" - }, - { - "assignments": [ - 569 - ], - "declarations": [ - { - "constant": false, - "id": 569, - "mutability": "mutable", - "name": "thisRound", - "nameLocation": "7675:9:0", - "nodeType": "VariableDeclaration", - "scope": 629, - "src": "7657:27:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 568, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 567, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "7657:9:0" - }, - "referencedDeclaration": 85, - "src": "7657:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 576, - "initialValue": { - "baseExpression": { - "id": 570, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "7687:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 575, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 571, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "7694:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7694:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7710:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "7694:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7687:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7657:55:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 578, - "name": "rounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "7743:6:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage ref[] storage pointer" - } - }, - "id": 579, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7743:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 580, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7759:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "7743:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 582, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 542, - "src": "7764:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "7743:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 584, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "7789:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 585, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "7789:16:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 586, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "7809:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 587, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Started", - "nodeType": "MemberAccess", - "referencedDeclaration": 9, - "src": "7809:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "7789:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7743:85:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6a6f696e2070686173652068617320706173736564", - "id": 590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7842:23:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2", - "typeString": "literal_string \"join phase has passed\"" - }, - "value": "join phase has passed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3c4c3c323e6cd15322ee7a3d2e56838a0e36e9708b0912e80d38bfc21f0f4ec2", - "typeString": "literal_string \"join phase has passed\"" - } - ], - "id": 577, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7722:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7722:153:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 592, - "nodeType": "ExpressionStatement", - "src": "7722:153:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "expression": { - "id": 594, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "7906:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 595, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7906:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 598, - "indexExpression": { - "expression": { - "id": 596, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7927:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 597, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7927:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7906:32:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 599, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "pk1", - "nodeType": "MemberAccess", - "referencedDeclaration": 64, - "src": "7906:36:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7906:43:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 601, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7953:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7906:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469706c652074696d6573", - "id": 603, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7968:43:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172", - "typeString": "literal_string \"Cannot join the same round multiple times\"" - }, - "value": "Cannot join the same round multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_810c41143cc6f755a9e6551869e73c38250f6994f7ac65554221e2475926a172", - "typeString": "literal_string \"Cannot join the same round multiple times\"" - } - ], - "id": 593, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7885:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 604, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7885:136:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 605, - "nodeType": "ExpressionStatement", - "src": "7885:136:0" - }, - { - "expression": { - "id": 616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "expression": { - "id": 606, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "8031:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 610, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "8031:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 611, - "indexExpression": { - "expression": { - "id": 608, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8052:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8052:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8031:32:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 613, - "name": "pk1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "8082:3:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 614, - "name": "pk2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 546, - "src": "8092:3:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 612, - "name": "Candidate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 67, - "src": "8066:9:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Candidate_$67_storage_ptr_$", - "typeString": "type(struct HFLContract.Candidate storage pointer)" - } - }, - "id": 615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "pk1", - "pk2" - ], - "nodeType": "FunctionCall", - "src": "8066:31:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", - "typeString": "struct HFLContract.Candidate memory" - } - }, - "src": "8031:66:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 617, - "nodeType": "ExpressionStatement", - "src": "8031:66:0" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 623, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8134:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8134:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "expression": { - "id": 618, - "name": "thisRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 569, - "src": "8107:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 621, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "joinedAddrs", - "nodeType": "MemberAccess", - "referencedDeclaration": 84, - "src": "8107:21:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 622, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "8107:26:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", - "typeString": "function (address[] storage pointer,address)" - } - }, - "id": 625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8107:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 626, - "nodeType": "ExpressionStatement", - "src": "8107:38:0" - }, - { - "expression": { - "hexValue": "74727565", - "id": 627, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8162:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 557, - "id": 628, - "nodeType": "Return", - "src": "8155:11:0" - } - ] - }, - "documentation": { - "id": 538, - "nodeType": "StructuredDocumentation", - "src": "7135:255:0", - "text": " @dev called by client, join for that round of computation\n @param taskId taskId\n @param round the round to join\n @param pk1 used for secure communication channel establishment\n @param pk2 used for mask generation" - }, - "functionSelector": "91d48f52", - "id": 630, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 549, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 540, - "src": "7540:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 550, - "kind": "modifierInvocation", - "modifierName": { - "id": 548, - "name": "taskExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 210, - "src": "7529:10:0" - }, - "nodeType": "ModifierInvocation", - "src": "7529:18:0" - }, - { - "arguments": [ - { - "id": 552, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 540, - "src": "7560:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 553, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 542, - "src": "7568:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 554, - "kind": "modifierInvocation", - "modifierName": { - "id": 551, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "7548:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "7548:26:0" - } - ], - "name": "joinRound", - "nameLocation": "7404:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 547, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 540, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "7431:6:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7423:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 539, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7423:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 542, - "mutability": "mutable", - "name": "round", - "nameLocation": "7454:5:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7447:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 541, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "7447:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 544, - "mutability": "mutable", - "name": "pk1", - "nameLocation": "7484:3:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7469:18:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 543, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7469:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 546, - "mutability": "mutable", - "name": "pk2", - "nameLocation": "7512:3:0", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7497:18:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 545, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7497:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7413:108:0" - }, - "returnParameters": { - "id": 557, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 556, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 630, - "src": "7584:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 555, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7584:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7583:6:0" - }, - "scope": 1927, - "src": "7395:778:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 692, - "nodeType": "Block", - "src": "8468:301:0", - "statements": [ - { - "assignments": [ - 653 - ], - "declarations": [ - { - "constant": false, - "id": 653, - "mutability": "mutable", - "name": "candidates", - "nameLocation": "8497:10:0", - "nodeType": "VariableDeclaration", - "scope": 692, - "src": "8478:29:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate[]" - }, - "typeName": { - "baseType": { - "id": 651, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 650, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "8478:9:0" - }, - "referencedDeclaration": 67, - "src": "8478:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - }, - "id": 652, - "nodeType": "ArrayTypeName", - "src": "8478:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.Candidate[]" - } - }, - "visibility": "internal" - } - ], - "id": 661, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 658, - "name": "candidateAddrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 638, - "src": "8526:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "8526:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 657, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "8510:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct HFLContract.Candidate memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 655, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 654, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "8514:9:0" - }, - "referencedDeclaration": 67, - "src": "8514:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - }, - "id": 656, - "nodeType": "ArrayTypeName", - "src": "8514:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.Candidate[]" - } - } - }, - "id": 660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8510:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8478:70:0" - }, - { - "body": { - "id": 688, - "nodeType": "Block", - "src": "8610:126:0", - "statements": [ - { - "expression": { - "id": 686, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 673, - "name": "candidates", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8624:10:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate memory[] memory" - } - }, - "id": 675, - "indexExpression": { - "id": 674, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8635:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8624:13:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", - "typeString": "struct HFLContract.Candidate memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 676, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "8640:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 678, - "indexExpression": { - "id": 677, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "8651:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8640:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 680, - "indexExpression": { - "id": 679, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "8659:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8640:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "id": 681, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "8640:36:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 685, - "indexExpression": { - "baseExpression": { - "id": 682, - "name": "candidateAddrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 638, - "src": "8694:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 684, - "indexExpression": { - "id": 683, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8709:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8694:17:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8640:85:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "src": "8624:101:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_memory_ptr", - "typeString": "struct HFLContract.Candidate memory" - } - }, - "id": 687, - "nodeType": "ExpressionStatement", - "src": "8624:101:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 666, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8578:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 667, - "name": "candidateAddrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 638, - "src": "8582:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "8582:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8578:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 689, - "initializationExpression": { - "assignments": [ - 663 - ], - "declarations": [ - { - "constant": false, - "id": 663, - "mutability": "mutable", - "name": "i", - "nameLocation": "8571:1:0", - "nodeType": "VariableDeclaration", - "scope": 689, - "src": "8563:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 662, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8563:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 665, - "initialValue": { - "hexValue": "30", - "id": 664, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8575:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "8563:13:0" - }, - "loopExpression": { - "expression": { - "id": 671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "8605:3:0", - "subExpression": { - "id": 670, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "8605:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 672, - "nodeType": "ExpressionStatement", - "src": "8605:3:0" - }, - "nodeType": "ForStatement", - "src": "8558:178:0" - }, - { - "expression": { - "id": 690, - "name": "candidates", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "8752:10:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate memory[] memory" - } - }, - "functionReturnParameters": 648, - "id": 691, - "nodeType": "Return", - "src": "8745:17:0" - } - ] - }, - "documentation": { - "id": 631, - "nodeType": "StructuredDocumentation", - "src": "8179:92:0", - "text": " @dev called by anyone, get Client Pks\n @return candidate (pk1,pk2)" - }, - "functionSelector": "e26e8871", - "id": 693, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 641, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "8424:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 642, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "8432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 643, - "kind": "modifierInvocation", - "modifierName": { - "id": 640, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "8412:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "8412:26:0" - } - ], - "name": "getClientPublickeys", - "nameLocation": "8285:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 639, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 633, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "8322:6:0", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8314:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 632, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8314:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 635, - "mutability": "mutable", - "name": "round", - "nameLocation": "8345:5:0", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8338:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 634, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "8338:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 638, - "mutability": "mutable", - "name": "candidateAddrs", - "nameLocation": "8379:14:0", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8360:33:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 636, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8360:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 637, - "nodeType": "ArrayTypeName", - "src": "8360:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "8304:95:0" - }, - "returnParameters": { - "id": 648, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 647, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "8448:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.Candidate[]" - }, - "typeName": { - "baseType": { - "id": 645, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 644, - "name": "Candidate", - "nodeType": "IdentifierPath", - "referencedDeclaration": 67, - "src": "8448:9:0" - }, - "referencedDeclaration": 67, - "src": "8448:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage_ptr", - "typeString": "struct HFLContract.Candidate" - } - }, - "id": 646, - "nodeType": "ArrayTypeName", - "src": "8448:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Candidate_$67_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.Candidate[]" - } - }, - "visibility": "internal" - } - ], - "src": "8447:20:0" - }, - "scope": 1927, - "src": "8276:493:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 736, - "nodeType": "Block", - "src": "9118:331:0", - "statements": [ - { - "assignments": [ - 710 - ], - "declarations": [ - { - "constant": false, - "id": 710, - "mutability": "mutable", - "name": "temp", - "nameLocation": "9146:4:0", - "nodeType": "VariableDeclaration", - "scope": 736, - "src": "9128:22:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 709, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 708, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "9128:9:0" - }, - "referencedDeclaration": 85, - "src": "9128:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 716, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 711, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "9153:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 713, - "indexExpression": { - "id": 712, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 696, - "src": "9164:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9153:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 715, - "indexExpression": { - "id": 714, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 698, - "src": "9172:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9153:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9128:50:0" - }, - { - "expression": { - "id": 734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 717, - "name": "taskround", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 706, - "src": "9188:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 719, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9251:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 720, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currentRound", - "nodeType": "MemberAccess", - "referencedDeclaration": 69, - "src": "9251:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 721, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9293:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 722, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "maxSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 71, - "src": "9293:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 723, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9332:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 724, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "minSample", - "nodeType": "MemberAccess", - "referencedDeclaration": 73, - "src": "9332:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "arguments": [ - { - "expression": { - "id": 728, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9376:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 729, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "9376:11:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - ], - "components": [ - { - "id": 726, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9369:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 725, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "9369:5:0", - "typeDescriptions": {} - } - } - ], - "id": 727, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "9368:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - } - }, - "id": 730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9368:20:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "expression": { - "id": 731, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 710, - "src": "9415:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 732, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "joinedAddrs", - "nodeType": "MemberAccess", - "referencedDeclaration": 84, - "src": "9415:16:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - ], - "id": 718, - "name": "ExtCallTaskRoundStruct", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "9200:22:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr_$", - "typeString": "type(struct HFLContract.ExtCallTaskRoundStruct storage pointer)" - } - }, - "id": 733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "currentRound", - "maxSample", - "minSample", - "status", - "joinedAddrs" - ], - "nodeType": "FunctionCall", - "src": "9200:242:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" - } - }, - "src": "9188:254:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct memory" - } - }, - "id": 735, - "nodeType": "ExpressionStatement", - "src": "9188:254:0" - } - ] - }, - "documentation": { - "id": 694, - "nodeType": "StructuredDocumentation", - "src": "8775:161:0", - "text": " @dev getting task round infos\n @param taskId taskId\n @param round the round to fetch\n @return taskround the task round infos" - }, - "functionSelector": "4893b362", - "id": 737, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 701, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 696, - "src": "9041:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 702, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 698, - "src": "9049:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 703, - "kind": "modifierInvocation", - "modifierName": { - "id": 700, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "9029:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "9029:26:0" - } - ], - "name": "getTaskRound", - "nameLocation": "8950:12:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 699, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 696, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "8971:6:0", - "nodeType": "VariableDeclaration", - "scope": 737, - "src": "8963:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 695, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8963:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 698, - "mutability": "mutable", - "name": "round", - "nameLocation": "8986:5:0", - "nodeType": "VariableDeclaration", - "scope": 737, - "src": "8979:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 697, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "8979:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "8962:30:0" - }, - "returnParameters": { - "id": 707, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 706, - "mutability": "mutable", - "name": "taskround", - "nameLocation": "9103:9:0", - "nodeType": "VariableDeclaration", - "scope": 737, - "src": "9073:39:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_memory_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct" - }, - "typeName": { - "id": 705, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 704, - "name": "ExtCallTaskRoundStruct", - "nodeType": "IdentifierPath", - "referencedDeclaration": 97, - "src": "9073:22:0" - }, - "referencedDeclaration": 97, - "src": "9073:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_ExtCallTaskRoundStruct_$97_storage_ptr", - "typeString": "struct HFLContract.ExtCallTaskRoundStruct" - } - }, - "visibility": "internal" - } - ], - "src": "9072:41:0" - }, - "scope": 1927, - "src": "8941:508:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 812, - "nodeType": "Block", - "src": "9828:431:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 756, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "9846:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "9846:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9861:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "9846:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4d7573742070726f7669646520616464726573736573", - "id": 760, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9864:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171", - "typeString": "literal_string \"Must provide addresses\"" - }, - "value": "Must provide addresses" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1730c615049fc71b105221f87f44650c124a9e2a262a75c06e886ad5d94b171", - "typeString": "literal_string \"Must provide addresses\"" - } - ], - "id": 755, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9838:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9838:51:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 762, - "nodeType": "ExpressionStatement", - "src": "9838:51:0" - }, - { - "assignments": [ - 765 - ], - "declarations": [ - { - "constant": false, - "id": 765, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "9917:8:0", - "nodeType": "VariableDeclaration", - "scope": 812, - "src": "9899:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 764, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 763, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "9899:9:0" - }, - "referencedDeclaration": 85, - "src": "9899:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 771, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 766, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "9928:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 768, - "indexExpression": { - "id": 767, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "9939:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9928:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 770, - "indexExpression": { - "id": 769, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "9947:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9928:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9899:54:0" - }, - { - "body": { - "id": 797, - "nodeType": "Block", - "src": "10006:148:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 793, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "expression": { - "id": 784, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 765, - "src": "10045:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 785, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "10045:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 789, - "indexExpression": { - "baseExpression": { - "id": 786, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "10065:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 788, - "indexExpression": { - "id": 787, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10071:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10065:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10045:29:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 790, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "pk1", - "nodeType": "MemberAccess", - "referencedDeclaration": 64, - "src": "10045:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "10045:40:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 792, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10088:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "10045:44:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616e646964617465206d757374206578697374", - "id": 794, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10107:22:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - }, - "value": "Candidate must exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - } - ], - "id": 783, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10020:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10020:123:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 796, - "nodeType": "ExpressionStatement", - "src": "10020:123:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 779, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 776, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "9983:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 777, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "9987:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 778, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "9987:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9983:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 798, - "initializationExpression": { - "assignments": [ - 773 - ], - "declarations": [ - { - "constant": false, - "id": 773, - "mutability": "mutable", - "name": "i", - "nameLocation": "9976:1:0", - "nodeType": "VariableDeclaration", - "scope": 798, - "src": "9968:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 772, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9968:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 775, - "initialValue": { - "hexValue": "30", - "id": 774, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9980:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9968:13:0" - }, - "loopExpression": { - "expression": { - "id": 781, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "10001:3:0", - "subExpression": { - "id": 780, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 773, - "src": "10001:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 782, - "nodeType": "ExpressionStatement", - "src": "10001:3:0" - }, - "nodeType": "ForStatement", - "src": "9963:191:0" - }, - { - "expression": { - "id": 804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 799, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 765, - "src": "10163:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 801, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "10163:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 802, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "10181:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 803, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "10181:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "10163:37:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 805, - "nodeType": "ExpressionStatement", - "src": "10163:37:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 807, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "10231:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 808, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "10239:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 809, - "name": "addrs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "10246:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - ], - "id": 806, - "name": "PartnerSelected", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 147, - "src": "10215:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address[] memory)" - } - }, - "id": 810, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10215:37:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 811, - "nodeType": "EmitStatement", - "src": "10210:42:0" - } - ] - }, - "documentation": { - "id": 738, - "nodeType": "StructuredDocumentation", - "src": "9455:204:0", - "text": " @dev called by task developer, randomly choose candidates to be computation nodes\n @dev clients now should start secret sharing phase\n @param addrs selected client addresses" - }, - "functionSelector": "41e865cb", - "id": 813, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 748, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "9793:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 749, - "kind": "modifierInvocation", - "modifierName": { - "id": 747, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "9783:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "9783:17:0" - }, - { - "arguments": [ - { - "id": 751, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "9813:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 752, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "9821:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 753, - "kind": "modifierInvocation", - "modifierName": { - "id": 750, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "9801:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "9801:26:0" - } - ], - "name": "selectCandidates", - "nameLocation": "9673:16:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 746, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 740, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "9707:6:0", - "nodeType": "VariableDeclaration", - "scope": 813, - "src": "9699:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 739, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "9699:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 742, - "mutability": "mutable", - "name": "round", - "nameLocation": "9730:5:0", - "nodeType": "VariableDeclaration", - "scope": 813, - "src": "9723:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 741, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "9723:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 745, - "mutability": "mutable", - "name": "addrs", - "nameLocation": "9764:5:0", - "nodeType": "VariableDeclaration", - "scope": 813, - "src": "9745:24:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 743, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9745:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 744, - "nodeType": "ArrayTypeName", - "src": "9745:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "9689:86:0" - }, - "returnParameters": { - "id": 754, - "nodeType": "ParameterList", - "parameters": [], - "src": "9828:0:0" - }, - "scope": 1927, - "src": "9664:595:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 864, - "nodeType": "Block", - "src": "10956:274:0", - "statements": [ - { - "assignments": [ - 837 - ], - "declarations": [ - { - "constant": false, - "id": 837, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "10998:5:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "10966:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 835, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 834, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "10966:21:0" - }, - "referencedDeclaration": 49, - "src": "10966:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 836, - "nodeType": "ArrayTypeName", - "src": "10966:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 841, - "initialValue": { - "baseExpression": { - "id": 838, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "11006:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 840, - "indexExpression": { - "id": 839, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "11028:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11006:29:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "10966:69:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 843, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 837, - "src": "11053:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11053:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 845, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "11069:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "11053:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 847, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11076:28:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - }, - "value": "The Task Round Must exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - } - ], - "id": 842, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11045:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11045:60:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 849, - "nodeType": "ExpressionStatement", - "src": "11045:60:0" - }, - { - "assignments": [ - 852 - ], - "declarations": [ - { - "constant": false, - "id": 852, - "mutability": "mutable", - "name": "cmmt", - "nameLocation": "11145:4:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "11115:34:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 851, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 850, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "11115:21:0" - }, - "referencedDeclaration": 49, - "src": "11115:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 856, - "initialValue": { - "baseExpression": { - "id": 853, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 837, - "src": "11152:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 855, - "indexExpression": { - "id": 854, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "11158:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11152:12:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11115:49:0" - }, - { - "expression": { - "id": 862, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 857, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 831, - "src": "11174:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "expression": { - "id": 858, - "name": "cmmt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 852, - "src": "11187:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 859, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "weightCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "11187:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes storage ref)" - } - }, - "id": 861, - "indexExpression": { - "id": 860, - "name": "clientaddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "11209:13:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11187:36:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "src": "11174:49:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 863, - "nodeType": "ExpressionStatement", - "src": "11174:49:0" - } - ] - }, - "documentation": { - "id": 814, - "nodeType": "StructuredDocumentation", - "src": "10265:426:0", - "text": " @dev called by task developer, get commitments from blockchain\n @dev (Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))\n @param taskId taskId\n @param clientaddress the client that publish the commitments\n @param round the round of that commitment\n @return commitment commitment data" - }, - "functionSelector": "e36bb28c", - "id": 865, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 823, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "10856:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 824, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "10864:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 825, - "kind": "modifierInvocation", - "modifierName": { - "id": 822, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "10844:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "10844:26:0" - }, - { - "arguments": [ - { - "id": 827, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "10895:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 828, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 820, - "src": "10903:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 829, - "kind": "modifierInvocation", - "modifierName": { - "id": 826, - "name": "roundcmmtExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 265, - "src": "10879:15:0" - }, - "nodeType": "ModifierInvocation", - "src": "10879:30:0" - } - ], - "name": "getResultCommitment", - "nameLocation": "10705:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 821, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 816, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "10742:6:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10734:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 815, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "10734:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 818, - "mutability": "mutable", - "name": "clientaddress", - "nameLocation": "10766:13:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10758:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 817, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10758:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 820, - "mutability": "mutable", - "name": "round", - "nameLocation": "10796:5:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10789:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 819, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "10789:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "10724:83:0" - }, - "returnParameters": { - "id": 832, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 831, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "10940:10:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "10927:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 830, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10927:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "10926:25:0" - }, - "scope": 1927, - "src": "10696:534:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 956, - "nodeType": "Block", - "src": "11576:430:0", - "statements": [ - { - "assignments": [ - 894 - ], - "declarations": [ - { - "constant": false, - "id": 894, - "mutability": "mutable", - "name": "cmmts", - "nameLocation": "11618:5:0", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11586:37:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 892, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 891, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "11586:21:0" - }, - "referencedDeclaration": 49, - "src": "11586:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 893, - "nodeType": "ArrayTypeName", - "src": "11586:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 898, - "initialValue": { - "baseExpression": { - "id": 895, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "11626:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 897, - "indexExpression": { - "id": 896, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 868, - "src": "11648:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11626:29:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11586:69:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 903, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 900, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "11673:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11673:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 902, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11689:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "11673:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546865205461736b20526f756e64204d75737420657869737473", - "id": 904, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11696:28:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - }, - "value": "The Task Round Must exists" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_31055a82208cc7bb9722a2fbebfcdc6b582512796a8a7bcd38e7ce1bcea5c293", - "typeString": "literal_string \"The Task Round Must exists\"" - } - ], - "id": 899, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11665:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 905, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11665:60:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 906, - "nodeType": "ExpressionStatement", - "src": "11665:60:0" - }, - { - "assignments": [ - 909 - ], - "declarations": [ - { - "constant": false, - "id": 909, - "mutability": "mutable", - "name": "cmmt", - "nameLocation": "11765:4:0", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11735:34:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 908, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 907, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "11735:21:0" - }, - "referencedDeclaration": 49, - "src": "11735:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 913, - "initialValue": { - "baseExpression": { - "id": 910, - "name": "cmmts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "11772:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 912, - "indexExpression": { - "id": 911, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11778:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11772:12:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11735:49:0" - }, - { - "assignments": [ - 918 - ], - "declarations": [ - { - "constant": false, - "id": 918, - "mutability": "mutable", - "name": "ssdatas", - "nameLocation": "11810:7:0", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "11794:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData[]" - }, - "typeName": { - "baseType": { - "id": 916, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 915, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "11794:6:0" - }, - "referencedDeclaration": 106, - "src": "11794:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - }, - "id": 917, - "nodeType": "ArrayTypeName", - "src": "11794:8:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.SSData[]" - } - }, - "visibility": "internal" - } - ], - "id": 926, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 923, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "11833:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 924, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11833:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 922, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "11820:12:0", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct HFLContract.SSData memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 920, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 919, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "11824:6:0" - }, - "referencedDeclaration": 106, - "src": "11824:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - }, - "id": 921, - "nodeType": "ArrayTypeName", - "src": "11824:8:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.SSData[]" - } - } - }, - "id": 925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11820:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11794:54:0" - }, - { - "body": { - "id": 952, - "nodeType": "Block", - "src": "11903:73:0", - "statements": [ - { - "expression": { - "id": 950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 938, - "name": "ssdatas", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "11917:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData memory[] memory" - } - }, - "id": 940, - "indexExpression": { - "id": 939, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11925:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11917:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", - "typeString": "struct HFLContract.SSData memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "components": [ - { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 941, - "name": "cmmt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 909, - "src": "11931:4:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 942, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "11931:11:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 946, - "indexExpression": { - "baseExpression": { - "id": 943, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "11943:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 945, - "indexExpression": { - "id": 944, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11951:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11943:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11931:23:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 948, - "indexExpression": { - "id": 947, - "name": "receiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 875, - "src": "11955:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11931:33:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - } - ], - "id": 949, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "11930:35:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "src": "11917:48:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_memory_ptr", - "typeString": "struct HFLContract.SSData memory" - } - }, - "id": 951, - "nodeType": "ExpressionStatement", - "src": "11917:48:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 934, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 931, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11878:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 932, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "11882:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 933, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11882:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11878:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 953, - "initializationExpression": { - "assignments": [ - 928 - ], - "declarations": [ - { - "constant": false, - "id": 928, - "mutability": "mutable", - "name": "i", - "nameLocation": "11871:1:0", - "nodeType": "VariableDeclaration", - "scope": 953, - "src": "11863:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 927, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11863:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 930, - "initialValue": { - "hexValue": "30", - "id": 929, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11875:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "11863:13:0" - }, - "loopExpression": { - "expression": { - "id": 936, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "11898:3:0", - "subExpression": { - "id": 935, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "11898:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 937, - "nodeType": "ExpressionStatement", - "src": "11898:3:0" - }, - "nodeType": "ForStatement", - "src": "11858:118:0" - }, - { - "expression": { - "id": 954, - "name": "ssdatas", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "11992:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData memory[] memory" - } - }, - "functionReturnParameters": 889, - "id": 955, - "nodeType": "Return", - "src": "11985:14:0" - } - ] - }, - "documentation": { - "id": 866, - "nodeType": "StructuredDocumentation", - "src": "11236:50:0", - "text": " @dev called by any participants" - }, - "functionSelector": "5ed14248", - "id": 957, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 878, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 868, - "src": "11484:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 879, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11492:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 880, - "kind": "modifierInvocation", - "modifierName": { - "id": 877, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "11472:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "11472:26:0" - }, - { - "arguments": [ - { - "id": 882, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 868, - "src": "11523:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 883, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 870, - "src": "11531:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 884, - "kind": "modifierInvocation", - "modifierName": { - "id": 881, - "name": "roundcmmtExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 265, - "src": "11507:15:0" - }, - "nodeType": "ModifierInvocation", - "src": "11507:30:0" - } - ], - "name": "getSecretSharingDatas", - "nameLocation": "11300:21:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 876, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 868, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "11339:6:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11331:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 867, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "11331:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 870, - "mutability": "mutable", - "name": "round", - "nameLocation": "11362:5:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11355:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 869, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "11355:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 873, - "mutability": "mutable", - "name": "senders", - "nameLocation": "11396:7:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11377:26:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 871, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11377:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 872, - "nodeType": "ArrayTypeName", - "src": "11377:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 875, - "mutability": "mutable", - "name": "receiver", - "nameLocation": "11421:8:0", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11413:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 874, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11413:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "11321:114:0" - }, - "returnParameters": { - "id": 889, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 888, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 957, - "src": "11555:15:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_memory_ptr_$dyn_memory_ptr", - "typeString": "struct HFLContract.SSData[]" - }, - "typeName": { - "baseType": { - "id": 886, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 885, - "name": "SSData", - "nodeType": "IdentifierPath", - "referencedDeclaration": 106, - "src": "11555:6:0" - }, - "referencedDeclaration": 106, - "src": "11555:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage_ptr", - "typeString": "struct HFLContract.SSData" - } - }, - "id": 887, - "nodeType": "ArrayTypeName", - "src": "11555:8:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_SSData_$106_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.SSData[]" - } - }, - "visibility": "internal" - } - ], - "src": "11554:17:0" - }, - "scope": 1927, - "src": "11291:715:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1033, - "nodeType": "Block", - "src": "12603:525:0", - "statements": [ - { - "assignments": [ - 977 - ], - "declarations": [ - { - "constant": false, - "id": 977, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "12631:8:0", - "nodeType": "VariableDeclaration", - "scope": 1033, - "src": "12613:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 976, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 975, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "12613:9:0" - }, - "referencedDeclaration": 85, - "src": "12613:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 983, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 978, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "12642:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 980, - "indexExpression": { - "id": 979, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "12653:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12642:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 982, - "indexExpression": { - "id": 981, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 962, - "src": "12661:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12642:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12613:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 989, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 985, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 977, - "src": "12698:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 986, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "12698:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 987, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "12717:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 988, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Calculating", - "nodeType": "MemberAccess", - "referencedDeclaration": 11, - "src": "12717:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "12698:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616c63756c6174696e6720686173206e6f742073746172746564", - "id": 990, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12754:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850", - "typeString": "literal_string \"Calculating has not started\"" - }, - "value": "Calculating has not started" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_dc1d8275a7bca804155cf1e758419206348508e31ef2eb69ca49ca2f697c3850", - "typeString": "literal_string \"Calculating has not started\"" - } - ], - "id": 984, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12677:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 991, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12677:116:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 992, - "nodeType": "ExpressionStatement", - "src": "12677:116:0" - }, - { - "expression": { - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 993, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 977, - "src": "12803:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 995, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "12803:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 996, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "12821:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 997, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Aggregating", - "nodeType": "MemberAccess", - "referencedDeclaration": 12, - "src": "12821:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "12803:41:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 999, - "nodeType": "ExpressionStatement", - "src": "12803:41:0" - }, - { - "body": { - "id": 1025, - "nodeType": "Block", - "src": "12905:156:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1021, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "expression": { - "id": 1012, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 977, - "src": "12944:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1013, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "candidates", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "12944:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Candidate_$67_storage_$", - "typeString": "mapping(address => struct HFLContract.Candidate storage ref)" - } - }, - "id": 1017, - "indexExpression": { - "baseExpression": { - "id": 1014, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "12964:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1016, - "indexExpression": { - "id": 1015, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "12978:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12964:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12944:37:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Candidate_$67_storage", - "typeString": "struct HFLContract.Candidate storage ref" - } - }, - "id": 1018, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "pk1", - "nodeType": "MemberAccess", - "referencedDeclaration": 64, - "src": "12944:41:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1019, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12944:48:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1020, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12995:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12944:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "43616e646964617465206d757374206578697374", - "id": 1022, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13014:22:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - }, - "value": "Candidate must exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6597947c874f65596e3f13f1e8c18283cd4eec625e342381c0328b0fd7459640", - "typeString": "literal_string \"Candidate must exist\"" - } - ], - "id": 1011, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12919:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12919:131:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1024, - "nodeType": "ExpressionStatement", - "src": "12919:131:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1007, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1004, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "12874:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1005, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "12878:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12878:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12874:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1026, - "initializationExpression": { - "assignments": [ - 1001 - ], - "declarations": [ - { - "constant": false, - "id": 1001, - "mutability": "mutable", - "name": "i", - "nameLocation": "12867:1:0", - "nodeType": "VariableDeclaration", - "scope": 1026, - "src": "12859:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1000, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12859:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1003, - "initialValue": { - "hexValue": "30", - "id": 1002, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12871:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "12859:13:0" - }, - "loopExpression": { - "expression": { - "id": 1009, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "12900:3:0", - "subExpression": { - "id": 1008, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "12900:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1010, - "nodeType": "ExpressionStatement", - "src": "12900:3:0" - }, - "nodeType": "ForStatement", - "src": "12854:207:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1028, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "13092:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1029, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 962, - "src": "13100:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 1030, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "13107:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - ], - "id": 1027, - "name": "AggregateStarted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "13075:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address[] memory)" - } - }, - "id": 1031, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13075:46:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1032, - "nodeType": "EmitStatement", - "src": "13070:51:0" - } - ] - }, - "documentation": { - "id": 958, - "nodeType": "StructuredDocumentation", - "src": "12012:416:0", - "text": " @dev called by task developer, notifying all participants that the ss and gradient transfer phase has finished\n @dev client now should send corresponded ss share pieces to task developer according to the online status given by the task developer\n @param taskId taskId\n @param round the task round\n @param onlineClients clients that has transfered gradient to task developer" - }, - "functionSelector": "4956219b", - "id": 1034, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 968, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "12568:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 969, - "kind": "modifierInvocation", - "modifierName": { - "id": 967, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "12558:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "12558:17:0" - }, - { - "arguments": [ - { - "id": 971, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 960, - "src": "12588:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 972, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 962, - "src": "12596:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 973, - "kind": "modifierInvocation", - "modifierName": { - "id": 970, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "12576:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "12576:26:0" - } - ], - "name": "startAggregate", - "nameLocation": "12442:14:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 966, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 960, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "12474:6:0", - "nodeType": "VariableDeclaration", - "scope": 1034, - "src": "12466:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 959, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "12466:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 962, - "mutability": "mutable", - "name": "round", - "nameLocation": "12497:5:0", - "nodeType": "VariableDeclaration", - "scope": 1034, - "src": "12490:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 961, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "12490:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 965, - "mutability": "mutable", - "name": "onlineClients", - "nameLocation": "12531:13:0", - "nodeType": "VariableDeclaration", - "scope": 1034, - "src": "12512:32:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 963, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12512:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 964, - "nodeType": "ArrayTypeName", - "src": "12512:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "12456:94:0" - }, - "returnParameters": { - "id": 974, - "nodeType": "ParameterList", - "parameters": [], - "src": "12603:0:0" - }, - "scope": 1927, - "src": "12433:695:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1083, - "nodeType": "Block", - "src": "13534:307:0", - "statements": [ - { - "assignments": [ - 1054 - ], - "declarations": [ - { - "constant": false, - "id": 1054, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "13562:8:0", - "nodeType": "VariableDeclaration", - "scope": 1083, - "src": "13544:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1053, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1052, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "13544:9:0" - }, - "referencedDeclaration": 85, - "src": "13544:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1060, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1055, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "13573:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1057, - "indexExpression": { - "id": 1056, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13584:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13573:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1059, - "indexExpression": { - "id": 1058, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "13592:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13573:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13544:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1066, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1062, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "13629:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1063, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "13629:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1064, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "13648:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1065, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "13648:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "13629:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5468697320726f756e64206973206e6f742072756e6e696e67206e6f77", - "id": 1067, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13681:31:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2", - "typeString": "literal_string \"This round is not running now\"" - }, - "value": "This round is not running now" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_424ac5b45603d96e3730c4fda222f3e9acf74d4b6c741086c00f4abd81b097c2", - "typeString": "literal_string \"This round is not running now\"" - } - ], - "id": 1061, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13608:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1068, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13608:114:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1069, - "nodeType": "ExpressionStatement", - "src": "13608:114:0" - }, - { - "expression": { - "id": 1075, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1070, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "13732:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1072, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "13732:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1073, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "13750:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1074, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Calculating", - "nodeType": "MemberAccess", - "referencedDeclaration": 11, - "src": "13750:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "13732:41:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 1076, - "nodeType": "ExpressionStatement", - "src": "13732:41:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1078, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13805:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1079, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "13813:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 1080, - "name": "onlineClients", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "13820:13:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - ], - "id": 1077, - "name": "CalculateStarted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "13788:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address[] memory)" - } - }, - "id": 1081, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13788:46:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1082, - "nodeType": "EmitStatement", - "src": "13783:51:0" - } - ] - }, - "documentation": { - "id": 1035, - "nodeType": "StructuredDocumentation", - "src": "13134:225:0", - "text": " @dev called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server\n @param taskId taskId\n @param round the task round" - }, - "functionSelector": "abf2013a", - "id": 1084, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1045, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13499:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 1046, - "kind": "modifierInvocation", - "modifierName": { - "id": 1044, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "13489:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "13489:17:0" - }, - { - "arguments": [ - { - "id": 1048, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1037, - "src": "13519:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1049, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "13527:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1050, - "kind": "modifierInvocation", - "modifierName": { - "id": 1047, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "13507:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "13507:26:0" - } - ], - "name": "startCalculate", - "nameLocation": "13373:14:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1043, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1037, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "13405:6:0", - "nodeType": "VariableDeclaration", - "scope": 1084, - "src": "13397:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1036, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13397:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1039, - "mutability": "mutable", - "name": "round", - "nameLocation": "13428:5:0", - "nodeType": "VariableDeclaration", - "scope": 1084, - "src": "13421:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1038, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "13421:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1042, - "mutability": "mutable", - "name": "onlineClients", - "nameLocation": "13462:13:0", - "nodeType": "VariableDeclaration", - "scope": 1084, - "src": "13443:32:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1040, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13443:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1041, - "nodeType": "ArrayTypeName", - "src": "13443:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "13387:94:0" - }, - "returnParameters": { - "id": 1051, - "nodeType": "ParameterList", - "parameters": [], - "src": "13534:0:0" - }, - "scope": 1927, - "src": "13364:477:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1120, - "nodeType": "Block", - "src": "14104:157:0", - "statements": [ - { - "assignments": [ - 1101 - ], - "declarations": [ - { - "constant": false, - "id": 1101, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "14132:8:0", - "nodeType": "VariableDeclaration", - "scope": 1120, - "src": "14114:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1100, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1099, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "14114:9:0" - }, - "referencedDeclaration": 85, - "src": "14114:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1107, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1102, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "14143:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1104, - "indexExpression": { - "id": 1103, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14154:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14143:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1106, - "indexExpression": { - "id": 1105, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "14162:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14143:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "14114:54:0" - }, - { - "expression": { - "id": 1113, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1108, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1101, - "src": "14178:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1110, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "14178:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1111, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "14196:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1112, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Finished", - "nodeType": "MemberAccess", - "referencedDeclaration": 13, - "src": "14196:20:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "14178:38:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "id": 1114, - "nodeType": "ExpressionStatement", - "src": "14178:38:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1116, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14240:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1117, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "14248:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 1115, - "name": "RoundEnd", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "14231:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", - "typeString": "function (bytes32,uint64)" - } - }, - "id": 1118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14231:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1119, - "nodeType": "EmitStatement", - "src": "14226:28:0" - } - ] - }, - "documentation": { - "id": 1085, - "nodeType": "StructuredDocumentation", - "src": "13847:124:0", - "text": " @dev called by task developer, close round\n @param taskId taskId\n @param round the task round" - }, - "functionSelector": "01bd7269", - "id": 1121, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1092, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14057:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "id": 1093, - "kind": "modifierInvocation", - "modifierName": { - "id": 1091, - "name": "taskOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 282, - "src": "14047:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "14047:17:0" - }, - { - "arguments": [ - { - "id": 1095, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1087, - "src": "14085:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1096, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "14093:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1097, - "kind": "modifierInvocation", - "modifierName": { - "id": 1094, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "14073:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "14073:26:0" - } - ], - "name": "endRound", - "nameLocation": "13985:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1090, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1087, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "14002:6:0", - "nodeType": "VariableDeclaration", - "scope": 1121, - "src": "13994:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1086, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13994:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1089, - "mutability": "mutable", - "name": "round", - "nameLocation": "14017:5:0", - "nodeType": "VariableDeclaration", - "scope": 1121, - "src": "14010:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1088, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "14010:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "13993:30:0" - }, - "returnParameters": { - "id": 1098, - "nodeType": "ParameterList", - "parameters": [], - "src": "14104:0:0" - }, - "scope": 1927, - "src": "13976:285:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1216, - "nodeType": "Block", - "src": "14627:972:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1139, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1136, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "14658:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1137, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14658:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1138, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14684:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "14658:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1140, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "14705:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1141, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14705:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1142, - "name": "maxWeightCommitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "14732:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "14705:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "14658:99:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14771:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1135, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14637:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14637:192:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1147, - "nodeType": "ExpressionStatement", - "src": "14637:192:0" - }, - { - "assignments": [ - 1150 - ], - "declarations": [ - { - "constant": false, - "id": 1150, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "14857:8:0", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "14839:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1149, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1148, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "14839:9:0" - }, - "referencedDeclaration": 85, - "src": "14839:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1156, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1151, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "14868:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1153, - "indexExpression": { - "id": 1152, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "14879:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14868:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1155, - "indexExpression": { - "id": 1154, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "14887:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14868:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "14839:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1158, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1150, - "src": "14924:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1159, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "14924:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1160, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "14943:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Calculating", - "nodeType": "MemberAccess", - "referencedDeclaration": 11, - "src": "14943:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "14924:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e2075706c6f6164696e67207068617365", - "id": 1163, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14980:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835", - "typeString": "literal_string \"not in uploading phase\"" - }, - "value": "not in uploading phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a95d5f002777be5a762bcc90a1052865cfd97cf0df20edc13ce19ef1c02b3835", - "typeString": "literal_string \"not in uploading phase\"" - } - ], - "id": 1157, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14903:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1164, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14903:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1165, - "nodeType": "ExpressionStatement", - "src": "14903:111:0" - }, - { - "assignments": [ - 1170 - ], - "declarations": [ - { - "constant": false, - "id": 1170, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "15056:11:0", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "15024:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1168, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1167, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "15024:21:0" - }, - "referencedDeclaration": 49, - "src": "15024:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1169, - "nodeType": "ArrayTypeName", - "src": "15024:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1174, - "initialValue": { - "baseExpression": { - "id": 1171, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "15070:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1173, - "indexExpression": { - "id": 1172, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "15105:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15070:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15024:97:0" - }, - { - "assignments": [ - 1177 - ], - "declarations": [ - { - "constant": false, - "id": 1177, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "15161:10:0", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "15131:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1176, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1175, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "15131:21:0" - }, - "referencedDeclaration": 49, - "src": "15131:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1181, - "initialValue": { - "baseExpression": { - "id": 1178, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1170, - "src": "15174:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1180, - "indexExpression": { - "id": 1179, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "15186:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15174:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15131:61:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "expression": { - "id": 1183, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "15223:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1184, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "weightCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "15223:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes storage ref)" - } - }, - "id": 1187, - "indexExpression": { - "expression": { - "id": 1185, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15251:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15251:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15223:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1188, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15223:46:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1189, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15273:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "15223:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d756c7469706c652074696d6573", - "id": 1191, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15288:47:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086", - "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" - }, - "value": "cannot upload weightCommitment multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1d29cc716fa7d1bfb1c7c038bbcad165c7fe78b9a64b0891b3a6f06e5e013086", - "typeString": "literal_string \"cannot upload weightCommitment multiple times\"" - } - ], - "id": 1182, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15202:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15202:143:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1193, - "nodeType": "ExpressionStatement", - "src": "15202:143:0" - }, - { - "expression": { - "id": 1201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "expression": { - "id": 1194, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "15355:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1198, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "weightCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "15355:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bytes_storage_$", - "typeString": "mapping(address => bytes storage ref)" - } - }, - "id": 1199, - "indexExpression": { - "expression": { - "id": 1196, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15383:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15383:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "15355:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1200, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "15397:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "15355:58:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1202, - "nodeType": "ExpressionStatement", - "src": "15355:58:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1204, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "15457:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1205, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "15477:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1206, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15496:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15496:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 1210, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15528:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15520:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1208, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15520:7:0", - "typeDescriptions": {} - } - }, - "id": 1211, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15520:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "574549474854", - "id": 1212, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15544:8:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58", - "typeString": "literal_string \"WEIGHT\"" - }, - "value": "WEIGHT" - }, - { - "id": 1213, - "name": "resultCommitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "15566:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_9093191dfef32f77a8d458d070eea5ee3d534f8823152bbd7466598024ea2f58", - "typeString": "literal_string \"WEIGHT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1203, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "15428:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1214, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15428:164:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1215, - "nodeType": "EmitStatement", - "src": "15423:169:0" - } - ] - }, - "documentation": { - "id": 1122, - "nodeType": "StructuredDocumentation", - "src": "14267:196:0", - "text": " @dev called by client, upload weight commitment\n @param taskId taskId\n @param round the task round\n @param resultCommitment masked model incremental commitment" - }, - "functionSelector": "ebd3e836", - "id": 1217, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1131, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "14612:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1132, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "14620:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1133, - "kind": "modifierInvocation", - "modifierName": { - "id": 1130, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "14600:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "14600:26:0" - } - ], - "name": "uploadResultCommitment", - "nameLocation": "14477:22:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1129, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1124, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "14517:6:0", - "nodeType": "VariableDeclaration", - "scope": 1217, - "src": "14509:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1123, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "14509:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1126, - "mutability": "mutable", - "name": "round", - "nameLocation": "14540:5:0", - "nodeType": "VariableDeclaration", - "scope": 1217, - "src": "14533:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1125, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "14533:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1128, - "mutability": "mutable", - "name": "resultCommitment", - "nameLocation": "14570:16:0", - "nodeType": "VariableDeclaration", - "scope": 1217, - "src": "14555:31:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1127, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "14555:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "14499:93:0" - }, - "returnParameters": { - "id": 1134, - "nodeType": "ParameterList", - "parameters": [], - "src": "14627:0:0" - }, - "scope": 1927, - "src": "14468:1131:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1368, - "nodeType": "Block", - "src": "16083:1489:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1236, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "16114:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16114:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1238, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16134:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16134:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16114:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f2073656564436f6d6d69746d656e7473206c656e677468", - "id": 1241, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16170:57:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", - "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" - }, - "value": "receivers length is not equal to seedCommitments length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2652e4446c35443dd46e6f42d90ee561ae82b147754f341247a51873c6fe7c95", - "typeString": "literal_string \"receivers length is not equal to seedCommitments length\"" - } - ], - "id": 1235, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16093:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1242, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16093:144:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1243, - "nodeType": "ExpressionStatement", - "src": "16093:144:0" - }, - { - "body": { - "id": 1272, - "nodeType": "Block", - "src": "16300:232:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1268, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1256, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16339:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1258, - "indexExpression": { - "id": 1257, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16355:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16339:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16339:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16367:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16339:29:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1267, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1262, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16392:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1264, - "indexExpression": { - "id": 1263, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16408:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16392:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1265, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16392:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1266, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "16421:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "16392:49:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16339:102:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1269, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16459:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1255, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16314:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1270, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16314:207:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1271, - "nodeType": "ExpressionStatement", - "src": "16314:207:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1248, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16267:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1249, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16271:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1250, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16271:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16267:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1273, - "initializationExpression": { - "assignments": [ - 1245 - ], - "declarations": [ - { - "constant": false, - "id": 1245, - "mutability": "mutable", - "name": "i", - "nameLocation": "16260:1:0", - "nodeType": "VariableDeclaration", - "scope": 1273, - "src": "16252:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1244, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "16252:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1247, - "initialValue": { - "hexValue": "30", - "id": 1246, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16264:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "16252:13:0" - }, - "loopExpression": { - "expression": { - "id": 1253, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "16295:3:0", - "subExpression": { - "id": 1252, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1245, - "src": "16295:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1254, - "nodeType": "ExpressionStatement", - "src": "16295:3:0" - }, - "nodeType": "ForStatement", - "src": "16247:285:0" - }, - { - "assignments": [ - 1276 - ], - "declarations": [ - { - "constant": false, - "id": 1276, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "16559:8:0", - "nodeType": "VariableDeclaration", - "scope": 1368, - "src": "16541:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1275, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1274, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "16541:9:0" - }, - "referencedDeclaration": 85, - "src": "16541:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1282, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1277, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "16570:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1279, - "indexExpression": { - "id": 1278, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "16581:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16570:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1281, - "indexExpression": { - "id": 1280, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "16589:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16570:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16541:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1288, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1284, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1276, - "src": "16626:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1285, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "16626:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1286, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "16645:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1287, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "16645:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "16626:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1289, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16678:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - }, - "value": "not in secret sharing phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - } - ], - "id": 1283, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16605:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1290, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16605:112:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1291, - "nodeType": "ExpressionStatement", - "src": "16605:112:0" - }, - { - "assignments": [ - 1296 - ], - "declarations": [ - { - "constant": false, - "id": 1296, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "16759:11:0", - "nodeType": "VariableDeclaration", - "scope": 1368, - "src": "16727:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1294, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1293, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "16727:21:0" - }, - "referencedDeclaration": 49, - "src": "16727:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1295, - "nodeType": "ArrayTypeName", - "src": "16727:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1300, - "initialValue": { - "baseExpression": { - "id": 1297, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "16773:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1299, - "indexExpression": { - "id": 1298, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "16808:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16773:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16727:97:0" - }, - { - "assignments": [ - 1303 - ], - "declarations": [ - { - "constant": false, - "id": 1303, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "16864:10:0", - "nodeType": "VariableDeclaration", - "scope": 1368, - "src": "16834:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1302, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1301, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "16834:21:0" - }, - "referencedDeclaration": 49, - "src": "16834:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1307, - "initialValue": { - "baseExpression": { - "id": 1304, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1296, - "src": "16877:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1306, - "indexExpression": { - "id": 1305, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "16889:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16877:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16834:61:0" - }, - { - "body": { - "id": 1366, - "nodeType": "Block", - "src": "16958:608:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1332, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1320, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "16997:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1321, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "16997:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1324, - "indexExpression": { - "expression": { - "id": 1322, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17036:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17036:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16997:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1328, - "indexExpression": { - "baseExpression": { - "id": 1325, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "17048:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1327, - "indexExpression": { - "id": 1326, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17058:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17048:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16997:64:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1329, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "16997:100:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1330, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16997:128:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1331, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17129:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16997:133:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", - "id": 1333, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17148:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - }, - "value": "cannot upload seed cmmt multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - } - ], - "id": 1319, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16972:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16972:230:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1335, - "nodeType": "ExpressionStatement", - "src": "16972:230:0" - }, - { - "expression": { - "id": 1350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1336, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "17216:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1343, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "17216:30:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1344, - "indexExpression": { - "expression": { - "id": 1338, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17247:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17247:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17216:42:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1345, - "indexExpression": { - "baseExpression": { - "id": 1340, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "17259:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1342, - "indexExpression": { - "id": 1341, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17269:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17259:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17216:56:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1346, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "17216:71:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1347, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "17290:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1349, - "indexExpression": { - "id": 1348, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17323:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17290:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "17216:122:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1351, - "nodeType": "ExpressionStatement", - "src": "17216:122:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1353, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "17390:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1354, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "17414:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1355, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "17437:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17437:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "baseExpression": { - "id": 1357, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "17465:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1359, - "indexExpression": { - "id": 1358, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17475:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17465:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "53454544434d4d54", - "id": 1360, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17495:10:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - "value": "SEEDCMMT" - }, - { - "baseExpression": { - "id": 1361, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "17523:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1363, - "indexExpression": { - "id": 1362, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "17539:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17523:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b5d36da5552c0fe3b3b3b4f3890b1d38e302d9854d22ac7a64f93100693736fb", - "typeString": "literal_string \"SEEDCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1352, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "17357:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1364, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17357:198:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1365, - "nodeType": "EmitStatement", - "src": "17352:203:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1315, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1312, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "16925:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1313, - "name": "seedCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "16929:15:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16929:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16925:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1367, - "initializationExpression": { - "assignments": [ - 1309 - ], - "declarations": [ - { - "constant": false, - "id": 1309, - "mutability": "mutable", - "name": "i", - "nameLocation": "16918:1:0", - "nodeType": "VariableDeclaration", - "scope": 1367, - "src": "16910:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1308, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "16910:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1311, - "initialValue": { - "hexValue": "30", - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16922:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "16910:13:0" - }, - "loopExpression": { - "expression": { - "id": 1317, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "16953:3:0", - "subExpression": { - "id": 1316, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "16953:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1318, - "nodeType": "ExpressionStatement", - "src": "16953:3:0" - }, - "nodeType": "ForStatement", - "src": "16905:661:0" - } - ] - }, - "documentation": { - "id": 1218, - "nodeType": "StructuredDocumentation", - "src": "15605:277:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param seedCommitments seedCommitments[i] is the commitment send to receivers[i]" - }, - "functionSelector": "b194c028", - "id": 1369, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1231, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "16068:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1232, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1222, - "src": "16076:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1233, - "kind": "modifierInvocation", - "modifierName": { - "id": 1230, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "16056:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "16056:26:0" - } - ], - "name": "uploadSeedCommitment", - "nameLocation": "15896:20:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1229, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1220, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "15934:6:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "15926:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1219, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "15926:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1222, - "mutability": "mutable", - "name": "round", - "nameLocation": "15957:5:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "15950:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1221, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "15950:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1225, - "mutability": "mutable", - "name": "receivers", - "nameLocation": "15991:9:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "15972:28:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1223, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15972:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1224, - "nodeType": "ArrayTypeName", - "src": "15972:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1228, - "mutability": "mutable", - "name": "seedCommitments", - "nameLocation": "16027:15:0", - "nodeType": "VariableDeclaration", - "scope": 1369, - "src": "16010:32:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1226, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16010:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1227, - "nodeType": "ArrayTypeName", - "src": "16010:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "15916:132:0" - }, - "returnParameters": { - "id": 1234, - "nodeType": "ParameterList", - "parameters": [], - "src": "16083:0:0" - }, - "scope": 1927, - "src": "15887:1685:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1537, - "nodeType": "Block", - "src": "17997:1484:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1392, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1388, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "18028:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18028:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1390, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18046:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18046:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18028:30:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365656473206c656e677468", - "id": 1393, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18072:45:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", - "typeString": "literal_string \"senders length is not equal to seeds length\"" - }, - "value": "senders length is not equal to seeds length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0ddc469ac328e390da1f40e45e708a3a6fed12e5c58ab404e3b44dedcf3414a4", - "typeString": "literal_string \"senders length is not equal to seeds length\"" - } - ], - "id": 1387, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18007:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18007:120:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1395, - "nodeType": "ExpressionStatement", - "src": "18007:120:0" - }, - { - "body": { - "id": 1424, - "nodeType": "Block", - "src": "18180:192:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1408, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18219:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1410, - "indexExpression": { - "id": 1409, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18225:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18219:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18219:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1412, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18237:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18219:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1414, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18242:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1416, - "indexExpression": { - "id": 1415, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18248:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18242:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18242:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1418, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "18261:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "18242:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18219:62:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1421, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18299:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1407, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18194:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18194:167:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1423, - "nodeType": "ExpressionStatement", - "src": "18194:167:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1400, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18157:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1401, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18161:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1402, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18161:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18157:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1425, - "initializationExpression": { - "assignments": [ - 1397 - ], - "declarations": [ - { - "constant": false, - "id": 1397, - "mutability": "mutable", - "name": "i", - "nameLocation": "18150:1:0", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "18142:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1396, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "18142:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1399, - "initialValue": { - "hexValue": "30", - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18154:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "18142:13:0" - }, - "loopExpression": { - "expression": { - "id": 1405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "18175:3:0", - "subExpression": { - "id": 1404, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "18175:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1406, - "nodeType": "ExpressionStatement", - "src": "18175:3:0" - }, - "nodeType": "ForStatement", - "src": "18137:235:0" - }, - { - "assignments": [ - 1428 - ], - "declarations": [ - { - "constant": false, - "id": 1428, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "18399:8:0", - "nodeType": "VariableDeclaration", - "scope": 1537, - "src": "18381:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1427, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1426, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "18381:9:0" - }, - "referencedDeclaration": 85, - "src": "18381:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1434, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1429, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "18410:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1431, - "indexExpression": { - "id": 1430, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "18421:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18410:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1433, - "indexExpression": { - "id": 1432, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "18429:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18410:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18381:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1436, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "18466:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1437, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "18466:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1438, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "18485:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1439, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Aggregating", - "nodeType": "MemberAccess", - "referencedDeclaration": 12, - "src": "18485:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "18466:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18522:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - }, - "value": "not in upload ss phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - } - ], - "id": 1435, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18445:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18445:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1443, - "nodeType": "ExpressionStatement", - "src": "18445:111:0" - }, - { - "assignments": [ - 1448 - ], - "declarations": [ - { - "constant": false, - "id": 1448, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "18598:11:0", - "nodeType": "VariableDeclaration", - "scope": 1537, - "src": "18566:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1446, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1445, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "18566:21:0" - }, - "referencedDeclaration": 49, - "src": "18566:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1447, - "nodeType": "ArrayTypeName", - "src": "18566:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1452, - "initialValue": { - "baseExpression": { - "id": 1449, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "18612:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1451, - "indexExpression": { - "id": 1450, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "18647:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18612:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18566:97:0" - }, - { - "assignments": [ - 1455 - ], - "declarations": [ - { - "constant": false, - "id": 1455, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "18703:10:0", - "nodeType": "VariableDeclaration", - "scope": 1537, - "src": "18673:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1454, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1453, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "18673:21:0" - }, - "referencedDeclaration": 49, - "src": "18673:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1459, - "initialValue": { - "baseExpression": { - "id": 1456, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "18716:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1458, - "indexExpression": { - "id": 1457, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "18728:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18716:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18673:61:0" - }, - { - "body": { - "id": 1535, - "nodeType": "Block", - "src": "18787:688:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1484, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1472, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "18826:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1473, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "18826:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1477, - "indexExpression": { - "baseExpression": { - "id": 1474, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "18865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1476, - "indexExpression": { - "id": 1475, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "18873:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18865:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18826:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1480, - "indexExpression": { - "expression": { - "id": 1478, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "18877:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1479, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "18877:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18826:62:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1481, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 101, - "src": "18826:98:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1482, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18826:126:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1483, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18955:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18826:130:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1485, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18974:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1471, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18801:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18801:217:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1487, - "nodeType": "ExpressionStatement", - "src": "18801:217:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1489, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "19057:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1490, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "19057:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1494, - "indexExpression": { - "baseExpression": { - "id": 1491, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "19075:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1493, - "indexExpression": { - "id": 1492, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19083:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19075:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19057:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1497, - "indexExpression": { - "expression": { - "id": 1495, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19087:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19087:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19057:41:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1498, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "seedPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "19057:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "19057:58:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1500, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19119:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "19057:63:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1502, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19138:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1488, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "19032:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19032:155:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1504, - "nodeType": "ExpressionStatement", - "src": "19032:155:0" - }, - { - "expression": { - "id": 1519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1505, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "19201:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "19201:17:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1513, - "indexExpression": { - "baseExpression": { - "id": 1507, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "19219:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1509, - "indexExpression": { - "id": 1508, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19227:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19219:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19201:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1514, - "indexExpression": { - "expression": { - "id": 1510, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19231:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1511, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19231:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19201:41:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1515, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "seedPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 99, - "src": "19201:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1516, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "19255:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1518, - "indexExpression": { - "id": 1517, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19261:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19255:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "19201:62:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1520, - "nodeType": "ExpressionStatement", - "src": "19201:62:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1522, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "19315:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1523, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "19339:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "baseExpression": { - "id": 1524, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "19362:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1526, - "indexExpression": { - "id": 1525, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19370:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19362:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1527, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19390:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19390:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "53454544", - "id": 1529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19418:6:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - "value": "SEED" - }, - { - "baseExpression": { - "id": 1530, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "19442:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1532, - "indexExpression": { - "id": 1531, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "19448:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19442:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_b4f9163b703772b483a6ee342644f2aca217818660634e57ab3d1a17732a8bce", - "typeString": "literal_string \"SEED\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1521, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "19282:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1533, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19282:182:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1534, - "nodeType": "EmitStatement", - "src": "19277:187:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1464, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "18764:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1465, - "name": "seeds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1380, - "src": "18768:5:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18768:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18764:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1536, - "initializationExpression": { - "assignments": [ - 1461 - ], - "declarations": [ - { - "constant": false, - "id": 1461, - "mutability": "mutable", - "name": "i", - "nameLocation": "18757:1:0", - "nodeType": "VariableDeclaration", - "scope": 1536, - "src": "18749:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1460, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "18749:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1463, - "initialValue": { - "hexValue": "30", - "id": 1462, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18761:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "18749:13:0" - }, - "loopExpression": { - "expression": { - "id": 1469, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "18782:3:0", - "subExpression": { - "id": 1468, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "18782:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1470, - "nodeType": "ExpressionStatement", - "src": "18782:3:0" - }, - "nodeType": "ForStatement", - "src": "18744:731:0" - } - ] - }, - "documentation": { - "id": 1370, - "nodeType": "StructuredDocumentation", - "src": "17578:240:0", - "text": " @dev called by client, upload secret sharing seed commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param seeds seeds[i] is the seed send by senders[i]" - }, - "functionSelector": "1fd38b83", - "id": 1538, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1383, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1372, - "src": "17982:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1384, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1374, - "src": "17990:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1385, - "kind": "modifierInvocation", - "modifierName": { - "id": 1382, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "17970:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "17970:26:0" - } - ], - "name": "uploadSeed", - "nameLocation": "17832:10:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1381, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1372, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "17860:6:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17852:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1371, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "17852:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1374, - "mutability": "mutable", - "name": "round", - "nameLocation": "17883:5:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17876:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1373, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "17876:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1377, - "mutability": "mutable", - "name": "senders", - "nameLocation": "17917:7:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17898:26:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1375, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17898:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1376, - "nodeType": "ArrayTypeName", - "src": "17898:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1380, - "mutability": "mutable", - "name": "seeds", - "nameLocation": "17951:5:0", - "nodeType": "VariableDeclaration", - "scope": 1538, - "src": "17934:22:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1378, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17934:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1379, - "nodeType": "ArrayTypeName", - "src": "17934:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "17842:120:0" - }, - "returnParameters": { - "id": 1386, - "nodeType": "ParameterList", - "parameters": [], - "src": "17997:0:0" - }, - "scope": 1927, - "src": "17823:1658:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1689, - "nodeType": "Block", - "src": "19983:1536:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1557, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "20014:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1558, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20014:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1559, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20034:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1560, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20034:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20014:47:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "726563656976657273206c656e677468206973206e6f7420657175616c20746f207365637265744b6579436f6d6d69746d656e7473206c656e677468", - "id": 1562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20075:62:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", - "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" - }, - "value": "receivers length is not equal to secretKeyCommitments length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fce53f9bbcef770cf66fd4ef7dc9173643e75ceea8d8f228d6fdc0d80f96a5dc", - "typeString": "literal_string \"receivers length is not equal to secretKeyCommitments length\"" - } - ], - "id": 1556, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "19993:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1563, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19993:154:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1564, - "nodeType": "ExpressionStatement", - "src": "19993:154:0" - }, - { - "body": { - "id": 1593, - "nodeType": "Block", - "src": "20215:242:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1582, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1577, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20254:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1579, - "indexExpression": { - "id": 1578, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20275:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20254:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20254:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20287:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20254:34:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1583, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20312:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1585, - "indexExpression": { - "id": 1584, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20333:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20312:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20312:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1587, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "20346:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "20312:54:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "20254:112:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20384:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1576, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20229:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20229:217:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1592, - "nodeType": "ExpressionStatement", - "src": "20229:217:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1569, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20177:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1570, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20181:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1571, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20181:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20177:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1594, - "initializationExpression": { - "assignments": [ - 1566 - ], - "declarations": [ - { - "constant": false, - "id": 1566, - "mutability": "mutable", - "name": "i", - "nameLocation": "20170:1:0", - "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "20162:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1565, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "20162:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1568, - "initialValue": { - "hexValue": "30", - "id": 1567, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20174:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "20162:13:0" - }, - "loopExpression": { - "expression": { - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "20210:3:0", - "subExpression": { - "id": 1573, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1566, - "src": "20210:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1575, - "nodeType": "ExpressionStatement", - "src": "20210:3:0" - }, - "nodeType": "ForStatement", - "src": "20157:300:0" - }, - { - "assignments": [ - 1597 - ], - "declarations": [ - { - "constant": false, - "id": 1597, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "20484:8:0", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "20466:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1596, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1595, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "20466:9:0" - }, - "referencedDeclaration": 85, - "src": "20466:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1603, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1598, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "20495:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1600, - "indexExpression": { - "id": 1599, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "20506:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20495:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1602, - "indexExpression": { - "id": 1601, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "20514:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20495:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20466:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1605, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1597, - "src": "20551:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1606, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "20551:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1607, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "20570:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Running", - "nodeType": "MemberAccess", - "referencedDeclaration": 10, - "src": "20570:19:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "20551:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e207365637265742073686172696e67207068617365", - "id": 1610, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20603:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - }, - "value": "not in secret sharing phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_11d9109564d98610d31ee6cd99a071463079ae50647d4ca013b82abb4a5214bc", - "typeString": "literal_string \"not in secret sharing phase\"" - } - ], - "id": 1604, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20530:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20530:112:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1612, - "nodeType": "ExpressionStatement", - "src": "20530:112:0" - }, - { - "assignments": [ - 1617 - ], - "declarations": [ - { - "constant": false, - "id": 1617, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "20684:11:0", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "20652:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1615, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1614, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "20652:21:0" - }, - "referencedDeclaration": 49, - "src": "20652:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1616, - "nodeType": "ArrayTypeName", - "src": "20652:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1621, - "initialValue": { - "baseExpression": { - "id": 1618, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "20698:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1620, - "indexExpression": { - "id": 1619, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "20733:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20698:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20652:97:0" - }, - { - "assignments": [ - 1624 - ], - "declarations": [ - { - "constant": false, - "id": 1624, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "20789:10:0", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "20759:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1623, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1622, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "20759:21:0" - }, - "referencedDeclaration": 49, - "src": "20759:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1628, - "initialValue": { - "baseExpression": { - "id": 1625, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1617, - "src": "20802:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1627, - "indexExpression": { - "id": 1626, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "20814:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20802:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20759:61:0" - }, - { - "body": { - "id": 1687, - "nodeType": "Block", - "src": "20888:625:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1653, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1641, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1624, - "src": "20927:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1642, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "20927:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1645, - "indexExpression": { - "expression": { - "id": 1643, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20966:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20966:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20927:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1649, - "indexExpression": { - "baseExpression": { - "id": 1646, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "20978:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1648, - "indexExpression": { - "id": 1647, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "20988:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20978:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20927:64:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1650, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 105, - "src": "20927:109:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20927:137:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21068:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20927:142:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c652074696d6573", - "id": 1654, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21087:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - }, - "value": "cannot upload seed cmmt multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b230e86364cb1b44060916d1d8a8a1f73a2d98caa76474596251c2c0eb4b7bea", - "typeString": "literal_string \"cannot upload seed cmmt multiple times\"" - } - ], - "id": 1640, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "20902:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20902:239:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1656, - "nodeType": "ExpressionStatement", - "src": "20902:239:0" - }, - { - "expression": { - "id": 1671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1657, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1624, - "src": "21155:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1664, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "21155:30:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1665, - "indexExpression": { - "expression": { - "id": 1659, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "21186:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "21186:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21155:42:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1666, - "indexExpression": { - "baseExpression": { - "id": 1661, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "21198:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1663, - "indexExpression": { - "id": 1662, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21208:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21198:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21155:56:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1667, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 105, - "src": "21155:97:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1668, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "21255:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1670, - "indexExpression": { - "id": 1669, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21276:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21255:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "21155:123:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1672, - "nodeType": "ExpressionStatement", - "src": "21155:123:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1674, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "21330:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1675, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "21354:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "expression": { - "id": 1676, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "21377:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "21377:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "baseExpression": { - "id": 1678, - "name": "receivers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1546, - "src": "21405:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1680, - "indexExpression": { - "id": 1679, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21415:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21405:12:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "534b4d41534b434d4d54", - "id": 1681, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21435:12:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - "value": "SKMASKCMMT" - }, - { - "baseExpression": { - "id": 1682, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "21465:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1684, - "indexExpression": { - "id": 1683, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "21486:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "21465:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_c714f59316b9bd48e12da25207b4bfa18ee389577c0426a7111da39318477b2f", - "typeString": "literal_string \"SKMASKCMMT\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1673, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "21297:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1685, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21297:205:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1686, - "nodeType": "EmitStatement", - "src": "21292:210:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1633, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "20850:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1634, - "name": "secretKeyCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1549, - "src": "20854:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1635, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "20854:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20850:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1688, - "initializationExpression": { - "assignments": [ - 1630 - ], - "declarations": [ - { - "constant": false, - "id": 1630, - "mutability": "mutable", - "name": "i", - "nameLocation": "20843:1:0", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "20835:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1629, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "20835:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1632, - "initialValue": { - "hexValue": "30", - "id": 1631, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20847:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "20835:13:0" - }, - "loopExpression": { - "expression": { - "id": 1638, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "20883:3:0", - "subExpression": { - "id": 1637, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1630, - "src": "20883:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1639, - "nodeType": "ExpressionStatement", - "src": "20883:3:0" - }, - "nodeType": "ForStatement", - "src": "20830:683:0" - } - ] - }, - "documentation": { - "id": 1539, - "nodeType": "StructuredDocumentation", - "src": "19487:285:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param receivers the receiver addresses\n @param secretKeyCommitments secretKeyCommitments[i] is the commitment send to receivers[i]" - }, - "functionSelector": "e49c9d43", - "id": 1690, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1552, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1541, - "src": "19968:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1553, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1543, - "src": "19976:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1554, - "kind": "modifierInvocation", - "modifierName": { - "id": 1551, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "19956:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "19956:26:0" - } - ], - "name": "uploadSecretKeyCommitment", - "nameLocation": "19786:25:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1550, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1541, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "19829:6:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19821:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1540, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "19821:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1543, - "mutability": "mutable", - "name": "round", - "nameLocation": "19852:5:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19845:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1542, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "19845:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1546, - "mutability": "mutable", - "name": "receivers", - "nameLocation": "19886:9:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19867:28:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1544, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19867:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1545, - "nodeType": "ArrayTypeName", - "src": "19867:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1549, - "mutability": "mutable", - "name": "secretKeyCommitments", - "nameLocation": "19922:20:0", - "nodeType": "VariableDeclaration", - "scope": 1690, - "src": "19905:37:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1547, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "19905:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1548, - "nodeType": "ArrayTypeName", - "src": "19905:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "19811:137:0" - }, - "returnParameters": { - "id": 1555, - "nodeType": "ParameterList", - "parameters": [], - "src": "19983:0:0" - }, - "scope": 1927, - "src": "19777:1742:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1858, - "nodeType": "Block", - "src": "21987:1673:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1709, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "22018:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22018:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1711, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22036:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1712, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22036:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22018:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "73656e64657273206c656e677468206973206e6f7420657175616c20746f207365637265746b65794d61736b73206c656e677468", - "id": 1714, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22071:54:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", - "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" - }, - "value": "senders length is not equal to secretkeyMasks length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a028c3e8b263db86aea559a1d8d2c9d7fcadd1ef3a12557154306b0ec324c71c", - "typeString": "literal_string \"senders length is not equal to secretkeyMasks length\"" - } - ], - "id": 1708, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "21997:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21997:138:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1716, - "nodeType": "ExpressionStatement", - "src": "21997:138:0" - }, - { - "body": { - "id": 1745, - "nodeType": "Block", - "src": "22197:230:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1729, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22236:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1731, - "indexExpression": { - "id": 1730, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22251:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22236:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1732, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22236:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1733, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22263:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "22236:28:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 1735, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22288:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1737, - "indexExpression": { - "id": 1736, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22303:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22288:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22288:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 1739, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "22316:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "22288:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "22236:100:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "636f6d6d69746d656e74206c656e6774682065786365656473206c696d6974206f7220697420697320656d707479", - "id": 1742, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22354:48:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - }, - "value": "commitment length exceeds limit or it is empty" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4cfdf9e48cf825603b16fd62b687de964afaa729d0df9869d75bd09d4aa07324", - "typeString": "literal_string \"commitment length exceeds limit or it is empty\"" - } - ], - "id": 1728, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22211:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22211:205:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1744, - "nodeType": "ExpressionStatement", - "src": "22211:205:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1721, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22165:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1722, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22169:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1723, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22169:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22165:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1746, - "initializationExpression": { - "assignments": [ - 1718 - ], - "declarations": [ - { - "constant": false, - "id": 1718, - "mutability": "mutable", - "name": "i", - "nameLocation": "22158:1:0", - "nodeType": "VariableDeclaration", - "scope": 1746, - "src": "22150:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1717, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "22150:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1720, - "initialValue": { - "hexValue": "30", - "id": 1719, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22162:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "22150:13:0" - }, - "loopExpression": { - "expression": { - "id": 1726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "22192:3:0", - "subExpression": { - "id": 1725, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "22192:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1727, - "nodeType": "ExpressionStatement", - "src": "22192:3:0" - }, - "nodeType": "ForStatement", - "src": "22145:282:0" - }, - { - "assignments": [ - 1749 - ], - "declarations": [ - { - "constant": false, - "id": 1749, - "mutability": "mutable", - "name": "curRound", - "nameLocation": "22454:8:0", - "nodeType": "VariableDeclaration", - "scope": 1858, - "src": "22436:26:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - }, - "typeName": { - "id": 1748, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1747, - "name": "TaskRound", - "nodeType": "IdentifierPath", - "referencedDeclaration": 85, - "src": "22436:9:0" - }, - "referencedDeclaration": 85, - "src": "22436:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound" - } - }, - "visibility": "internal" - } - ], - "id": 1755, - "initialValue": { - "baseExpression": { - "baseExpression": { - "id": 1750, - "name": "taskRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "22465:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.TaskRound storage ref[] storage ref)" - } - }, - "id": 1752, - "indexExpression": { - "id": 1751, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "22476:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22465:18:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TaskRound_$85_storage_$dyn_storage", - "typeString": "struct HFLContract.TaskRound storage ref[] storage ref" - } - }, - "id": 1754, - "indexExpression": { - "id": 1753, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "22484:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22465:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage", - "typeString": "struct HFLContract.TaskRound storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22436:54:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - }, - "id": 1761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1757, - "name": "curRound", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1749, - "src": "22521:8:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TaskRound_$85_storage_ptr", - "typeString": "struct HFLContract.TaskRound storage pointer" - } - }, - "id": 1758, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 76, - "src": "22521:15:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1759, - "name": "RoundStatus", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "22540:11:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_RoundStatus_$14_$", - "typeString": "type(enum HFLContract.RoundStatus)" - } - }, - "id": 1760, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Aggregating", - "nodeType": "MemberAccess", - "referencedDeclaration": 12, - "src": "22540:23:0", - "typeDescriptions": { - "typeIdentifier": "t_enum$_RoundStatus_$14", - "typeString": "enum HFLContract.RoundStatus" - } - }, - "src": "22521:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f7420696e2075706c6f6164207373207068617365", - "id": 1762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22577:24:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - }, - "value": "not in upload ss phase" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_01a726af5c377886bd75c78f733dc90ae1d7a77119704577e75f76ba3c6b4d3d", - "typeString": "literal_string \"not in upload ss phase\"" - } - ], - "id": 1756, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22500:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22500:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1764, - "nodeType": "ExpressionStatement", - "src": "22500:111:0" - }, - { - "assignments": [ - 1769 - ], - "declarations": [ - { - "constant": false, - "id": 1769, - "mutability": "mutable", - "name": "commitments", - "nameLocation": "22653:11:0", - "nodeType": "VariableDeclaration", - "scope": 1858, - "src": "22621:43:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - }, - "typeName": { - "baseType": { - "id": 1767, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1766, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "22621:21:0" - }, - "referencedDeclaration": 49, - "src": "22621:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "id": 1768, - "nodeType": "ArrayTypeName", - "src": "22621:23:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments[]" - } - }, - "visibility": "internal" - } - ], - "id": 1773, - "initialValue": { - "baseExpression": { - "id": 1770, - "name": "roundModelCommitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "22667:21:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_$", - "typeString": "mapping(bytes32 => struct HFLContract.RoundModelCommitments storage ref[] storage ref)" - } - }, - "id": 1772, - "indexExpression": { - "id": 1771, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "22702:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22667:51:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22621:97:0" - }, - { - "assignments": [ - 1776 - ], - "declarations": [ - { - "constant": false, - "id": 1776, - "mutability": "mutable", - "name": "commitment", - "nameLocation": "22758:10:0", - "nodeType": "VariableDeclaration", - "scope": 1858, - "src": "22728:40:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - }, - "typeName": { - "id": 1775, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1774, - "name": "RoundModelCommitments", - "nodeType": "IdentifierPath", - "referencedDeclaration": 49, - "src": "22728:21:0" - }, - "referencedDeclaration": 49, - "src": "22728:21:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments" - } - }, - "visibility": "internal" - } - ], - "id": 1780, - "initialValue": { - "baseExpression": { - "id": 1777, - "name": "commitments", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1769, - "src": "22771:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_RoundModelCommitments_$49_storage_$dyn_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage ref[] storage pointer" - } - }, - "id": 1779, - "indexExpression": { - "id": 1778, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "22783:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22771:18:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage", - "typeString": "struct HFLContract.RoundModelCommitments storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22728:61:0" - }, - { - "body": { - "id": 1856, - "nodeType": "Block", - "src": "22851:803:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1805, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1793, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1776, - "src": "22890:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1794, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "22890:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1798, - "indexExpression": { - "baseExpression": { - "id": 1795, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "22929:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1797, - "indexExpression": { - "id": 1796, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "22937:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22929:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22890:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1801, - "indexExpression": { - "expression": { - "id": 1799, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "22941:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1800, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "22941:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22890:62:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1802, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyMaskCommitment", - "nodeType": "MemberAccess", - "referencedDeclaration": 105, - "src": "22890:107:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22890:135:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1804, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23028:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "22890:139:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6d7573742075706c6f616420636f6d6d69746d656e74206669727374", - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23047:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - }, - "value": "must upload commitment first" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_925027933eda8ffbda37446968ccb05b73d493bcbc6321fdf77eb9d9c9e6eea0", - "typeString": "literal_string \"must upload commitment first\"" - } - ], - "id": 1792, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22865:226:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1808, - "nodeType": "ExpressionStatement", - "src": "22865:226:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1810, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1776, - "src": "23130:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1811, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "23130:38:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1815, - "indexExpression": { - "baseExpression": { - "id": 1812, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "23169:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1814, - "indexExpression": { - "id": 1813, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23177:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23169:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23130:50:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1818, - "indexExpression": { - "expression": { - "id": 1816, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23181:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1817, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "23181:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23130:62:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1819, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "23130:98:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1820, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "23130:126:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23260:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "23130:131:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d6573", - "id": 1823, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23279:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - }, - "value": "cannot upload seed multiple times" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_995e525e8c7a7d81bd878f54ae854933b7a8a081b7bb58607af39ec5d95488e7", - "typeString": "literal_string \"cannot upload seed multiple times\"" - } - ], - "id": 1809, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23105:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23105:223:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1825, - "nodeType": "ExpressionStatement", - "src": "23105:223:0" - }, - { - "expression": { - "id": 1840, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "baseExpression": { - "expression": { - "id": 1826, - "name": "commitment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1776, - "src": "23342:10:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_RoundModelCommitments_$49_storage_ptr", - "typeString": "struct HFLContract.RoundModelCommitments storage pointer" - } - }, - "id": 1833, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ssdata", - "nodeType": "MemberAccess", - "referencedDeclaration": 48, - "src": "23342:30:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$_$", - "typeString": "mapping(address => mapping(address => struct HFLContract.SSData storage ref))" - } - }, - "id": 1834, - "indexExpression": { - "baseExpression": { - "id": 1828, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "23373:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1830, - "indexExpression": { - "id": 1829, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23381:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23373:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23342:42:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_SSData_$106_storage_$", - "typeString": "mapping(address => struct HFLContract.SSData storage ref)" - } - }, - "id": 1835, - "indexExpression": { - "expression": { - "id": 1831, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23385:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1832, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "23385:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23342:54:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_SSData_$106_storage", - "typeString": "struct HFLContract.SSData storage ref" - } - }, - "id": 1836, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "secretKeyPiece", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "23342:69:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1837, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "23414:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1839, - "indexExpression": { - "id": 1838, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23429:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23414:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "23342:89:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 1841, - "nodeType": "ExpressionStatement", - "src": "23342:89:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1843, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "23483:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1844, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "23507:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "baseExpression": { - "id": 1845, - "name": "senders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "23530:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 1847, - "indexExpression": { - "id": 1846, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23538:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23530:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1848, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23558:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1849, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "23558:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "534b4d41534b", - "id": 1850, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23586:8:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - "value": "SKMASK" - }, - { - "baseExpression": { - "id": 1851, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "23612:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1853, - "indexExpression": { - "id": 1852, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "23627:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23612:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_fdb39921486b5b18db0ef390436cf9035d849eca6a4737abb9769ff479b94a86", - "typeString": "literal_string \"SKMASK\"" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1842, - "name": "ContentUploaded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 179, - "src": "23450:15:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$_t_address_$_t_address_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes32,uint64,address,address,string memory,bytes memory)" - } - }, - "id": 1854, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23450:193:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1855, - "nodeType": "EmitStatement", - "src": "23445:198:0" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1785, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "22819:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1786, - "name": "secretkeyMasks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "22823:14:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes calldata[] calldata" - } - }, - "id": 1787, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "22823:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22819:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1857, - "initializationExpression": { - "assignments": [ - 1782 - ], - "declarations": [ - { - "constant": false, - "id": 1782, - "mutability": "mutable", - "name": "i", - "nameLocation": "22812:1:0", - "nodeType": "VariableDeclaration", - "scope": 1857, - "src": "22804:9:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1781, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "22804:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1784, - "initialValue": { - "hexValue": "30", - "id": 1783, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22816:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "22804:13:0" - }, - "loopExpression": { - "expression": { - "id": 1790, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "22846:3:0", - "subExpression": { - "id": 1789, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "22846:1:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1791, - "nodeType": "ExpressionStatement", - "src": "22846:3:0" - }, - "nodeType": "ForStatement", - "src": "22799:855:0" - } - ] - }, - "documentation": { - "id": 1691, - "nodeType": "StructuredDocumentation", - "src": "21525:265:0", - "text": " @dev called by client, upload secret sharing sk commitment\n @param taskId taskId\n @param round the task round\n @param senders senders address\n @param secretkeyMasks secretkeyMasks[i] is the secretKeyMask send by senders[i]" - }, - "functionSelector": "c96525ac", - "id": 1859, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1704, - "name": "taskId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1693, - "src": "21972:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1705, - "name": "round", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1695, - "src": "21980:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "id": 1706, - "kind": "modifierInvocation", - "modifierName": { - "id": 1703, - "name": "roundExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 240, - "src": "21960:11:0" - }, - "nodeType": "ModifierInvocation", - "src": "21960:26:0" - } - ], - "name": "uploadSecretkeyMask", - "nameLocation": "21804:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1702, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1693, - "mutability": "mutable", - "name": "taskId", - "nameLocation": "21841:6:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21833:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1692, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "21833:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1695, - "mutability": "mutable", - "name": "round", - "nameLocation": "21864:5:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21857:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1694, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "21857:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1698, - "mutability": "mutable", - "name": "senders", - "nameLocation": "21898:7:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21879:26:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1696, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "21879:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1697, - "nodeType": "ArrayTypeName", - "src": "21879:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1701, - "mutability": "mutable", - "name": "secretkeyMasks", - "nameLocation": "21932:14:0", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "21915:31:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 1699, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "21915:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 1700, - "nodeType": "ArrayTypeName", - "src": "21915:7:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "21823:129:0" - }, - "returnParameters": { - "id": 1707, - "nodeType": "ParameterList", - "parameters": [], - "src": "21987:0:0" - }, - "scope": 1927, - "src": "21795:1865:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1870, - "nodeType": "Block", - "src": "23737:54:0", - "statements": [ - { - "expression": { - "id": 1868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1866, - "name": "maxWeightCommitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "23747:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1867, - "name": "maxLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1861, - "src": "23775:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "23747:37:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1869, - "nodeType": "ExpressionStatement", - "src": "23747:37:0" - } - ] - }, - "functionSelector": "b71b768d", - "id": 1871, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1864, - "kind": "modifierInvocation", - "modifierName": { - "id": 1863, - "name": "isOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 191, - "src": "23729:7:0" - }, - "nodeType": "ModifierInvocation", - "src": "23729:7:0" - } - ], - "name": "setMaxWeightCommitmentLength", - "nameLocation": "23675:28:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1862, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1861, - "mutability": "mutable", - "name": "maxLength", - "nameLocation": "23711:9:0", - "nodeType": "VariableDeclaration", - "scope": 1871, - "src": "23704:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1860, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "23704:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "23703:18:0" - }, - "returnParameters": { - "id": 1865, - "nodeType": "ParameterList", - "parameters": [], - "src": "23737:0:0" - }, - "scope": 1927, - "src": "23666:125:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1882, - "nodeType": "Block", - "src": "23864:49:0", - "statements": [ - { - "expression": { - "id": 1880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1878, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "23874:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1879, - "name": "maxLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "23897:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "23874:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1881, - "nodeType": "ExpressionStatement", - "src": "23874:32:0" - } - ] - }, - "functionSelector": "d6f02142", - "id": 1883, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1876, - "kind": "modifierInvocation", - "modifierName": { - "id": 1875, - "name": "isOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 191, - "src": "23856:7:0" - }, - "nodeType": "ModifierInvocation", - "src": "23856:7:0" - } - ], - "name": "setMaxSSCommitmentLength", - "nameLocation": "23806:24:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1873, - "mutability": "mutable", - "name": "maxLength", - "nameLocation": "23838:9:0", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "23831:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1872, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "23831:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "23830:18:0" - }, - "returnParameters": { - "id": 1877, - "nodeType": "ParameterList", - "parameters": [], - "src": "23864:0:0" - }, - "scope": 1927, - "src": "23797:116:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1898, - "nodeType": "Block", - "src": "24041:98:0", - "statements": [ - { - "expression": { - "id": 1892, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1890, - "name": "sslength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1886, - "src": "24051:8:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1891, - "name": "maxSSComitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "24062:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "24051:31:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1893, - "nodeType": "ExpressionStatement", - "src": "24051:31:0" - }, - { - "expression": { - "id": 1896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1894, - "name": "weightLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1888, - "src": "24092:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1895, - "name": "maxWeightCommitmentLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "24107:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "24092:40:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 1897, - "nodeType": "ExpressionStatement", - "src": "24092:40:0" - } - ] - }, - "functionSelector": "5d3d7e63", - "id": 1899, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMaxCommitmentsLength", - "nameLocation": "23928:23:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1884, - "nodeType": "ParameterList", - "parameters": [], - "src": "23951:2:0" - }, - "returnParameters": { - "id": 1889, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1886, - "mutability": "mutable", - "name": "sslength", - "nameLocation": "24006:8:0", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "23999:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1885, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "23999:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1888, - "mutability": "mutable", - "name": "weightLength", - "nameLocation": "24023:12:0", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "24016:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1887, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "24016:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "src": "23998:38:0" - }, - "scope": 1927, - "src": "23919:220:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1916, - "nodeType": "Block", - "src": "24284:73:0", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "id": 1908, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "24308:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1909, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1902, - "src": "24315:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1907, - "name": "OwnerSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "24299:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 1910, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "24299:25:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1911, - "nodeType": "EmitStatement", - "src": "24294:30:0" - }, - { - "expression": { - "id": 1914, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1912, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "24334:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1913, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1902, - "src": "24342:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "24334:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1915, - "nodeType": "ExpressionStatement", - "src": "24334:16:0" - } - ] - }, - "documentation": { - "id": 1900, - "nodeType": "StructuredDocumentation", - "src": "24145:80:0", - "text": " @dev Change owner\n @param newOwner address of new owner" - }, - "functionSelector": "a6f9dae1", - "id": 1917, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1905, - "kind": "modifierInvocation", - "modifierName": { - "id": 1904, - "name": "isOwner", - "nodeType": "IdentifierPath", - "referencedDeclaration": 191, - "src": "24276:7:0" - }, - "nodeType": "ModifierInvocation", - "src": "24276:7:0" - } - ], - "name": "changeOwner", - "nameLocation": "24239:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1902, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "24259:8:0", - "nodeType": "VariableDeclaration", - "scope": 1917, - "src": "24251:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1901, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24251:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "24250:18:0" - }, - "returnParameters": { - "id": 1906, - "nodeType": "ParameterList", - "parameters": [], - "src": "24284:0:0" - }, - "scope": 1927, - "src": "24230:127:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1925, - "nodeType": "Block", - "src": "24496:29:0", - "statements": [ - { - "expression": { - "id": 1923, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8, - "src": "24513:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1922, - "id": 1924, - "nodeType": "Return", - "src": "24506:12:0" - } - ] - }, - "documentation": { - "id": 1918, - "nodeType": "StructuredDocumentation", - "src": "24363:76:0", - "text": " @dev Return owner address\n @return address of owner" - }, - "functionSelector": "893d20e8", - "id": 1926, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getOwner", - "nameLocation": "24453:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1919, - "nodeType": "ParameterList", - "parameters": [], - "src": "24461:2:0" - }, - "returnParameters": { - "id": 1922, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1921, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "24487:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1920, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24487:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "24486:9:0" - }, - "scope": 1927, - "src": "24444:81:0", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1928, - "src": "160:24367:0", - "usedErrors": [] - } - ], - "src": "37:24491:0" - }, - "compiler": { - "name": "solc", - "version": "0.8.10+commit.fc410830.Emscripten.clang" - }, - "networks": { - "1639635277955": { - "events": {}, - "links": {}, - "address": "0x0473645a4A8C3f81EcA03FB07B9113960C240622", - "transactionHash": "0xecdc97bc31b6a5474b6e6f6817b1bbde923b2ea3b07ca77bdde83e4444a916b4" - }, - "1639636093890": { - "events": {}, - "links": {}, - "address": "0xf5C2FDBd1fb251Fb60c6859Db0b1cDE02b902dF8", - "transactionHash": "0xc3f03872f7d8eefc0ee9b6aa203c153cda5addb87e45b44ba8e4708e42b0af51" - }, - "1639636812393": { - "events": {}, - "links": {}, - "address": "0x76a89cfc71EdDF8097296e9b1986B5c252d51d78", - "transactionHash": "0x1be24e0ea13c1144756a3ff2f3aae40e249f2455fae590b1421da24264d07d85" - }, - "1639641059195": { - "events": {}, - "links": {}, - "address": "0x6b9F31c6171b3d40Cca9ECBA2fE1b539237d3D6C", - "transactionHash": "0x4079374a16121ed56b2b8540be95db7ca1d7d9cc44e4ef262c77c09305df6790" - }, - "1639722197592": { - "events": {}, - "links": {}, - "address": "0x02f7d81fB626f868B87C817a282E9B33997f5a7f", - "transactionHash": "0x8426ab930122defd62e5d1842cabbea96e717bab801fb05ff86b5bfc9169c518" - }, - "1639724487311": { - "events": {}, - "links": {}, - "address": "0xB6fF5691e6c782D4688FA7A5BDa316D4702636cC", - "transactionHash": "0xf78ee63bb3e716635dbc014e5cf079ad5171df4c11cd6d06850851a060b36ab1" - } - }, - "schemaVersion": "3.4.3", - "updatedAt": "2021-12-17T07:01:47.414Z", - "networkType": "ethereum", - "devdoc": { - "details": "Delta Contract For Mpc", - "kind": "dev", - "methods": { - "changeOwner(address)": { - "details": "Change owner", - "params": { - "newOwner": "address of new owner" - } - }, - "constructor": { - "details": "Set contract deployer as owner" - }, - "createTask(string,bytes32,string)": { - "details": "called by task developer, notifying all clients that a new learning task has been published", - "params": { - "commitment": "training code hash (client validation purpose)", - "dataSet": "data set name (file/folder name of training data)" - }, - "returns": { - "taskId": "taskId" - } - }, - "endRound(bytes32,uint64)": { - "details": "called by task developer, close round", - "params": { - "round": "the task round", - "taskId": "taskId" - } - }, - "getClientPublickeys(bytes32,uint64,address[])": { - "details": "called by anyone, get Client Pks", - "returns": { - "_0": "candidate (pk1,pk2)" - } - }, - "getOwner()": { - "details": "Return owner address", - "returns": { - "_0": "address of owner" - } - }, - "getResultCommitment(bytes32,address,uint64)": { - "details": "called by task developer, get commitments from blockchain(Server has to call this method for every clients to get their commiments as the return value couldn't contain mapping type in solidity(damn it))", - "params": { - "clientaddress": "the client that publish the commitments", - "round": "the round of that commitment", - "taskId": "taskId" - }, - "returns": { - "commitment": "commitment data" - } - }, - "getSecretSharingDatas(bytes32,uint64,address[],address)": { - "details": "called by any participants" - }, - "getTaskData(bytes32)": { - "details": "get task info data", - "params": { - "taskId": "taskId" - } - }, - "getTaskRound(bytes32,uint64)": { - "details": "getting task round infos", - "params": { - "round": "the round to fetch", - "taskId": "taskId" - }, - "returns": { - "taskround": "the task round infos" - } - }, - "joinRound(bytes32,uint64,bytes,bytes)": { - "details": "called by client, join for that round of computation", - "params": { - "pk1": "used for secure communication channel establishment", - "pk2": "used for mask generation", - "round": "the round to join", - "taskId": "taskId" - } - }, - "selectCandidates(bytes32,uint64,address[])": { - "details": "called by task developer, randomly choose candidates to be computation nodesclients now should start secret sharing phase", - "params": { - "addrs": "selected client addresses" - } - }, - "startAggregate(bytes32,uint64,address[])": { - "details": "called by task developer, notifying all participants that the ss and gradient transfer phase has finishedclient now should send corresponded ss share pieces to task developer according to the online status given by the task developer", - "params": { - "onlineClients": "clients that has transfered gradient to task developer", - "round": "the task round", - "taskId": "taskId" - } - }, - "startCalculate(bytes32,uint64,address[])": { - "details": "called by task developer, notifying all participants that the secret sharing phase is finished to transfer masked gradient to task server", - "params": { - "round": "the task round", - "taskId": "taskId" - } - }, - "startRound(bytes32,uint64,uint32,uint32)": { - "details": "called by task developer, notifying all clients that a new computing round is started and open for joining", - "params": { - "round": "the round to start", - "taskId": "taskId" - } - }, - "uploadResultCommitment(bytes32,uint64,bytes)": { - "details": "called by client, upload weight commitment", - "params": { - "resultCommitment": "masked model incremental commitment", - "round": "the task round", - "taskId": "taskId" - } - }, - "uploadSecretKeyCommitment(bytes32,uint64,address[],bytes[])": { - "details": "called by client, upload secret sharing sk commitment", - "params": { - "receivers": "the receiver addresses", - "round": "the task round", - "secretKeyCommitments": "secretKeyCommitments[i] is the commitment send to receivers[i]", - "taskId": "taskId" - } - }, - "uploadSecretkeyMask(bytes32,uint64,address[],bytes[])": { - "details": "called by client, upload secret sharing sk commitment", - "params": { - "round": "the task round", - "secretkeyMasks": "secretkeyMasks[i] is the secretKeyMask send by senders[i]", - "senders": "senders address", - "taskId": "taskId" - } - }, - "uploadSeed(bytes32,uint64,address[],bytes[])": { - "details": "called by client, upload secret sharing seed commitment", - "params": { - "round": "the task round", - "seeds": "seeds[i] is the seed send by senders[i]", - "senders": "senders address", - "taskId": "taskId" - } - }, - "uploadSeedCommitment(bytes32,uint64,address[],bytes[])": { - "details": "called by client, upload secret sharing seed commitment", - "params": { - "receivers": "the receiver addresses", - "round": "the task round", - "seedCommitments": "seedCommitments[i] is the commitment send to receivers[i]", - "taskId": "taskId" - } - } - }, - "title": "Delta Contract", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file +{"name":"HFLContract","source":"HFLContract.sol","abi":[{"inputs":[{"internalType":"contract IdentityContract","name":"_addr","type":"address"}],"stateMutability":"nonpayable","type":"constructor","signature":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"round","type":"uint64"},{"indexed":false,"internalType":"address[]","name":"addrs","type":"address[]"}],"name":"AggregateStarted","type":"event","signature":"0xa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"round","type":"uint64"},{"indexed":false,"internalType":"address[]","name":"addrs","type":"address[]"}],"name":"CalculateStarted","type":"event","signature":"0xbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"round","type":"uint64"},{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"address","name":"reciver","type":"address"},{"indexed":false,"internalType":"string","name":"contentType","type":"string"},{"indexed":false,"internalType":"bytes","name":"content","type":"bytes"}],"name":"ContentUploaded","type":"event","signature":"0xeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aa"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerSet","type":"event","signature":"0x342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"round","type":"uint64"},{"indexed":false,"internalType":"address[]","name":"addrs","type":"address[]"}],"name":"PartnerSelected","type":"event","signature":"0x25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"round","type":"uint64"}],"name":"RoundEnd","type":"event","signature":"0x8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"round","type":"uint64"}],"name":"RoundStart","type":"event","signature":"0x442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd9"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"creator","type":"address"},{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"},{"indexed":false,"internalType":"string","name":"dataSet","type":"string"},{"indexed":false,"internalType":"string","name":"creatorUrl","type":"string"},{"indexed":false,"internalType":"bytes32","name":"commitment","type":"bytes32"},{"indexed":false,"internalType":"string","name":"taskType","type":"string"}],"name":"TaskCreated","type":"event","signature":"0x8e25935a9ec6d103bff2bb6b248969c0cf317603fad46413c940773b5754cb3a"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"TaskFinished","type":"event","signature":"0xbdb2c531f99168a6172097af6007b68a48354a4f86485f702c184de3ad967003"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xa6f9dae1"},{"inputs":[{"internalType":"string","name":"dataSet","type":"string"},{"internalType":"bytes32","name":"commitment","type":"bytes32"},{"internalType":"string","name":"taskType","type":"string"}],"name":"createTask","outputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"}],"stateMutability":"payable","type":"function","payable":true,"signature":"0x9bd3a869"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"}],"name":"endRound","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x01bd7269"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"finishTask","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x781d102a"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"candidateAddrs","type":"address[]"}],"name":"getClientPublickeys","outputs":[{"components":[{"internalType":"bytes","name":"pk1","type":"bytes"},{"internalType":"bytes","name":"pk2","type":"bytes"}],"internalType":"struct HFLContract.Candidate[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function","constant":true,"signature":"0xe26e8871"},{"inputs":[],"name":"getMaxCommitmentsLength","outputs":[{"internalType":"uint64","name":"sslength","type":"uint64"},{"internalType":"uint64","name":"weightLength","type":"uint64"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x5d3d7e63"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x893d20e8"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"address","name":"clientaddress","type":"address"},{"internalType":"uint64","name":"round","type":"uint64"}],"name":"getResultCommitment","outputs":[{"internalType":"bytes","name":"commitment","type":"bytes"}],"stateMutability":"view","type":"function","constant":true,"signature":"0xe36bb28c"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"senders","type":"address[]"},{"internalType":"address","name":"receiver","type":"address"}],"name":"getSecretSharingDatas","outputs":[{"components":[{"internalType":"bytes","name":"seedPiece","type":"bytes"},{"internalType":"bytes","name":"seedCommitment","type":"bytes"},{"internalType":"bytes","name":"secretKeyPiece","type":"bytes"},{"internalType":"bytes","name":"secretKeyMaskCommitment","type":"bytes"}],"internalType":"struct HFLContract.SSData[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x5ed14248"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"getTask","outputs":[{"components":[{"internalType":"address","name":"creator","type":"address"},{"internalType":"string","name":"creatorUrl","type":"string"},{"internalType":"string","name":"dataSet","type":"string"},{"internalType":"bytes32","name":"commitment","type":"bytes32"},{"internalType":"string","name":"taskType","type":"string"},{"internalType":"uint64","name":"currentRound","type":"uint64"},{"internalType":"bool","name":"finished","type":"bool"}],"internalType":"struct HFLContract.Task","name":"task","type":"tuple"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x15a29035"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"}],"name":"getTaskData","outputs":[{"components":[{"internalType":"address","name":"creator","type":"address"},{"internalType":"string","name":"creatorUrl","type":"string"},{"internalType":"string","name":"dataSet","type":"string"},{"internalType":"bytes32","name":"commitment","type":"bytes32"},{"internalType":"string","name":"taskType","type":"string"},{"internalType":"uint64","name":"currentRound","type":"uint64"},{"internalType":"bool","name":"finished","type":"bool"}],"internalType":"struct HFLContract.Task","name":"task","type":"tuple"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x58af9f73"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"}],"name":"getTaskRound","outputs":[{"components":[{"internalType":"uint64","name":"currentRound","type":"uint64"},{"internalType":"uint32","name":"maxSample","type":"uint32"},{"internalType":"uint32","name":"minSample","type":"uint32"},{"internalType":"uint8","name":"status","type":"uint8"},{"internalType":"address[]","name":"joinedAddrs","type":"address[]"}],"internalType":"struct HFLContract.ExtCallTaskRoundStruct","name":"taskround","type":"tuple"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x4893b362"},{"inputs":[],"name":"idContract","outputs":[{"internalType":"contract IdentityContract","name":"","type":"address"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x3045a939"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"bytes","name":"pk1","type":"bytes"},{"internalType":"bytes","name":"pk2","type":"bytes"}],"name":"joinRound","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function","signature":"0x91d48f52"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"addrs","type":"address[]"}],"name":"selectCandidates","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x41e865cb"},{"inputs":[{"internalType":"uint64","name":"maxLength","type":"uint64"}],"name":"setMaxSSCommitmentLength","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xd6f02142"},{"inputs":[{"internalType":"uint64","name":"maxLength","type":"uint64"}],"name":"setMaxWeightCommitmentLength","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xb71b768d"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"onlineClients","type":"address[]"}],"name":"startAggregate","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x4956219b"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"onlineClients","type":"address[]"}],"name":"startCalculate","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xabf2013a"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"uint32","name":"maxSample","type":"uint32"},{"internalType":"uint32","name":"minSample","type":"uint32"}],"name":"startRound","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x07dcfa8e"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"bytes","name":"resultCommitment","type":"bytes"}],"name":"uploadResultCommitment","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xebd3e836"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"receivers","type":"address[]"},{"internalType":"bytes[]","name":"secretKeyCommitments","type":"bytes[]"}],"name":"uploadSecretKeyCommitment","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xe49c9d43"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"senders","type":"address[]"},{"internalType":"bytes[]","name":"secretkeyMasks","type":"bytes[]"}],"name":"uploadSecretkeyMask","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xc96525ac"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"senders","type":"address[]"},{"internalType":"bytes[]","name":"seeds","type":"bytes[]"}],"name":"uploadSeed","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x1fd38b83"},{"inputs":[{"internalType":"bytes32","name":"taskId","type":"bytes32"},{"internalType":"uint64","name":"round","type":"uint64"},{"internalType":"address[]","name":"receivers","type":"address[]"},{"internalType":"bytes[]","name":"seedCommitments","type":"bytes[]"}],"name":"uploadSeedCommitment","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xb194c028"}],"byteCode":"6080604052600580546001600160801b0319166901000000000000a000001790553480156200002d57600080fd5b50604051620046e0380380620046e08339810160408190526200005091620000aa565b600080546001600160a01b03199081166001600160a01b03841617825560018054339216821790556040519091907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735908290a350620000dc565b600060208284031215620000bd57600080fd5b81516001600160a01b0381168114620000d557600080fd5b9392505050565b6145f480620000ec6000396000f3fe6080604052600436106101665760003560e01c8063893d20e8116100d1578063b71b768d1161008a578063e26e887111610064578063e26e887114610459578063e36bb28c14610486578063e49c9d43146104b3578063ebd3e836146104d357600080fd5b8063b71b768d146103f9578063c96525ac14610419578063d6f021421461043957600080fd5b8063893d20e81461032a57806391d48f52146103485780639bd3a86914610378578063a6f9dae114610399578063abf2013a146103b9578063b194c028146103d957600080fd5b80634893b362116101235780634893b3621461025b5780634956219b1461028857806358af9f73146101ad5780635d3d7e63146102a85780635ed14248146102dd578063781d102a1461030a57600080fd5b806301bd72691461016b57806307dcfa8e1461018d57806315a29035146101ad5780631fd38b83146101e35780633045a9391461020357806341e865cb1461023b575b600080fd5b34801561017757600080fd5b5061018b6101863660046138d5565b6104f3565b005b34801561019957600080fd5b5061018b6101a8366004613b18565b610616565b3480156101b957600080fd5b506101cd6101c836600461387e565b610944565b6040516101da9190614361565b60405180910390f35b3480156101ef57600080fd5b5061018b6101fe3660046139cb565b610bcf565b34801561020f57600080fd5b50600054610223906001600160a01b031681565b6040516001600160a01b0390911681526020016101da565b34801561024757600080fd5b5061018b610256366004613901565b611051565b34801561026757600080fd5b5061027b6102763660046138d5565b61124e565b6040516101da91906142c6565b34801561029457600080fd5b5061018b6102a3366004613901565b6113cf565b3480156102b457600080fd5b50600554604080516001600160401b03600160401b8404811682529092166020830152016101da565b3480156102e957600080fd5b506102fd6102f836600461395a565b6115f3565b6040516101da9190613d8c565b34801561031657600080fd5b5061018b61032536600461387e565b611a68565b34801561033657600080fd5b506001546001600160a01b0316610223565b34801561035457600080fd5b50610368610363366004613aa1565b611b3f565b60405190151581526020016101da565b61038b610386366004613b65565b611df5565b6040519081526020016101da565b3480156103a557600080fd5b5061018b6103b436600461385a565b612090565b3480156103c557600080fd5b5061018b6103d4366004613901565b612116565b3480156103e557600080fd5b5061018b6103f43660046139cb565b612284565b34801561040557600080fd5b5061018b610414366004613c97565b61266c565b34801561042557600080fd5b5061018b6104343660046139cb565b6126b9565b34801561044557600080fd5b5061018b610454366004613c97565b612b3c565b34801561046557600080fd5b50610479610474366004613901565b612b98565b6040516101da9190613d07565b34801561049257600080fd5b506104a66104a1366004613897565b612e40565b6040516101da91906140e3565b3480156104bf57600080fd5b5061018b6104ce3660046139cb565b612fed565b3480156104df57600080fd5b5061018b6104ee366004613a54565b6133d5565b60008281526002602052604090205482906001600160a01b031633146105345760405162461bcd60e51b815260040161052b906141a8565b60405180910390fd5b60008381526003602052604090208054849184916001108015610560575080546001600160401b038316105b61057c5760405162461bcd60e51b815260040161052b9061428f565b600086815260036020526040812080546001600160401b0388169081106105a5576105a561455a565b600091825260209182902060039190910201805460ff60801b1916600160821b178155604080518a81526001600160401b038a169381019390935280519193507f8888bd37d0d00a7edbfa5f8aa6dc49a4770abad0de65453622b4792128fc40fa928290030190a150505050505050565b60008481526002602052604090205484906001600160a01b031661064c5760405162461bcd60e51b815260040161052b90614266565b60008581526002602052604090205485906001600160a01b031633146106845760405162461bcd60e51b815260040161052b906141a8565b600086815260036020526040902080546001600160401b0387161461071c5760405162461bcd60e51b815260206004820152604260248201527f74686520726f756e6420686173206265656e20616c726561647920737461727460448201527f6564206f72207468652070726520726f756e6420646f6573206e6f74206578696064820152611cdd60f21b608482015260a40161052b565b600087815260026020526040902060058101805467ffffffffffffffff19166001600160401b0389161790555b8154158061076d575081546001600160401b0388169061076b90600190614491565b105b1561078357815460010182556000829052610749565b8682886001600160401b03168154811061079f5761079f61455a565b60009182526020909120600390910201805467ffffffffffffffff19166001600160401b03928316179055825487918491908a169081106107e2576107e261455a565b906000526020600020906003020160000160086101000a81548163ffffffff021916908363ffffffff1602179055508482886001600160401b03168154811061082d5761082d61455a565b9060005260206000209060030201600001600c6101000a81548163ffffffff021916908363ffffffff160217905550600082886001600160401b0316815481106108795761087961455a565b60009182526020909120600390910201805460ff60801b1916600160801b8360048111156108a9576108a9614544565b021790555060008881526004602052604090205b805415806108e1575080546001600160401b038916906108df90600190614491565b105b156108f7578054600101815560008190526108bd565b604080518a81526001600160401b038a1660208201527f442bd58918c05fbba21640a63d950e0ada0c085917a5c785fe24d66608972bd991015b60405180910390a1505050505050505050565b6040805160e0810182526000808252606060208301819052928201839052828201819052608082019290925260a0810182905260c081019190915260008281526002602052604090205482906001600160a01b03166109b55760405162461bcd60e51b815260040161052b90614266565b600083815260026020908152604091829020825160e0810190935280546001600160a01b0316835260018101805491928401916109f1906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054610a1d906144d8565b8015610a6a5780601f10610a3f57610100808354040283529160200191610a6a565b820191906000526020600020905b815481529060010190602001808311610a4d57829003601f168201915b50505050508152602001600282018054610a83906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054610aaf906144d8565b8015610afc5780601f10610ad157610100808354040283529160200191610afc565b820191906000526020600020905b815481529060010190602001808311610adf57829003601f168201915b5050505050815260200160038201548152602001600482018054610b1f906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4b906144d8565b8015610b985780601f10610b6d57610100808354040283529160200191610b98565b820191906000526020600020905b815481529060010190602001808311610b7b57829003601f168201915b5050509183525050600591909101546001600160401b0381166020830152600160401b900460ff1615156040909101529392505050565b60008681526003602052604090208054879187916001108015610bfb575080546001600160401b038316105b610c175760405162461bcd60e51b815260040161052b9061428f565b858414610c7a5760405162461bcd60e51b815260206004820152602b60248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f207360448201526a0cacac8e640d8cadccee8d60ab1b606482015260840161052b565b60005b84811015610d1f576000868683818110610c9957610c9961455a565b9050602002810190610cab919061444b565b9050118015610cf15750600554600160401b90046001600160401b0316868683818110610cda57610cda61455a565b9050602002810190610cec919061444b565b905011155b610d0d5760405162461bcd60e51b815260040161052b9061415a565b80610d1781614513565b915050610c7d565b50600089815260036020526040812080546001600160401b038b16908110610d4957610d4961455a565b6000918252602090912060039182020191508154600160801b900460ff166004811115610d7857610d78614544565b14610dbe5760405162461bcd60e51b81526020600482015260166024820152756e6f7420696e2075706c6f616420737320706861736560501b604482015260640161052b565b60008a8152600460205260408120805490919082906001600160401b038d16908110610dec57610dec61455a565b9060005260206000209060020201905060005b878110156110425760008260010160008d8d85818110610e2157610e2161455a565b9050602002016020810190610e36919061385a565b6001600160a01b031681526020808201929092526040908101600090812033825290925290206001018054610e6a906144d8565b905011610eb95760405162461bcd60e51b815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e7420666972737400000000604482015260640161052b565b8160010160008c8c84818110610ed157610ed161455a565b9050602002016020810190610ee6919061385a565b6001600160a01b031681526020808201929092526040908101600090812033825290925290208054610f17906144d8565b159050610f365760405162461bcd60e51b815260040161052b906141df565b888882818110610f4857610f4861455a565b9050602002810190610f5a919061444b565b8360010160008e8e86818110610f7257610f7261455a565b9050602002016020810190610f87919061385a565b6001600160a01b03168152602080820192909252604090810160009081203382529092529020610fb892909161360a565b5060008051602061459f8339815191528d8d8d8d85818110610fdc57610fdc61455a565b9050602002016020810190610ff1919061385a565b338d8d878181106110045761100461455a565b9050602002810190611016919061444b565b60405161102896959493929190613efd565b60405180910390a18061103a81614513565b915050610dff565b50505050505050505050505050565b60008481526002602052604090205484906001600160a01b031633146110895760405162461bcd60e51b815260040161052b906141a8565b600085815260036020526040902080548691869160011080156110b5575080546001600160401b038316105b6110d15760405162461bcd60e51b815260040161052b9061428f565b846111175760405162461bcd60e51b81526020600482015260166024820152754d7573742070726f766964652061646472657373657360501b604482015260640161052b565b600088815260036020526040812080546001600160401b038a169081106111405761114061455a565b9060005260206000209060030201905060005b868110156112065760008260010160008a8a858181106111755761117561455a565b905060200201602081019061118a919061385a565b6001600160a01b03168152602081019190915260400160002080546111ae906144d8565b9050116111f45760405162461bcd60e51b815260206004820152601460248201527310d85b991a59185d19481b5d5cdd08195e1a5cdd60621b604482015260640161052b565b806111fe81614513565b915050611153565b50805460ff60801b1916600160801b1781556040517f25b2b0a6205a2793a55299d05c21fb9163d38054d6966d101c156acdc2d7c92f90610931908b908b908b908b90614085565b6040805160a0810182526000808252602080830182905282840182905260608084018390526080840152858252600390529190912080548491849160011080156112a1575080546001600160401b038316105b6112bd5760405162461bcd60e51b815260040161052b9061428f565b600086815260036020526040812080546001600160401b0388169081106112e6576112e661455a565b60009182526020918290206040805160a081018252600390930290910180546001600160401b038116845263ffffffff600160401b8204811695850195909552600160601b810490941691830191909152925090606082019060ff600160801b90910416600481111561135b5761135b614544565b60ff168152602001826002018054806020026020016040519081016040528092919081815260200182805480156113bb57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161139d575b505050505081525094505050505092915050565b60008481526002602052604090205484906001600160a01b031633146114075760405162461bcd60e51b815260040161052b906141a8565b60008581526003602052604090208054869186916001108015611433575080546001600160401b038316105b61144f5760405162461bcd60e51b815260040161052b9061428f565b600088815260036020526040812080546001600160401b038a169081106114785761147861455a565b60009182526020909120600390910201905060028154600160801b900460ff1660048111156114a9576114a9614544565b146114f65760405162461bcd60e51b815260206004820152601b60248201527f43616c63756c6174696e6720686173206e6f7420737461727465640000000000604482015260640161052b565b805460ff60801b1916600360801b17815560005b868110156115bd5760008260010160008a8a8581811061152c5761152c61455a565b9050602002016020810190611541919061385a565b6001600160a01b0316815260208101919091526040016000208054611565906144d8565b9050116115ab5760405162461bcd60e51b815260206004820152601460248201527310d85b991a59185d19481b5d5cdd08195e1a5cdd60621b604482015260640161052b565b806115b581614513565b91505061150a565b507fa7c3d5c32db46529b13020e7508c4861d6c00a7b339c33d7ff5d9836dde4287f898989896040516109319493929190614085565b6000858152600360205260409020805460609187918791906001108015611623575080546001600160401b038316105b61163f5760405162461bcd60e51b815260040161052b9061428f565b600089815260046020526040902080548a918a916001600160401b0383161061167a5760405162461bcd60e51b815260040161052b90614123565b60008c815260046020526040902080546001600160401b038d1611156116b25760405162461bcd60e51b815260040161052b90614123565b6000818d6001600160401b0316815481106116cf576116cf61455a565b60009182526020822060029091020191508b6001600160401b038111156116f8576116f8614570565b60405190808252806020026020018201604052801561175457816020015b6117416040518060800160405280606081526020016060815260200160608152602001606081525090565b8152602001906001900390816117165790505b50905060005b8c811015611a55578260010160008f8f8481811061177a5761177a61455a565b905060200201602081019061178f919061385a565b6001600160a01b03166001600160a01b0316815260200190815260200160002060008d6001600160a01b03166001600160a01b031681526020019081526020016000206040518060800160405290816000820180546117ed906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054611819906144d8565b80156118665780601f1061183b57610100808354040283529160200191611866565b820191906000526020600020905b81548152906001019060200180831161184957829003601f168201915b5050505050815260200160018201805461187f906144d8565b80601f01602080910402602001604051908101604052809291908181526020018280546118ab906144d8565b80156118f85780601f106118cd576101008083540402835291602001916118f8565b820191906000526020600020905b8154815290600101906020018083116118db57829003601f168201915b50505050508152602001600282018054611911906144d8565b80601f016020809104026020016040519081016040528092919081815260200182805461193d906144d8565b801561198a5780601f1061195f5761010080835404028352916020019161198a565b820191906000526020600020905b81548152906001019060200180831161196d57829003601f168201915b505050505081526020016003820180546119a3906144d8565b80601f01602080910402602001604051908101604052809291908181526020018280546119cf906144d8565b8015611a1c5780601f106119f157610100808354040283529160200191611a1c565b820191906000526020600020905b8154815290600101906020018083116119ff57829003601f168201915b505050505081525050828281518110611a3757611a3761455a565b60200260200101819052508080611a4d90614513565b91505061175a565b509e9d5050505050505050505050505050565b60008181526002602052604090205481906001600160a01b0316611a9e5760405162461bcd60e51b815260040161052b90614266565b60008281526002602052604090205482906001600160a01b03163314611ad65760405162461bcd60e51b815260040161052b906141a8565b6000838152600260205260409081902060058101805468ff00000000000000001916600160401b17905590517fbdb2c531f99168a6172097af6007b68a48354a4f86485f702c184de3ad96700390611b319086815260200190565b60405180910390a150505050565b60008681526002602052604081205487906001600160a01b0316611b755760405162461bcd60e51b815260040161052b90614266565b60008881526003602052604090208054899189916001108015611ba1575080546001600160401b038316105b611bbd5760405162461bcd60e51b815260040161052b9061428f565b60008b815260036020526040812080549091908290611bde90600190614491565b81548110611bee57611bee61455a565b906000526020600020906003020190508b6001600160401b031660018380549050611c199190614491565b148015611c42575060008154600160801b900460ff166004811115611c4057611c40614544565b145b611c865760405162461bcd60e51b81526020600482015260156024820152741a9bda5b881c1a185cd9481a185cc81c185cdcd959605a1b604482015260640161052b565b33600090815260018201602052604090208054611ca2906144d8565b159050611d035760405162461bcd60e51b815260206004820152602960248201527f43616e6e6f74206a6f696e207468652073616d6520726f756e64206d756c7469604482015268706c652074696d657360b81b606482015260840161052b565b6040805160606020601f8e01819004028201810183529181018c815290918291908e908e9081908501838280828437600092019190915250505090825250604080516020601f8d018190048102820181019092528b815291810191908c908c90819084018382808284376000920182905250939094525050338152600184016020908152604090912083518051919350611da192849291019061368e565b506020828101518051611dba926001850192019061368e565b505050600201805460018181018355600092835260209092200180546001600160a01b03191633179055955050505050509695505050505050565b60008043338888888888604051602001611e159796959493929190614407565b60408051808303601f190181529082905280516020909101206000805463582115fb60e01b8452336004850152919350916001600160a01b039091169063582115fb9060240160006040518083038186803b158015611e7357600080fd5b505afa158015611e87573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611eaf9190810190613bde565b90506040518060e00160405280336001600160a01b031681526020018260200151815260200189898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250602080820189905260408051601f8901839004830281018301825288815292019190889088908190840183828082843760009201829052509385525050506020808301829052604092830182905285825260028152919020825181546001600160a01b0319166001600160a01b039091161781558282015180519192611f9c9260018501929091019061368e565b5060408201518051611fb891600284019160209091019061368e565b506060820151600382015560808201518051611fde91600484019160209091019061368e565b5060a08201516005909101805460c0909301511515600160401b0268ffffffffffffffffff199093166001600160401b039092169190911791909117905560008281526003602090815260408083208054600101815592839052908301519051939450849333917f8e25935a9ec6d103bff2bb6b248969c0cf317603fad46413c940773b5754cb3a9161207c9187918e918e918e908e908e90613e3a565b60405180910390a250505095945050505050565b6001546001600160a01b031633146120ba5760405162461bcd60e51b815260040161052b906140f6565b6001546040516001600160a01b038084169216907f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73590600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b60008481526002602052604090205484906001600160a01b0316331461214e5760405162461bcd60e51b815260040161052b906141a8565b6000858152600360205260409020805486918691600110801561217a575080546001600160401b038316105b6121965760405162461bcd60e51b815260040161052b9061428f565b600088815260036020526040812080546001600160401b038a169081106121bf576121bf61455a565b60009182526020909120600390910201905060018154600160801b900460ff1660048111156121f0576121f0614544565b1461223d5760405162461bcd60e51b815260206004820152601d60248201527f5468697320726f756e64206973206e6f742072756e6e696e67206e6f77000000604482015260640161052b565b805460ff60801b1916600160811b1781556040517fbc9bba2269f8b18f4ff8765379774de8dc70369c61ed47583189768c35d9e58d90610931908b908b908b908b90614085565b600086815260036020526040902080548791879160011080156122b0575080546001600160401b038316105b6122cc5760405162461bcd60e51b815260040161052b9061428f565b8584146123415760405162461bcd60e51b815260206004820152603760248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f2073656564436f6d6d69746d656e7473206c656e677468000000000000000000606482015260840161052b565b60005b848110156123e65760008686838181106123605761236061455a565b9050602002810190612372919061444b565b90501180156123b85750600554600160401b90046001600160401b03168686838181106123a1576123a161455a565b90506020028101906123b3919061444b565b905011155b6123d45760405162461bcd60e51b815260040161052b9061415a565b806123de81614513565b915050612344565b50600089815260036020526040812080546001600160401b038b169081106124105761241061455a565b60009182526020909120600390910201905060018154600160801b900460ff16600481111561244157612441614544565b1461248e5760405162461bcd60e51b815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e672070686173650000000000604482015260640161052b565b60008a8152600460205260408120805490919082906001600160401b038d169081106124bc576124bc61455a565b9060005260206000209060020201905060005b87811015611042573360009081526001830160205260408120908c8c848181106124fb576124fb61455a565b9050602002016020810190612510919061385a565b6001600160a01b03166001600160a01b03168152602001908152602001600020600101805461253e906144d8565b15905061255d5760405162461bcd60e51b815260040161052b90614220565b88888281811061256f5761256f61455a565b9050602002810190612581919061444b565b3360009081526001850160205260408120908e8e868181106125a5576125a561455a565b90506020020160208101906125ba919061385a565b6001600160a01b0316815260208101919091526040016000206125e29260019091019161360a565b5060008051602061459f8339815191528d8d338e8e868181106126075761260761455a565b905060200201602081019061261c919061385a565b8d8d8781811061262e5761262e61455a565b9050602002810190612640919061444b565b60405161265296959493929190613f5c565b60405180910390a18061266481614513565b9150506124cf565b6001546001600160a01b031633146126965760405162461bcd60e51b815260040161052b906140f6565b6005805467ffffffffffffffff19166001600160401b0392909216919091179055565b600086815260036020526040902080548791879160011080156126e5575080546001600160401b038316105b6127015760405162461bcd60e51b815260040161052b9061428f565b85841461276d5760405162461bcd60e51b815260206004820152603460248201527f73656e64657273206c656e677468206973206e6f7420657175616c20746f20736044820152730cac6e4cae8d6caf29ac2e6d6e640d8cadccee8d60631b606482015260840161052b565b60005b8481101561281257600086868381811061278c5761278c61455a565b905060200281019061279e919061444b565b90501180156127e45750600554600160401b90046001600160401b03168686838181106127cd576127cd61455a565b90506020028101906127df919061444b565b905011155b6128005760405162461bcd60e51b815260040161052b9061415a565b8061280a81614513565b915050612770565b50600089815260036020526040812080546001600160401b038b1690811061283c5761283c61455a565b6000918252602090912060039182020191508154600160801b900460ff16600481111561286b5761286b614544565b146128b15760405162461bcd60e51b81526020600482015260166024820152756e6f7420696e2075706c6f616420737320706861736560501b604482015260640161052b565b60008a8152600460205260408120805490919082906001600160401b038d169081106128df576128df61455a565b9060005260206000209060020201905060005b878110156110425760008260010160008d8d858181106129145761291461455a565b9050602002016020810190612929919061385a565b6001600160a01b03168152602080820192909252604090810160009081203382529092529020600301805461295d906144d8565b9050116129ac5760405162461bcd60e51b815260206004820152601c60248201527f6d7573742075706c6f616420636f6d6d69746d656e7420666972737400000000604482015260640161052b565b8160010160008c8c848181106129c4576129c461455a565b90506020020160208101906129d9919061385a565b6001600160a01b031681526020808201929092526040908101600090812033825290925290206002018054612a0d906144d8565b159050612a2c5760405162461bcd60e51b815260040161052b906141df565b888882818110612a3e57612a3e61455a565b9050602002810190612a50919061444b565b8360010160008e8e86818110612a6857612a6861455a565b9050602002016020810190612a7d919061385a565b6001600160a01b03168152602080820192909252604090810160009081203382529092529020612ab29260029091019161360a565b5060008051602061459f8339815191528d8d8d8d85818110612ad657612ad661455a565b9050602002016020810190612aeb919061385a565b338d8d87818110612afe57612afe61455a565b9050602002810190612b10919061444b565b604051612b2296959493929190614024565b60405180910390a180612b3481614513565b9150506128f2565b6001546001600160a01b03163314612b665760405162461bcd60e51b815260040161052b906140f6565b600580546001600160401b03909216600160401b026fffffffffffffffff000000000000000019909216919091179055565b6000848152600360205260409020805460609186918691906001108015612bc8575080546001600160401b038316105b612be45760405162461bcd60e51b815260040161052b9061428f565b6000856001600160401b03811115612bfe57612bfe614570565b604051908082528060200260200182016040528015612c4357816020015b6040805180820190915260608082526020820152815260200190600190039081612c1c5790505b50905060005b86811015612e335760008a815260036020526040902080546001600160401b038b16908110612c7a57612c7a61455a565b90600052602060002090600302016001016000898984818110612c9f57612c9f61455a565b9050602002016020810190612cb4919061385a565b6001600160a01b03166001600160a01b03168152602001908152602001600020604051806040016040529081600082018054612cef906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054612d1b906144d8565b8015612d685780601f10612d3d57610100808354040283529160200191612d68565b820191906000526020600020905b815481529060010190602001808311612d4b57829003601f168201915b50505050508152602001600182018054612d81906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054612dad906144d8565b8015612dfa5780601f10612dcf57610100808354040283529160200191612dfa565b820191906000526020600020905b815481529060010190602001808311612ddd57829003601f168201915b505050505081525050828281518110612e1557612e1561455a565b60200260200101819052508080612e2b90614513565b915050612c49565b5098975050505050505050565b6000838152600360205260409020805460609185918491906001108015612e70575080546001600160401b038316105b612e8c5760405162461bcd60e51b815260040161052b9061428f565b60008781526004602052604090208054889187916001600160401b03831610612ec75760405162461bcd60e51b815260040161052b90614123565b60008a815260046020526040902080546001600160401b038a161115612eff5760405162461bcd60e51b815260040161052b90614123565b6000818a6001600160401b031681548110612f1c57612f1c61455a565b906000526020600020906002020190508060000160008c6001600160a01b03166001600160a01b031681526020019081526020016000208054612f5e906144d8565b80601f0160208091040260200160405190810160405280929190818152602001828054612f8a906144d8565b8015612fd75780601f10612fac57610100808354040283529160200191612fd7565b820191906000526020600020905b815481529060010190602001808311612fba57829003601f168201915b5050505050985050505050505050509392505050565b60008681526003602052604090208054879187916001108015613019575080546001600160401b038316105b6130355760405162461bcd60e51b815260040161052b9061428f565b8584146130aa5760405162461bcd60e51b815260206004820152603c60248201527f726563656976657273206c656e677468206973206e6f7420657175616c20746f60448201527f207365637265744b6579436f6d6d69746d656e7473206c656e67746800000000606482015260840161052b565b60005b8481101561314f5760008686838181106130c9576130c961455a565b90506020028101906130db919061444b565b90501180156131215750600554600160401b90046001600160401b031686868381811061310a5761310a61455a565b905060200281019061311c919061444b565b905011155b61313d5760405162461bcd60e51b815260040161052b9061415a565b8061314781614513565b9150506130ad565b50600089815260036020526040812080546001600160401b038b169081106131795761317961455a565b60009182526020909120600390910201905060018154600160801b900460ff1660048111156131aa576131aa614544565b146131f75760405162461bcd60e51b815260206004820152601b60248201527f6e6f7420696e207365637265742073686172696e672070686173650000000000604482015260640161052b565b60008a8152600460205260408120805490919082906001600160401b038d169081106132255761322561455a565b9060005260206000209060020201905060005b87811015611042573360009081526001830160205260408120908c8c848181106132645761326461455a565b9050602002016020810190613279919061385a565b6001600160a01b03166001600160a01b0316815260200190815260200160002060030180546132a7906144d8565b1590506132c65760405162461bcd60e51b815260040161052b90614220565b8888828181106132d8576132d861455a565b90506020028101906132ea919061444b565b3360009081526001850160205260408120908e8e8681811061330e5761330e61455a565b9050602002016020810190613323919061385a565b6001600160a01b03168152602081019190915260400160002061334b9260039091019161360a565b5060008051602061459f8339815191528d8d338e8e868181106133705761337061455a565b9050602002016020810190613385919061385a565b8d8d878181106133975761339761455a565b90506020028101906133a9919061444b565b6040516133bb96959493929190613fbf565b60405180910390a1806133cd81614513565b915050613238565b60008481526003602052604090208054859185916001108015613401575080546001600160401b038316105b61341d5760405162461bcd60e51b815260040161052b9061428f565b831580159061343757506005546001600160401b03168411155b6134535760405162461bcd60e51b815260040161052b9061415a565b600087815260036020526040812080546001600160401b03891690811061347c5761347c61455a565b60009182526020909120600390910201905060028154600160801b900460ff1660048111156134ad576134ad614544565b146134f35760405162461bcd60e51b81526020600482015260166024820152756e6f7420696e2075706c6f6164696e6720706861736560501b604482015260640161052b565b6000888152600460205260408120805490919082906001600160401b038b169081106135215761352161455a565b60009182526020808320338452600290920290910190819052604090912080549192509061354e906144d8565b1590506135b35760405162461bcd60e51b815260206004820152602d60248201527f63616e6e6f742075706c6f616420776569676874436f6d6d69746d656e74206d60448201526c756c7469706c652074696d657360981b606482015260840161052b565b3360009081526020829052604090206135cd90898961360a565b5060008051602061459f8339815191528a8a3360008c8c6040516135f696959493929190613e8f565b60405180910390a150505050505050505050565b828054613616906144d8565b90600052602060002090601f016020900481019282613638576000855561367e565b82601f106136515782800160ff1982351617855561367e565b8280016001018555821561367e579182015b8281111561367e578235825591602001919060010190613663565b5061368a929150613702565b5090565b82805461369a906144d8565b90600052602060002090601f0160209004810192826136bc576000855561367e565b82601f106136d557805160ff191683800117855561367e565b8280016001018555821561367e579182015b8281111561367e5782518255916020019190600101906136e7565b5b8082111561368a5760008155600101613703565b60008083601f84011261372957600080fd5b5081356001600160401b0381111561374057600080fd5b6020830191508360208260051b850101111561375b57600080fd5b9250929050565b60008083601f84011261377457600080fd5b5081356001600160401b0381111561378b57600080fd5b60208301915083602082850101111561375b57600080fd5b600082601f8301126137b457600080fd5b81516001600160401b03808211156137ce576137ce614570565b604051601f8301601f19908116603f011681019082821181831017156137f6576137f6614570565b8160405283815286602085880101111561380f57600080fd5b6138208460208301602089016144a8565b9695505050505050565b803563ffffffff8116811461383e57600080fd5b919050565b80356001600160401b038116811461383e57600080fd5b60006020828403121561386c57600080fd5b813561387781614586565b9392505050565b60006020828403121561389057600080fd5b5035919050565b6000806000606084860312156138ac57600080fd5b8335925060208401356138be81614586565b91506138cc60408501613843565b90509250925092565b600080604083850312156138e857600080fd5b823591506138f860208401613843565b90509250929050565b6000806000806060858703121561391757600080fd5b8435935061392760208601613843565b925060408501356001600160401b0381111561394257600080fd5b61394e87828801613717565b95989497509550505050565b60008060008060006080868803121561397257600080fd5b8535945061398260208701613843565b935060408601356001600160401b0381111561399d57600080fd5b6139a988828901613717565b90945092505060608601356139bd81614586565b809150509295509295909350565b600080600080600080608087890312156139e457600080fd5b863595506139f460208801613843565b945060408701356001600160401b0380821115613a1057600080fd5b613a1c8a838b01613717565b90965094506060890135915080821115613a3557600080fd5b50613a4289828a01613717565b979a9699509497509295939492505050565b60008060008060608587031215613a6a57600080fd5b84359350613a7a60208601613843565b925060408501356001600160401b03811115613a9557600080fd5b61394e87828801613762565b60008060008060008060808789031215613aba57600080fd5b86359550613aca60208801613843565b945060408701356001600160401b0380821115613ae657600080fd5b613af28a838b01613762565b90965094506060890135915080821115613b0b57600080fd5b50613a4289828a01613762565b60008060008060808587031215613b2e57600080fd5b84359350613b3e60208601613843565b9250613b4c6040860161382a565b9150613b5a6060860161382a565b905092959194509250565b600080600080600060608688031215613b7d57600080fd5b85356001600160401b0380821115613b9457600080fd5b613ba089838a01613762565b9097509550602088013594506040880135915080821115613bc057600080fd5b50613bcd88828901613762565b969995985093965092949392505050565b600060208284031215613bf057600080fd5b81516001600160401b0380821115613c0757600080fd5b9083019060608286031215613c1b57600080fd5b604051606081018181108382111715613c3657613c36614570565b6040528251613c4481614586565b8152602083015182811115613c5857600080fd5b613c64878286016137a3565b602083015250604083015182811115613c7c57600080fd5b613c88878286016137a3565b60408301525095945050505050565b600060208284031215613ca957600080fd5b61387782613843565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60008151808452613cf38160208601602086016144a8565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015613d7e57888303603f1901855281518051878552613d5288860182613cdb565b91890151858303868b0152919050613d6a8183613cdb565b968901969450505090860190600101613d2e565b509098975050505050505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015613d7e57603f19898403018552815160808151818652613dd982870182613cdb565b915050888201518582038a870152613df18282613cdb565b9150508782015185820389870152613e098282613cdb565b91505060608083015192508582038187015250613e268183613cdb565b968901969450505090860190600101613db3565b87815260a060208201526000613e5460a08301888a613cb2565b8281036040840152613e668188613cdb565b90508560608401528281036080840152613e81818587613cb2565b9a9950505050505050505050565b8681526001600160401b03861660208201526001600160a01b0385811660408301528416606082015260c0608082018190526006908201526515d15251d21560d21b60e082015261010060a08201819052600090613ef08184018587613cb2565b9998505050505050505050565b8681526001600160401b03861660208201526001600160a01b0385811660408301528416606082015260c0608082018190526004908201526314d1515160e21b60e082015261010060a08201819052600090613ef08184018587613cb2565b8681526001600160401b03861660208201526001600160a01b0385811660408301528416606082015260c0608082018190526008908201526714d1515110d3535560c21b60e082015261010060a08201819052600090613ef08184018587613cb2565b8681526001600160401b03861660208201526001600160a01b0385811660408301528416606082015260c060808201819052600a908201526914d2d35054d2d0d3535560b21b60e082015261010060a08201819052600090613ef08184018587613cb2565b8681526001600160401b03861660208201526001600160a01b0385811660408301528416606082015260c06080820181905260069082015265534b4d41534b60d01b60e082015261010060a08201819052600090613ef08184018587613cb2565b60006060820186835260206001600160401b03871681850152606060408501528185835260808501905086925060005b86811015612e335783356140c881614586565b6001600160a01b0316825292820192908201906001016140b5565b6020815260006138776020830184613cdb565b60208082526013908201527221b0b63632b91034b9903737ba1037bbb732b960691b604082015260600190565b6020808252601a908201527f546865205461736b20526f756e64204d75737420657869737473000000000000604082015260600190565b6020808252602e908201527f636f6d6d69746d656e74206c656e6774682065786365656473206c696d69742060408201526d6f7220697420697320656d70747960901b606082015260800190565b6020808252601d908201527f4d7573742063616c6c656420627920746865207461736b206f776e6572000000604082015260600190565b60208082526021908201527f63616e6e6f742075706c6f61642073656564206d756c7469706c652074696d656040820152607360f81b606082015260800190565b60208082526026908201527f63616e6e6f742075706c6f6164207365656420636d6d74206d756c7469706c656040820152652074696d657360d01b606082015260800190565b6020808252600f908201526e5461736b206e6f742065786973747360881b604082015260600190565b60208082526019908201527f7468697320726f756e6420646f6573206e6f7420657869737400000000000000604082015260600190565b6000602080835260c083016001600160401b03855116828501528185015163ffffffff8082166040870152806040880151166060870152505060ff6060860151166080850152608085015160a08086015281815180845260e0870191508483019350600092505b808310156143565783516001600160a01b0316825292840192600192909201919084019061432d565b509695505050505050565b602080825282516001600160a01b03168282015282015160e06040830152600090614390610100840182613cdb565b90506040840151601f19808584030160608601526143ae8383613cdb565b92506060860151608086015260808601519150808584030160a0860152506143d68282613cdb565b9150506001600160401b0360a08501511660c084015260c08401516143ff60e085018215159052565b509392505050565b8781526001600160a01b038716602082015260a0604082018190526000906144329083018789613cb2565b8560608401528281036080840152613e81818587613cb2565b6000808335601e1984360301811261446257600080fd5b8301803591506001600160401b0382111561447c57600080fd5b60200191503681900382131561375b57600080fd5b6000828210156144a3576144a361452e565b500390565b60005b838110156144c35781810151838201526020016144ab565b838111156144d2576000848401525b50505050565b600181811c908216806144ec57607f821691505b6020821081141561450d57634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156145275761452761452e565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461459b57600080fd5b5056feeb99944e87d6d60f29399426ac461b929aaa92b0fec2ae9a6f04bc90b0c3d5aaa2646970667358221220a77b0a828924aadc08fdae5b4cbdefe3135f6f8d6a6777e17a2dc48585e4234464736f6c63430008060033","txHash":"0x82f262eebd5f8adbb4b1cadb03b48efe381b4fec26e552fd1564ed75b530b216","receipt":{"blockHash":"0xd71002e71f326f5eee5ccc9e84cfc169d76aa2595cc7256d4c2b58222808eec2","blockNumber":1903789,"contractAddress":"0x3830C82700B050dA87F1D1A60104Fb667227B686","cumulativeGasUsed":3988015,"from":"0xcae73102154059df0cdb628413a866b15ce81cd9","gasUsed":3988015,"logs":[{"address":"0x3830C82700B050dA87F1D1A60104Fb667227B686","blockHash":"0xd71002e71f326f5eee5ccc9e84cfc169d76aa2595cc7256d4c2b58222808eec2","blockNumber":1903789,"data":"0x","logIndex":0,"removed":false,"topics":["0x342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000cae73102154059df0cdb628413a866b15ce81cd9"],"transactionHash":"0x82f262eebd5f8adbb4b1cadb03b48efe381b4fec26e552fd1564ed75b530b216","transactionIndex":0,"transactionLogIndex":"0x0","id":"log_5f556d6f"}],"logsBloom":"0x00000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000200000000000000000000000000000000800000000000000000000800000000000000000000000000000000000000000000000020000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000100000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000400000000000000000000000000000000000000000000000","status":true,"to":null,"transactionHash":"0x82f262eebd5f8adbb4b1cadb03b48efe381b4fec26e552fd1564ed75b530b216","transactionIndex":0},"address":"0x3830C82700B050dA87F1D1A60104Fb667227B686"} diff --git a/compile/IdentityContract.json b/compile/IdentityContract.json index d0c91f9..9a87a4c 100644 --- a/compile/IdentityContract.json +++ b/compile/IdentityContract.json @@ -1,13291 +1 @@ -{ - "contractName": "IdentityContract", - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "url", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "name": "NodeJoined", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "url", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "name": "NodeLeaved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "url", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "name": "NodeUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "oldOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnerSet", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "url", - "type": "string" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "name": "join", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "url", - "type": "string" - } - ], - "name": "updateUrl", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "name": "updateName", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "leave", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getNodeInfo", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "url", - "type": "string" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "internalType": "struct IdentityContract.Node", - "name": "node", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeJoined\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeLeaved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnerSet\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getNodeInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"struct IdentityContract.Node\",\"name\":\"node\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"join\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"leave\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"updateName\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"name\":\"updateUrl\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Identity.sol\":\"IdentityContract\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/Identity.sol\":{\"keccak256\":\"0x9a1b17d491a0f8194413917595bd70eb795307779a2c5ab2b7ce057ac4974bcf\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://5cbf30353d05ba5f01a507daf760a8fdffeae118e607aa4221d552bd634fd807\",\"dweb:/ipfs/Qmat9bD6Ym9mLj2qfw6R3nk5XkBsMJASLUVgDauXDTkup5\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a361144c806100db6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806329803b211461005c578063582115fb1461007857806384da92a7146100a8578063d66d9e19146100c4578063f928edc2146100ce575b600080fd5b61007660048036038101906100719190610e3f565b6100ea565b005b610092600480360381019061008d9190610f1e565b610335565b60405161009f9190611028565b60405180910390f35b6100c260048036038101906100bd919061104a565b61059f565b005b6100cc610760565b005b6100e860048036038101906100e3919061104a565b610a8c565b005b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461013a906110c6565b905014801561019757506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610193906110c6565b9050145b6101d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101cd90611155565b60405180910390fd5b604051806040016040528086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815250600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906102ce929190610c4d565b5060208201518160010190805190602001906102eb929190610c4d565b509050507f26e049335acb952e44de7f01b0fd40f3bd53cfba74c61199e7654c71e2d556c133868686866040516103269594939291906111c0565b60405180910390a15050505050565b61033d610cd3565b816000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461038d906110c6565b90501180156103ea57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180546103e6906110c6565b9050115b610429576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161042090611255565b60405180910390fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020604051806040016040529081600082018054610483906110c6565b80601f01602080910402602001604051908101604052809291908181526020018280546104af906110c6565b80156104fc5780601f106104d1576101008083540402835291602001916104fc565b820191906000526020600020905b8154815290600101906020018083116104df57829003601f168201915b50505050508152602001600182018054610515906110c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610541906110c6565b801561058e5780601f106105635761010080835404028352916020019161058e565b820191906000526020600020905b81548152906001019060200180831161057157829003601f168201915b505050505081525050915050919050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010180546105ef906110c6565b905011801561064c57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610648906110c6565b9050115b61068b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068290611255565b60405180910390fd5b8282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010191906106dc929190610ced565b507f8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba72533600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018585604051610753949392919061130a565b60405180910390a1505050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010180546107b0906110c6565b905011801561080d57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610809906110c6565b9050115b61084c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084390611255565b60405180910390fd5b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805461089b906110c6565b80601f01602080910402602001604051908101604052809291908181526020018280546108c7906110c6565b80156109145780601f106108e957610100808354040283529160200191610914565b820191906000526020600020905b8154815290600101906020018083116108f757829003601f168201915b505050505090506000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461096a906110c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610996906110c6565b80156109e35780601f106109b8576101008083540402835291602001916109e3565b820191906000526020600020905b8154815290600101906020018083116109c657829003601f168201915b50505050509050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008082016000610a3a9190610d73565b600182016000610a4a9190610d73565b50507fe6cce2c467e7cff22040fe784d410127854a34b9cf37b4c179f62afef96dd07d338383604051610a7f9392919061138a565b60405180910390a1505050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054610adc906110c6565b9050118015610b3957506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610b35906110c6565b9050115b610b78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6f90611255565b60405180910390fd5b8282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000019190610bc9929190610ced565b507f8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba725338484600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101604051610c4094939291906113cf565b60405180910390a1505050565b828054610c59906110c6565b90600052602060002090601f016020900481019282610c7b5760008555610cc2565b82601f10610c9457805160ff1916838001178555610cc2565b82800160010185558215610cc2579182015b82811115610cc1578251825591602001919060010190610ca6565b5b509050610ccf9190610db3565b5090565b604051806040016040528060608152602001606081525090565b828054610cf9906110c6565b90600052602060002090601f016020900481019282610d1b5760008555610d62565b82601f10610d3457803560ff1916838001178555610d62565b82800160010185558215610d62579182015b82811115610d61578235825591602001919060010190610d46565b5b509050610d6f9190610db3565b5090565b508054610d7f906110c6565b6000825580601f10610d915750610db0565b601f016020900490600052602060002090810190610daf9190610db3565b5b50565b5b80821115610dcc576000816000905550600101610db4565b5090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610dff57610dfe610dda565b5b8235905067ffffffffffffffff811115610e1c57610e1b610ddf565b5b602083019150836001820283011115610e3857610e37610de4565b5b9250929050565b60008060008060408587031215610e5957610e58610dd0565b5b600085013567ffffffffffffffff811115610e7757610e76610dd5565b5b610e8387828801610de9565b9450945050602085013567ffffffffffffffff811115610ea657610ea5610dd5565b5b610eb287828801610de9565b925092505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610eeb82610ec0565b9050919050565b610efb81610ee0565b8114610f0657600080fd5b50565b600081359050610f1881610ef2565b92915050565b600060208284031215610f3457610f33610dd0565b5b6000610f4284828501610f09565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610f85578082015181840152602081019050610f6a565b83811115610f94576000848401525b50505050565b6000601f19601f8301169050919050565b6000610fb682610f4b565b610fc08185610f56565b9350610fd0818560208601610f67565b610fd981610f9a565b840191505092915050565b600060408301600083015184820360008601526110018282610fab565b9150506020830151848203602086015261101b8282610fab565b9150508091505092915050565b600060208201905081810360008301526110428184610fe4565b905092915050565b6000806020838503121561106157611060610dd0565b5b600083013567ffffffffffffffff81111561107f5761107e610dd5565b5b61108b85828601610de9565b92509250509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806110de57607f821691505b602082108114156110f2576110f1611097565b5b50919050565b600082825260208201905092915050565b7f6e6f64652068617320616c7265616479206a6f696e656420696e000000000000600082015250565b600061113f601a836110f8565b915061114a82611109565b602082019050919050565b6000602082019050818103600083015261116e81611132565b9050919050565b61117e81610ee0565b82525050565b82818337600083830152505050565b600061119f83856110f8565b93506111ac838584611184565b6111b583610f9a565b840190509392505050565b60006060820190506111d56000830188611175565b81810360208301526111e8818688611193565b905081810360408301526111fd818486611193565b90509695505050505050565b7f6e6f646520686173206e6f74206a6f696e656420696e00000000000000000000600082015250565b600061123f6016836110f8565b915061124a82611209565b602082019050919050565b6000602082019050818103600083015261126e81611232565b9050919050565b60008190508160005260206000209050919050565b60008154611297816110c6565b6112a181866110f8565b945060018216600081146112bc57600181146112ce57611301565b60ff1983168652602086019350611301565b6112d785611275565b60005b838110156112f9578154818901526001820191506020810190506112da565b808801955050505b50505092915050565b600060608201905061131f6000830187611175565b8181036020830152611331818661128a565b90508181036040830152611346818486611193565b905095945050505050565b600061135c82610f4b565b61136681856110f8565b9350611376818560208601610f67565b61137f81610f9a565b840191505092915050565b600060608201905061139f6000830186611175565b81810360208301526113b18185611351565b905081810360408301526113c58184611351565b9050949350505050565b60006060820190506113e46000830187611175565b81810360208301526113f7818587611193565b9050818103604083015261140b818461128a565b90509594505050505056fea2646970667358221220e159e57717c66b674a0a122f1d2a57dd9436f1995ca7004a2bafa59862939e8864736f6c634300080a0033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c806329803b211461005c578063582115fb1461007857806384da92a7146100a8578063d66d9e19146100c4578063f928edc2146100ce575b600080fd5b61007660048036038101906100719190610e3f565b6100ea565b005b610092600480360381019061008d9190610f1e565b610335565b60405161009f9190611028565b60405180910390f35b6100c260048036038101906100bd919061104a565b61059f565b005b6100cc610760565b005b6100e860048036038101906100e3919061104a565b610a8c565b005b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461013a906110c6565b905014801561019757506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610193906110c6565b9050145b6101d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101cd90611155565b60405180910390fd5b604051806040016040528086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815250600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906102ce929190610c4d565b5060208201518160010190805190602001906102eb929190610c4d565b509050507f26e049335acb952e44de7f01b0fd40f3bd53cfba74c61199e7654c71e2d556c133868686866040516103269594939291906111c0565b60405180910390a15050505050565b61033d610cd3565b816000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461038d906110c6565b90501180156103ea57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180546103e6906110c6565b9050115b610429576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161042090611255565b60405180910390fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020604051806040016040529081600082018054610483906110c6565b80601f01602080910402602001604051908101604052809291908181526020018280546104af906110c6565b80156104fc5780601f106104d1576101008083540402835291602001916104fc565b820191906000526020600020905b8154815290600101906020018083116104df57829003601f168201915b50505050508152602001600182018054610515906110c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610541906110c6565b801561058e5780601f106105635761010080835404028352916020019161058e565b820191906000526020600020905b81548152906001019060200180831161057157829003601f168201915b505050505081525050915050919050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010180546105ef906110c6565b905011801561064c57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610648906110c6565b9050115b61068b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068290611255565b60405180910390fd5b8282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010191906106dc929190610ced565b507f8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba72533600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018585604051610753949392919061130a565b60405180910390a1505050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010180546107b0906110c6565b905011801561080d57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610809906110c6565b9050115b61084c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084390611255565b60405180910390fd5b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805461089b906110c6565b80601f01602080910402602001604051908101604052809291908181526020018280546108c7906110c6565b80156109145780601f106108e957610100808354040283529160200191610914565b820191906000526020600020905b8154815290600101906020018083116108f757829003601f168201915b505050505090506000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461096a906110c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610996906110c6565b80156109e35780601f106109b8576101008083540402835291602001916109e3565b820191906000526020600020905b8154815290600101906020018083116109c657829003601f168201915b50505050509050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008082016000610a3a9190610d73565b600182016000610a4a9190610d73565b50507fe6cce2c467e7cff22040fe784d410127854a34b9cf37b4c179f62afef96dd07d338383604051610a7f9392919061138a565b60405180910390a1505050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054610adc906110c6565b9050118015610b3957506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054610b35906110c6565b9050115b610b78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6f90611255565b60405180910390fd5b8282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000019190610bc9929190610ced565b507f8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba725338484600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101604051610c4094939291906113cf565b60405180910390a1505050565b828054610c59906110c6565b90600052602060002090601f016020900481019282610c7b5760008555610cc2565b82601f10610c9457805160ff1916838001178555610cc2565b82800160010185558215610cc2579182015b82811115610cc1578251825591602001919060010190610ca6565b5b509050610ccf9190610db3565b5090565b604051806040016040528060608152602001606081525090565b828054610cf9906110c6565b90600052602060002090601f016020900481019282610d1b5760008555610d62565b82601f10610d3457803560ff1916838001178555610d62565b82800160010185558215610d62579182015b82811115610d61578235825591602001919060010190610d46565b5b509050610d6f9190610db3565b5090565b508054610d7f906110c6565b6000825580601f10610d915750610db0565b601f016020900490600052602060002090810190610daf9190610db3565b5b50565b5b80821115610dcc576000816000905550600101610db4565b5090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610dff57610dfe610dda565b5b8235905067ffffffffffffffff811115610e1c57610e1b610ddf565b5b602083019150836001820283011115610e3857610e37610de4565b5b9250929050565b60008060008060408587031215610e5957610e58610dd0565b5b600085013567ffffffffffffffff811115610e7757610e76610dd5565b5b610e8387828801610de9565b9450945050602085013567ffffffffffffffff811115610ea657610ea5610dd5565b5b610eb287828801610de9565b925092505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610eeb82610ec0565b9050919050565b610efb81610ee0565b8114610f0657600080fd5b50565b600081359050610f1881610ef2565b92915050565b600060208284031215610f3457610f33610dd0565b5b6000610f4284828501610f09565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610f85578082015181840152602081019050610f6a565b83811115610f94576000848401525b50505050565b6000601f19601f8301169050919050565b6000610fb682610f4b565b610fc08185610f56565b9350610fd0818560208601610f67565b610fd981610f9a565b840191505092915050565b600060408301600083015184820360008601526110018282610fab565b9150506020830151848203602086015261101b8282610fab565b9150508091505092915050565b600060208201905081810360008301526110428184610fe4565b905092915050565b6000806020838503121561106157611060610dd0565b5b600083013567ffffffffffffffff81111561107f5761107e610dd5565b5b61108b85828601610de9565b92509250509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806110de57607f821691505b602082108114156110f2576110f1611097565b5b50919050565b600082825260208201905092915050565b7f6e6f64652068617320616c7265616479206a6f696e656420696e000000000000600082015250565b600061113f601a836110f8565b915061114a82611109565b602082019050919050565b6000602082019050818103600083015261116e81611132565b9050919050565b61117e81610ee0565b82525050565b82818337600083830152505050565b600061119f83856110f8565b93506111ac838584611184565b6111b583610f9a565b840190509392505050565b60006060820190506111d56000830188611175565b81810360208301526111e8818688611193565b905081810360408301526111fd818486611193565b90509695505050505050565b7f6e6f646520686173206e6f74206a6f696e656420696e00000000000000000000600082015250565b600061123f6016836110f8565b915061124a82611209565b602082019050919050565b6000602082019050818103600083015261126e81611232565b9050919050565b60008190508160005260206000209050919050565b60008154611297816110c6565b6112a181866110f8565b945060018216600081146112bc57600181146112ce57611301565b60ff1983168652602086019350611301565b6112d785611275565b60005b838110156112f9578154818901526001820191506020810190506112da565b808801955050505b50505092915050565b600060608201905061131f6000830187611175565b8181036020830152611331818661128a565b90508181036040830152611346818486611193565b905095945050505050565b600061135c82610f4b565b61136681856110f8565b9350611376818560208601610f67565b61137f81610f9a565b840191505092915050565b600060608201905061139f6000830186611175565b81810360208301526113b18185611351565b905081810360408301526113c58184611351565b9050949350505050565b60006060820190506113e46000830187611175565b81810360208301526113f7818587611193565b9050818103604083015261140b818461128a565b90509594505050505056fea2646970667358221220e159e57717c66b674a0a122f1d2a57dd9436f1995ca7004a2bafa59862939e8864736f6c634300080a0033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:12878:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "47:35:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "57:19:2", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "73:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "67:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "67:9:2" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "57:6:2" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "40:6:2", - "type": "" - } - ], - "src": "7:75:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "177:28:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "194:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "197:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "187:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "187:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "187:12:2" - } - ] - }, - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulFunctionDefinition", - "src": "88:117:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "300:28:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "317:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "320:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "310:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "310:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "310:12:2" - } - ] - }, - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulFunctionDefinition", - "src": "211:117:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "423:28:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "440:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "443:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "433:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "433:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "433:12:2" - } - ] - }, - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulFunctionDefinition", - "src": "334:117:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "546:28:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "563:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "566:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "556:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "556:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "556:12:2" - } - ] - }, - "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", - "nodeType": "YulFunctionDefinition", - "src": "457:117:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "669:28:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "686:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "689:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "679:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "679:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "679:12:2" - } - ] - }, - "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", - "nodeType": "YulFunctionDefinition", - "src": "580:117:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "792:478:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "841:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulIdentifier", - "src": "843:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "843:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "843:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "820:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "828:4:2", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "816:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "816:17:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "835:3:2" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "812:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "812:27:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "805:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "805:35:2" - }, - "nodeType": "YulIf", - "src": "802:122:2" - }, - { - "nodeType": "YulAssignment", - "src": "933:30:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "956:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "943:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "943:20:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "933:6:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1006:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", - "nodeType": "YulIdentifier", - "src": "1008:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "1008:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1008:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "978:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "986:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "975:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "975:30:2" - }, - "nodeType": "YulIf", - "src": "972:117:2" - }, - { - "nodeType": "YulAssignment", - "src": "1098:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1114:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1122:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1110:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1110:17:2" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "1098:8:2" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1181:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", - "nodeType": "YulIdentifier", - "src": "1183:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "1183:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1183:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "1146:8:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1160:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1168:4:2", - "type": "", - "value": "0x01" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "1156:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1156:17:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1142:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1142:32:2" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1176:3:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1139:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "1139:41:2" - }, - "nodeType": "YulIf", - "src": "1136:128:2" - } - ] - }, - "name": "abi_decode_t_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "759:6:2", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "767:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "775:8:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "785:6:2", - "type": "" - } - ], - "src": "717:553:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1399:751:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1445:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "1447:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "1447:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1447:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1420:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1429:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1416:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1416:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1441:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1412:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1412:32:2" - }, - "nodeType": "YulIf", - "src": "1409:119:2" - }, - { - "nodeType": "YulBlock", - "src": "1538:297:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1553:45:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1584:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1595:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1580:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1580:17:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1567:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1567:31:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1557:6:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1645:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "1647:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "1647:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1647:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1617:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1625:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1614:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "1614:30:2" - }, - "nodeType": "YulIf", - "src": "1611:117:2" - }, - { - "nodeType": "YulAssignment", - "src": "1742:83:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1797:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1808:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1793:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1793:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1817:7:2" - } - ], - "functionName": { - "name": "abi_decode_t_string_calldata_ptr", - "nodeType": "YulIdentifier", - "src": "1760:32:2" - }, - "nodeType": "YulFunctionCall", - "src": "1760:65:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1742:6:2" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1750:6:2" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "1845:298:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1860:46:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1891:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1902:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1887:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "1887:18:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1874:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "1874:32:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1864:6:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1953:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "1955:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "1955:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "1955:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1925:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1933:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1922:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "1922:30:2" - }, - "nodeType": "YulIf", - "src": "1919:117:2" - }, - { - "nodeType": "YulAssignment", - "src": "2050:83:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2105:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2116:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2101:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2101:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2125:7:2" - } - ], - "functionName": { - "name": "abi_decode_t_string_calldata_ptr", - "nodeType": "YulIdentifier", - "src": "2068:32:2" - }, - "nodeType": "YulFunctionCall", - "src": "2068:65:2" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2050:6:2" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "2058:6:2" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1345:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1356:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1368:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1376:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "1384:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "1392:6:2", - "type": "" - } - ], - "src": "1276:874:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2201:81:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2211:65:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2226:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2233:42:2", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2222:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2222:54:2" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "2211:7:2" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2183:5:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "2193:7:2", - "type": "" - } - ], - "src": "2156:126:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2333:51:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2343:35:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2372:5:2" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "2354:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "2354:24:2" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "2343:7:2" - } - ] - } - ] - }, - "name": "cleanup_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2315:5:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "2325:7:2", - "type": "" - } - ], - "src": "2288:96:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2433:79:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2490:16:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2499:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2502:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2492:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "2492:12:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2492:12:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2456:5:2" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2481:5:2" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "2463:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "2463:24:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2453:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "2453:35:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2446:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "2446:43:2" - }, - "nodeType": "YulIf", - "src": "2443:63:2" - } - ] - }, - "name": "validator_revert_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2426:5:2", - "type": "" - } - ], - "src": "2390:122:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2570:87:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2580:29:2", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2602:6:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2589:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "2589:20:2" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2580:5:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2645:5:2" - } - ], - "functionName": { - "name": "validator_revert_t_address", - "nodeType": "YulIdentifier", - "src": "2618:26:2" - }, - "nodeType": "YulFunctionCall", - "src": "2618:33:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2618:33:2" - } - ] - }, - "name": "abi_decode_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2548:6:2", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2556:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2564:5:2", - "type": "" - } - ], - "src": "2518:139:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2729:263:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2775:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "2777:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "2777:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "2777:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2750:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2759:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2746:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2746:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2771:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2742:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2742:32:2" - }, - "nodeType": "YulIf", - "src": "2739:119:2" - }, - { - "nodeType": "YulBlock", - "src": "2868:117:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2883:15:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2897:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2887:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2912:63:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2947:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2958:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2943:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "2943:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2967:7:2" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "2922:20:2" - }, - "nodeType": "YulFunctionCall", - "src": "2922:53:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2912:6:2" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2699:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2710:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2722:6:2", - "type": "" - } - ], - "src": "2663:329:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3057:40:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3068:22:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3084:5:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3078:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3078:12:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3068:6:2" - } - ] - } - ] - }, - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3040:5:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3050:6:2", - "type": "" - } - ], - "src": "2998:99:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3189:73:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3206:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3211:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3199:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3199:19:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3199:19:2" - }, - { - "nodeType": "YulAssignment", - "src": "3227:29:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3246:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3251:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3242:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3242:14:2" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "3227:11:2" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3161:3:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3166:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "3177:11:2", - "type": "" - } - ], - "src": "3103:159:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3317:258:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3327:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3336:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "3331:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3396:63:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "3421:3:2" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3426:1:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3417:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3417:11:2" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3440:3:2" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3445:1:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3436:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3436:11:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3430:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "3430:18:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3410:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3410:39:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3410:39:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3357:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3360:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3354:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "3354:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "3368:19:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3370:15:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3379:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3382:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3375:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3375:10:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3370:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "3350:3:2", - "statements": [] - }, - "src": "3346:113:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3493:76:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "3543:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3548:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3539:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3539:16:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3557:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3532:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "3532:27:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3532:27:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3474:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3477:6:2" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3471:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "3471:13:2" - }, - "nodeType": "YulIf", - "src": "3468:101:2" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "3299:3:2", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "3304:3:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3309:6:2", - "type": "" - } - ], - "src": "3268:307:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3629:54:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3639:38:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3657:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3664:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3653:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3653:14:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3673:2:2", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3669:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3669:7:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3649:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3649:28:2" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "3639:6:2" - } - ] - } - ] - }, - "name": "round_up_to_mul_of_32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3612:5:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "3622:6:2", - "type": "" - } - ], - "src": "3581:102:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3771:262:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3781:53:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3828:5:2" - } - ], - "functionName": { - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "3795:32:2" - }, - "nodeType": "YulFunctionCall", - "src": "3795:39:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3785:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3843:68:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3899:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3904:6:2" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "3850:48:2" - }, - "nodeType": "YulFunctionCall", - "src": "3850:61:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3843:3:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3946:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3953:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3942:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3942:16:2" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3960:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3965:6:2" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "3920:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "3920:52:2" - }, - "nodeType": "YulExpressionStatement", - "src": "3920:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "3981:46:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3992:3:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4019:6:2" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "3997:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "3997:29:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3988:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "3988:39:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3981:3:2" - } - ] - } - ] - }, - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3752:5:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3759:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3767:3:2", - "type": "" - } - ], - "src": "3689:344:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4225:552:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4235:26:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4251:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4256:4:2", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4247:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4247:14:2" - }, - "variables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4239:4:2", - "type": "" - } - ] - }, - { - "nodeType": "YulBlock", - "src": "4271:234:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4305:43:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4335:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4342:4:2", - "type": "", - "value": "0x00" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4331:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4331:16:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4325:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "4325:23:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "4309:12:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4373:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4378:4:2", - "type": "", - "value": "0x00" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4369:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4369:14:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4389:4:2" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4395:3:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4385:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4385:14:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4362:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4362:38:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4362:38:2" - }, - { - "nodeType": "YulAssignment", - "src": "4413:81:2", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "4475:12:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4489:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "4421:53:2" - }, - "nodeType": "YulFunctionCall", - "src": "4421:73:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4413:4:2" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "4515:235:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4550:43:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4580:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4587:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4576:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4576:16:2" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4570:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "4570:23:2" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "4554:12:2", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4618:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4623:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4614:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4614:14:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4634:4:2" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4640:3:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4630:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4630:14:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4607:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4607:38:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4607:38:2" - }, - { - "nodeType": "YulAssignment", - "src": "4658:81:2", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "4720:12:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4734:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "4666:53:2" - }, - "nodeType": "YulFunctionCall", - "src": "4666:73:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4658:4:2" - } - ] - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4760:11:2", - "value": { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4767:4:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4760:3:2" - } - ] - } - ] - }, - "name": "abi_encode_t_struct$_Node_$1667_memory_ptr_to_t_struct$_Node_$1667_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4204:5:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4211:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4220:3:2", - "type": "" - } - ], - "src": "4107:670:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4925:219:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4935:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4947:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4958:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4943:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4943:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4935:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4982:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4993:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4978:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4978:17:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5001:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5007:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4997:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "4997:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4971:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "4971:47:2" - }, - "nodeType": "YulExpressionStatement", - "src": "4971:47:2" - }, - { - "nodeType": "YulAssignment", - "src": "5027:110:2", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5123:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5132:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_struct$_Node_$1667_memory_ptr_to_t_struct$_Node_$1667_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "5035:87:2" - }, - "nodeType": "YulFunctionCall", - "src": "5035:102:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5027:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_Node_$1667_memory_ptr__to_t_struct$_Node_$1667_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4897:9:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4909:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4920:4:2", - "type": "" - } - ], - "src": "4783:361:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5236:443:2", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5282:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "5284:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "5284:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5284:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5257:7:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5266:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5253:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5253:23:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5278:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5249:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5249:32:2" - }, - "nodeType": "YulIf", - "src": "5246:119:2" - }, - { - "nodeType": "YulBlock", - "src": "5375:297:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5390:45:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5421:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5432:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5417:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5417:17:2" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5404:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "5404:31:2" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5394:6:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5482:83:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "5484:77:2" - }, - "nodeType": "YulFunctionCall", - "src": "5484:79:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5484:79:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5454:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5462:18:2", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5451:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "5451:30:2" - }, - "nodeType": "YulIf", - "src": "5448:117:2" - }, - { - "nodeType": "YulAssignment", - "src": "5579:83:2", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5634:9:2" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5645:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5630:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5630:22:2" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5654:7:2" - } - ], - "functionName": { - "name": "abi_decode_t_string_calldata_ptr", - "nodeType": "YulIdentifier", - "src": "5597:32:2" - }, - "nodeType": "YulFunctionCall", - "src": "5597:65:2" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5579:6:2" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5587:6:2" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5198:9:2", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5209:7:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5221:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5229:6:2", - "type": "" - } - ], - "src": "5150:529:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5713:152:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5730:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5733:77:2", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5723:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5723:88:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5723:88:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5827:1:2", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5830:4:2", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5820:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5820:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5820:15:2" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5851:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5854:4:2", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5844:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "5844:15:2" - }, - "nodeType": "YulExpressionStatement", - "src": "5844:15:2" - } - ] - }, - "name": "panic_error_0x22", - "nodeType": "YulFunctionDefinition", - "src": "5685:180:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5922:269:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5932:22:2", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "5946:4:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5952:1:2", - "type": "", - "value": "2" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "5942:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5942:12:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5932:6:2" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5963:38:2", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "5993:4:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5999:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5989:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "5989:12:2" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "5967:18:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6040:51:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6054:27:2", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6068:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6076:4:2", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6064:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6064:17:2" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6054:6:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "6020:18:2" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6013:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6013:26:2" - }, - "nodeType": "YulIf", - "src": "6010:81:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6143:42:2", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x22", - "nodeType": "YulIdentifier", - "src": "6157:16:2" - }, - "nodeType": "YulFunctionCall", - "src": "6157:18:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6157:18:2" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "6107:18:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6130:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6138:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "6127:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "6127:14:2" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6104:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "6104:38:2" - }, - "nodeType": "YulIf", - "src": "6101:84:2" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "5906:4:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "5915:6:2", - "type": "" - } - ], - "src": "5871:320:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6293:73:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6310:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6315:6:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6303:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6303:19:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6303:19:2" - }, - { - "nodeType": "YulAssignment", - "src": "6331:29:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6350:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6355:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6346:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6346:14:2" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "6331:11:2" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "6265:3:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "6270:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "6281:11:2", - "type": "" - } - ], - "src": "6197:169:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6478:70:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6500:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6508:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6496:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6496:14:2" - }, - { - "hexValue": "6e6f64652068617320616c7265616479206a6f696e656420696e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "6512:28:2", - "type": "", - "value": "node has already joined in" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6489:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "6489:52:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6489:52:2" - } - ] - }, - "name": "store_literal_in_memory_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "6470:6:2", - "type": "" - } - ], - "src": "6372:176:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6700:220:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6710:74:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6776:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6781:2:2", - "type": "", - "value": "26" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "6717:58:2" - }, - "nodeType": "YulFunctionCall", - "src": "6717:67:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6710:3:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6882:3:2" - } - ], - "functionName": { - "name": "store_literal_in_memory_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799", - "nodeType": "YulIdentifier", - "src": "6793:88:2" - }, - "nodeType": "YulFunctionCall", - "src": "6793:93:2" - }, - "nodeType": "YulExpressionStatement", - "src": "6793:93:2" - }, - { - "nodeType": "YulAssignment", - "src": "6895:19:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6906:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6911:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6902:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "6902:12:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6895:3:2" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "6688:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6696:3:2", - "type": "" - } - ], - "src": "6554:366:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7097:248:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7107:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7119:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7130:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7115:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7115:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7107:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7154:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7165:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7150:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7150:17:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7173:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7179:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7169:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7169:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7143:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7143:47:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7143:47:2" - }, - { - "nodeType": "YulAssignment", - "src": "7199:139:2", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7333:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "7207:124:2" - }, - "nodeType": "YulFunctionCall", - "src": "7207:131:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7199:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7077:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7092:4:2", - "type": "" - } - ], - "src": "6926:419:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7416:53:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7433:3:2" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7456:5:2" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "7438:17:2" - }, - "nodeType": "YulFunctionCall", - "src": "7438:24:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7426:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7426:37:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7426:37:2" - } - ] - }, - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7404:5:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7411:3:2", - "type": "" - } - ], - "src": "7351:118:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7526:103:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "7549:3:2" - }, - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "7554:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7559:6:2" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "7536:12:2" - }, - "nodeType": "YulFunctionCall", - "src": "7536:30:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7536:30:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "7607:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7612:6:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7603:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7603:16:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7621:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7596:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "7596:27:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7596:27:2" - } - ] - }, - "name": "copy_calldata_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "7508:3:2", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "7513:3:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7518:6:2", - "type": "" - } - ], - "src": "7475:154:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7761:202:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7771:78:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7837:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7842:6:2" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "7778:58:2" - }, - "nodeType": "YulFunctionCall", - "src": "7778:71:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7771:3:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "7883:5:2" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7890:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7895:6:2" - } - ], - "functionName": { - "name": "copy_calldata_to_memory", - "nodeType": "YulIdentifier", - "src": "7859:23:2" - }, - "nodeType": "YulFunctionCall", - "src": "7859:43:2" - }, - "nodeType": "YulExpressionStatement", - "src": "7859:43:2" - }, - { - "nodeType": "YulAssignment", - "src": "7911:46:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7922:3:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7949:6:2" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "7927:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "7927:29:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7918:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "7918:39:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7911:3:2" - } - ] - } - ] - }, - "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "7734:5:2", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7741:6:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7749:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "7757:3:2", - "type": "" - } - ], - "src": "7659:304:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8183:450:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8193:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8205:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8216:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8201:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8201:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8193:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8273:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8286:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8297:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8282:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8282:17:2" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "8229:43:2" - }, - "nodeType": "YulFunctionCall", - "src": "8229:71:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8229:71:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8321:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8332:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8317:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8317:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8341:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8347:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8337:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8337:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8310:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8310:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8310:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "8367:96:2", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8441:6:2" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "8449:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8458:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8375:65:2" - }, - "nodeType": "YulFunctionCall", - "src": "8375:88:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8367:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8484:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8495:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8480:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8480:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8504:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8510:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8500:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8500:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8473:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8473:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8473:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "8530:96:2", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "8604:6:2" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "8612:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8621:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8538:65:2" - }, - "nodeType": "YulFunctionCall", - "src": "8538:88:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8530:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8123:9:2", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "8135:6:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "8143:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8151:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8159:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8167:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8178:4:2", - "type": "" - } - ], - "src": "7969:664:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8745:66:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "8767:6:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8775:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8763:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "8763:14:2" - }, - { - "hexValue": "6e6f646520686173206e6f74206a6f696e656420696e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "8779:24:2", - "type": "", - "value": "node has not joined in" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8756:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "8756:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "8756:48:2" - } - ] - }, - "name": "store_literal_in_memory_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "8737:6:2", - "type": "" - } - ], - "src": "8639:172:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8963:220:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8973:74:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9039:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9044:2:2", - "type": "", - "value": "22" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8980:58:2" - }, - "nodeType": "YulFunctionCall", - "src": "8980:67:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8973:3:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9145:3:2" - } - ], - "functionName": { - "name": "store_literal_in_memory_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e", - "nodeType": "YulIdentifier", - "src": "9056:88:2" - }, - "nodeType": "YulFunctionCall", - "src": "9056:93:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9056:93:2" - }, - { - "nodeType": "YulAssignment", - "src": "9158:19:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9169:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9174:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9165:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9165:12:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9158:3:2" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "8951:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8959:3:2", - "type": "" - } - ], - "src": "8817:366:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9360:248:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9370:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9382:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9393:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9378:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9378:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9370:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9417:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9428:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9413:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9413:17:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9436:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9442:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9432:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "9432:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9406:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9406:47:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9406:47:2" - }, - { - "nodeType": "YulAssignment", - "src": "9462:139:2", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9596:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "9470:124:2" - }, - "nodeType": "YulFunctionCall", - "src": "9470:131:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9462:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9340:9:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9355:4:2", - "type": "" - } - ], - "src": "9189:419:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9668:87:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9678:11:2", - "value": { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "9686:3:2" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9678:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9706:1:2", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "9709:3:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9699:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "9699:14:2" - }, - "nodeType": "YulExpressionStatement", - "src": "9699:14:2" - }, - { - "nodeType": "YulAssignment", - "src": "9722:26:2", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9740:1:2", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9743:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "9730:9:2" - }, - "nodeType": "YulFunctionCall", - "src": "9730:18:2" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9722:4:2" - } - ] - } - ] - }, - "name": "array_dataslot_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "9655:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "9663:4:2", - "type": "" - } - ], - "src": "9614:141:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9874:713:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9884:29:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "9907:5:2" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "9901:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "9901:12:2" - }, - "variables": [ - { - "name": "slotValue", - "nodeType": "YulTypedName", - "src": "9888:9:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9922:50:2", - "value": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "9962:9:2" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "9936:25:2" - }, - "nodeType": "YulFunctionCall", - "src": "9936:36:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9926:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9981:78:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10047:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10052:6:2" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "9988:58:2" - }, - "nodeType": "YulFunctionCall", - "src": "9988:71:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9981:3:2" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10108:128:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10161:3:2" - }, - { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "10170:9:2" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10185:4:2", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "10181:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10181:9:2" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10166:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10166:25:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10154:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10154:38:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10154:38:2" - }, - { - "nodeType": "YulAssignment", - "src": "10205:21:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10216:3:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10221:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10212:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10212:14:2" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "10205:3:2" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "10101:135:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10106:1:2", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10252:329:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10297:53:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10344:5:2" - } - ], - "functionName": { - "name": "array_dataslot_t_string_storage", - "nodeType": "YulIdentifier", - "src": "10312:31:2" - }, - "nodeType": "YulFunctionCall", - "src": "10312:38:2" - }, - "variables": [ - { - "name": "dataPos", - "nodeType": "YulTypedName", - "src": "10301:7:2", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10363:10:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10372:1:2", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "10367:1:2", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10430:110:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10459:3:2" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10464:1:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10455:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10455:11:2" - }, - { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "10474:7:2" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "10468:5:2" - }, - "nodeType": "YulFunctionCall", - "src": "10468:14:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10448:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10448:35:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10448:35:2" - }, - { - "nodeType": "YulAssignment", - "src": "10500:26:2", - "value": { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "10515:7:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10524:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10511:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10511:15:2" - }, - "variableNames": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "10500:7:2" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10397:1:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10400:6:2" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10394:2:2" - }, - "nodeType": "YulFunctionCall", - "src": "10394:13:2" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "10408:21:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10410:17:2", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10419:1:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10422:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10415:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10415:12:2" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10410:1:2" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "10390:3:2", - "statements": [] - }, - "src": "10386:154:2" - }, - { - "nodeType": "YulAssignment", - "src": "10553:18:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10564:3:2" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10569:1:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10560:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10560:11:2" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "10553:3:2" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "10245:336:2", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10250:1:2", - "type": "", - "value": "1" - } - } - ], - "expression": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "10079:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10090:1:2", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10075:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10075:17:2" - }, - "nodeType": "YulSwitch", - "src": "10068:513:2" - } - ] - }, - "name": "abi_encode_t_string_storage_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "9855:5:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "9862:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "9870:3:2", - "type": "" - } - ], - "src": "9785:802:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10794:437:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10804:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10816:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10827:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10812:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10812:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10804:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10884:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10897:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10908:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10893:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10893:17:2" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "10840:43:2" - }, - "nodeType": "YulFunctionCall", - "src": "10840:71:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10840:71:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10932:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10943:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10928:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10928:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10952:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10958:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10948:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "10948:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10921:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "10921:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "10921:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "10978:83:2", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11047:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11056:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_storage_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "10986:60:2" - }, - "nodeType": "YulFunctionCall", - "src": "10986:75:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10978:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11082:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11093:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11078:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11078:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11102:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11108:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11098:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11098:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11071:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "11071:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11071:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "11128:96:2", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "11202:6:2" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "11210:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11219:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11136:65:2" - }, - "nodeType": "YulFunctionCall", - "src": "11136:88:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11128:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_string_storage_t_string_calldata_ptr__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10742:9:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "10754:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10762:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10770:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10778:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "10789:4:2", - "type": "" - } - ], - "src": "10593:638:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11329:272:2", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11339:53:2", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11386:5:2" - } - ], - "functionName": { - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "11353:32:2" - }, - "nodeType": "YulFunctionCall", - "src": "11353:39:2" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "11343:6:2", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11401:78:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11467:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11472:6:2" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11408:58:2" - }, - "nodeType": "YulFunctionCall", - "src": "11408:71:2" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11401:3:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11514:5:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11521:4:2", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11510:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11510:16:2" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11528:3:2" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11533:6:2" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "11488:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "11488:52:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11488:52:2" - }, - { - "nodeType": "YulAssignment", - "src": "11549:46:2", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11560:3:2" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11587:6:2" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "11565:21:2" - }, - "nodeType": "YulFunctionCall", - "src": "11565:29:2" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11556:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11556:39:2" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11549:3:2" - } - ] - } - ] - }, - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11310:5:2", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11317:3:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "11325:3:2", - "type": "" - } - ], - "src": "11237:364:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11801:430:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11811:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11823:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11834:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11819:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11819:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11811:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11891:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11904:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11915:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11900:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11900:17:2" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "11847:43:2" - }, - "nodeType": "YulFunctionCall", - "src": "11847:71:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11847:71:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11939:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11950:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11935:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11935:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11959:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11965:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11955:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "11955:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11928:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "11928:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "11928:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "11985:86:2", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12057:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12066:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11993:63:2" - }, - "nodeType": "YulFunctionCall", - "src": "11993:78:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11985:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12092:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12103:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12088:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12088:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12112:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12118:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12108:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12108:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12081:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12081:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12081:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "12138:86:2", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12210:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12219:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12146:63:2" - }, - "nodeType": "YulFunctionCall", - "src": "12146:78:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12138:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_string_memory_ptr_t_string_memory_ptr__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11757:9:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "11769:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11777:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11785:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11796:4:2", - "type": "" - } - ], - "src": "11607:624:2" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12438:437:2", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12448:26:2", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12460:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12471:2:2", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12456:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12456:18:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12448:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12528:6:2" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12541:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12552:1:2", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12537:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12537:17:2" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "12484:43:2" - }, - "nodeType": "YulFunctionCall", - "src": "12484:71:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12484:71:2" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12576:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12587:2:2", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12572:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12572:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12596:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12602:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12592:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12592:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12565:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12565:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12565:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "12622:96:2", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12696:6:2" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12704:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12713:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12630:65:2" - }, - "nodeType": "YulFunctionCall", - "src": "12630:88:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12622:4:2" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12739:9:2" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12750:2:2", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12735:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12735:18:2" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12759:4:2" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12765:9:2" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12755:3:2" - }, - "nodeType": "YulFunctionCall", - "src": "12755:20:2" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12728:6:2" - }, - "nodeType": "YulFunctionCall", - "src": "12728:48:2" - }, - "nodeType": "YulExpressionStatement", - "src": "12728:48:2" - }, - { - "nodeType": "YulAssignment", - "src": "12785:83:2", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "12854:6:2" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12863:4:2" - } - ], - "functionName": { - "name": "abi_encode_t_string_storage_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12793:60:2" - }, - "nodeType": "YulFunctionCall", - "src": "12793:75:2" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12785:4:2" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_storage__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12386:9:2", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "12398:6:2", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "12406:6:2", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "12414:6:2", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12422:6:2", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "12433:4:2", - "type": "" - } - ], - "src": "12237:638:2" - } - ] - }, - "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // string\n function abi_decode_t_string_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2, value3 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n // struct IdentityContract.Node -> struct IdentityContract.Node\n function abi_encode_t_struct$_Node_$1667_memory_ptr_to_t_struct$_Node_$1667_memory_ptr_fromStack(value, pos) -> end {\n let tail := add(pos, 0x40)\n\n {\n // url\n\n let memberValue0 := mload(add(value, 0x00))\n\n mstore(add(pos, 0x00), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // name\n\n let memberValue0 := mload(add(value, 0x20))\n\n mstore(add(pos, 0x20), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n end := tail\n }\n\n function abi_encode_tuple_t_struct$_Node_$1667_memory_ptr__to_t_struct$_Node_$1667_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_struct$_Node_$1667_memory_ptr_to_t_struct$_Node_$1667_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799(memPtr) {\n\n mstore(add(memPtr, 0), \"node has already joined in\")\n\n }\n\n function abi_encode_t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 26)\n store_literal_in_memory_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n // string -> string\n function abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value1, value2, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value3, value4, tail)\n\n }\n\n function store_literal_in_memory_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e(memPtr) {\n\n mstore(add(memPtr, 0), \"node has not joined in\")\n\n }\n\n function abi_encode_t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 22)\n store_literal_in_memory_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n // string -> string\n function abi_encode_t_string_storage_to_t_string_memory_ptr_fromStack(value, pos) -> ret {\n let slotValue := sload(value)\n let length := extract_byte_array_length(slotValue)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n switch and(slotValue, 1)\n case 0 {\n // short byte array\n mstore(pos, and(slotValue, not(0xff)))\n ret := add(pos, 0x20)\n }\n case 1 {\n // long byte array\n let dataPos := array_dataslot_t_string_storage(value)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) } {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, 1)\n }\n ret := add(pos, i)\n }\n }\n\n function abi_encode_tuple_t_address_t_string_storage_t_string_calldata_ptr__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_string_storage_to_t_string_memory_ptr_fromStack(value1, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value2, value3, tail)\n\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_string_memory_ptr_t_string_memory_ptr__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value1, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_storage__to_t_address_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value1, value2, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_string_storage_to_t_string_memory_ptr_fromStack(value3, tail)\n\n }\n\n}\n", - "id": 2, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "70:2091:1:-:0;;;1083:91;;;;;;;;;;1115:10;1107:5;;:18;;;;;;;;;;;;;;;;;;1161:5;;;;;;;;;;1140:27;;1157:1;1140:27;;;;;;;;;;;;70:2091;;;;;;", - "deployedSourceMap": "70:2091:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1180:223;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2033:126;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1596:185;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1787:240;;;:::i;:::-;;1409:181;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1180:223;1274:10;728:1;700:5;:11;706:4;700:11;;;;;;;;;;;;;;;:16;;694:30;;;;;:::i;:::-;;;:35;:89;;;;;782:1;755:5;:11;761:4;755:11;;;;;;;;;;;;;;;:15;;749:29;;;;;:::i;:::-;;;:34;694:89;673:162;;;;;;;;;;;;:::i;:::-;;;;;;;;;1320:28:::1;;;;;;;;1331:3;;1320:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1342:4;;1320:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;1300:5:::1;:17;1306:10;1300:17;;;;;;;;;;;;;;;:48;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;1363:33;1374:10;1386:3;;1391:4;;1363:33;;;;;;;;;;:::i;:::-;;;;;;;;1180:223:::0;;;;;:::o;2033:126::-;2106:16;;:::i;:::-;2091:4;957:1;930:5;:11;936:4;930:11;;;;;;;;;;;;;;;:16;;924:30;;;;;:::i;:::-;;;:34;:87;;;;;1010:1;984:5;:11;990:4;984:11;;;;;;;;;;;;;;;:15;;978:29;;;;;:::i;:::-;;;:33;924:87;903:156;;;;;;;;;;;;:::i;:::-;;;;;;;;;2141:5:::1;:11;2147:4;2141:11;;;;;;;;;;;;;;;2134:18;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;2033:126:::0;;;;:::o;1596:185::-;1656:10;957:1;930:5;:11;936:4;930:11;;;;;;;;;;;;;;;:16;;924:30;;;;;:::i;:::-;;;:34;:87;;;;;1010:1;984:5;:11;990:4;984:11;;;;;;;;;;;;;;;:15;;978:29;;;;;:::i;:::-;;;:33;924:87;903:156;;;;;;;;;;;;:::i;:::-;;;;;;;;;1703:4:::1;;1678:5;:17;1684:10;1678:17;;;;;;;;;;;;;;;:22;;:29;;;;;;;:::i;:::-;;1722:52;1734:10;1746:5;:17;1752:10;1746:17;;;;;;;;;;;;;;;:21;;1769:4;;1722:52;;;;;;;;;:::i;:::-;;;;;;;;1596:185:::0;;;:::o;1787:240::-;1822:10;957:1;930:5;:11;936:4;930:11;;;;;;;;;;;;;;;:16;;924:30;;;;;:::i;:::-;;;:34;:87;;;;;1010:1;984:5;:11;990:4;984:11;;;;;;;;;;;;;;;:15;;978:29;;;;;:::i;:::-;;;:33;924:87;903:156;;;;;;;;;;;;:::i;:::-;;;;;;;;;1844:17:::1;1864:5;:17;1870:10;1864:17;;;;;;;;;;;;;;;:21;;1844:41;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1895:18;1916:5;:17;1922:10;1916:17;;;;;;;;;;;;;;;:22;;1895:43;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1955:5;:17;1961:10;1955:17;;;;;;;;;;;;;;;;1948:24:::0;::::1;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;1987:33;1998:10;2010:3;2015:4;1987:33;;;;;;;;:::i;:::-;;;;;;;;1834:193;;1787:240:::0;:::o;1409:181::-;1467:10;957:1;930:5;:11;936:4;930:11;;;;;;;;;;;;;;;:16;;924:30;;;;;:::i;:::-;;;:34;:87;;;;;1010:1;984:5;:11;990:4;984:11;;;;;;;;;;;;;;;:15;;978:29;;;;;:::i;:::-;;;:33;924:87;903:156;;;;;;;;;;;;:::i;:::-;;;;;;;;;1513:3:::1;;1489:5;:17;1495:10;1489:17;;;;;;;;;;;;;;;:21;;:27;;;;;;;:::i;:::-;;1531:52;1543:10;1555:3;;1560:5;:17;1566:10;1560:17;;;;;;;;;;;;;;;:22;;1531:52;;;;;;;;;:::i;:::-;;;;;;;;1409:181:::0;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;88:117:2:-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:117;689:1;686;679:12;717:553;775:8;785:6;835:3;828:4;820:6;816:17;812:27;802:122;;843:79;;:::i;:::-;802:122;956:6;943:20;933:30;;986:18;978:6;975:30;972:117;;;1008:79;;:::i;:::-;972:117;1122:4;1114:6;1110:17;1098:29;;1176:3;1168:4;1160:6;1156:17;1146:8;1142:32;1139:41;1136:128;;;1183:79;;:::i;:::-;1136:128;717:553;;;;;:::o;1276:874::-;1368:6;1376;1384;1392;1441:2;1429:9;1420:7;1416:23;1412:32;1409:119;;;1447:79;;:::i;:::-;1409:119;1595:1;1584:9;1580:17;1567:31;1625:18;1617:6;1614:30;1611:117;;;1647:79;;:::i;:::-;1611:117;1760:65;1817:7;1808:6;1797:9;1793:22;1760:65;:::i;:::-;1742:83;;;;1538:297;1902:2;1891:9;1887:18;1874:32;1933:18;1925:6;1922:30;1919:117;;;1955:79;;:::i;:::-;1919:117;2068:65;2125:7;2116:6;2105:9;2101:22;2068:65;:::i;:::-;2050:83;;;;1845:298;1276:874;;;;;;;:::o;2156:126::-;2193:7;2233:42;2226:5;2222:54;2211:65;;2156:126;;;:::o;2288:96::-;2325:7;2354:24;2372:5;2354:24;:::i;:::-;2343:35;;2288:96;;;:::o;2390:122::-;2463:24;2481:5;2463:24;:::i;:::-;2456:5;2453:35;2443:63;;2502:1;2499;2492:12;2443:63;2390:122;:::o;2518:139::-;2564:5;2602:6;2589:20;2580:29;;2618:33;2645:5;2618:33;:::i;:::-;2518:139;;;;:::o;2663:329::-;2722:6;2771:2;2759:9;2750:7;2746:23;2742:32;2739:119;;;2777:79;;:::i;:::-;2739:119;2897:1;2922:53;2967:7;2958:6;2947:9;2943:22;2922:53;:::i;:::-;2912:63;;2868:117;2663:329;;;;:::o;2998:99::-;3050:6;3084:5;3078:12;3068:22;;2998:99;;;:::o;3103:159::-;3177:11;3211:6;3206:3;3199:19;3251:4;3246:3;3242:14;3227:29;;3103:159;;;;:::o;3268:307::-;3336:1;3346:113;3360:6;3357:1;3354:13;3346:113;;;3445:1;3440:3;3436:11;3430:18;3426:1;3421:3;3417:11;3410:39;3382:2;3379:1;3375:10;3370:15;;3346:113;;;3477:6;3474:1;3471:13;3468:101;;;3557:1;3548:6;3543:3;3539:16;3532:27;3468:101;3317:258;3268:307;;;:::o;3581:102::-;3622:6;3673:2;3669:7;3664:2;3657:5;3653:14;3649:28;3639:38;;3581:102;;;:::o;3689:344::-;3767:3;3795:39;3828:5;3795:39;:::i;:::-;3850:61;3904:6;3899:3;3850:61;:::i;:::-;3843:68;;3920:52;3965:6;3960:3;3953:4;3946:5;3942:16;3920:52;:::i;:::-;3997:29;4019:6;3997:29;:::i;:::-;3992:3;3988:39;3981:46;;3771:262;3689:344;;;;:::o;4107:670::-;4220:3;4256:4;4251:3;4247:14;4342:4;4335:5;4331:16;4325:23;4395:3;4389:4;4385:14;4378:4;4373:3;4369:14;4362:38;4421:73;4489:4;4475:12;4421:73;:::i;:::-;4413:81;;4271:234;4587:4;4580:5;4576:16;4570:23;4640:3;4634:4;4630:14;4623:4;4618:3;4614:14;4607:38;4666:73;4734:4;4720:12;4666:73;:::i;:::-;4658:81;;4515:235;4767:4;4760:11;;4225:552;4107:670;;;;:::o;4783:361::-;4920:4;4958:2;4947:9;4943:18;4935:26;;5007:9;5001:4;4997:20;4993:1;4982:9;4978:17;4971:47;5035:102;5132:4;5123:6;5035:102;:::i;:::-;5027:110;;4783:361;;;;:::o;5150:529::-;5221:6;5229;5278:2;5266:9;5257:7;5253:23;5249:32;5246:119;;;5284:79;;:::i;:::-;5246:119;5432:1;5421:9;5417:17;5404:31;5462:18;5454:6;5451:30;5448:117;;;5484:79;;:::i;:::-;5448:117;5597:65;5654:7;5645:6;5634:9;5630:22;5597:65;:::i;:::-;5579:83;;;;5375:297;5150:529;;;;;:::o;5685:180::-;5733:77;5730:1;5723:88;5830:4;5827:1;5820:15;5854:4;5851:1;5844:15;5871:320;5915:6;5952:1;5946:4;5942:12;5932:22;;5999:1;5993:4;5989:12;6020:18;6010:81;;6076:4;6068:6;6064:17;6054:27;;6010:81;6138:2;6130:6;6127:14;6107:18;6104:38;6101:84;;;6157:18;;:::i;:::-;6101:84;5922:269;5871:320;;;:::o;6197:169::-;6281:11;6315:6;6310:3;6303:19;6355:4;6350:3;6346:14;6331:29;;6197:169;;;;:::o;6372:176::-;6512:28;6508:1;6500:6;6496:14;6489:52;6372:176;:::o;6554:366::-;6696:3;6717:67;6781:2;6776:3;6717:67;:::i;:::-;6710:74;;6793:93;6882:3;6793:93;:::i;:::-;6911:2;6906:3;6902:12;6895:19;;6554:366;;;:::o;6926:419::-;7092:4;7130:2;7119:9;7115:18;7107:26;;7179:9;7173:4;7169:20;7165:1;7154:9;7150:17;7143:47;7207:131;7333:4;7207:131;:::i;:::-;7199:139;;6926:419;;;:::o;7351:118::-;7438:24;7456:5;7438:24;:::i;:::-;7433:3;7426:37;7351:118;;:::o;7475:154::-;7559:6;7554:3;7549;7536:30;7621:1;7612:6;7607:3;7603:16;7596:27;7475:154;;;:::o;7659:304::-;7757:3;7778:71;7842:6;7837:3;7778:71;:::i;:::-;7771:78;;7859:43;7895:6;7890:3;7883:5;7859:43;:::i;:::-;7927:29;7949:6;7927:29;:::i;:::-;7922:3;7918:39;7911:46;;7659:304;;;;;:::o;7969:664::-;8178:4;8216:2;8205:9;8201:18;8193:26;;8229:71;8297:1;8286:9;8282:17;8273:6;8229:71;:::i;:::-;8347:9;8341:4;8337:20;8332:2;8321:9;8317:18;8310:48;8375:88;8458:4;8449:6;8441;8375:88;:::i;:::-;8367:96;;8510:9;8504:4;8500:20;8495:2;8484:9;8480:18;8473:48;8538:88;8621:4;8612:6;8604;8538:88;:::i;:::-;8530:96;;7969:664;;;;;;;;:::o;8639:172::-;8779:24;8775:1;8767:6;8763:14;8756:48;8639:172;:::o;8817:366::-;8959:3;8980:67;9044:2;9039:3;8980:67;:::i;:::-;8973:74;;9056:93;9145:3;9056:93;:::i;:::-;9174:2;9169:3;9165:12;9158:19;;8817:366;;;:::o;9189:419::-;9355:4;9393:2;9382:9;9378:18;9370:26;;9442:9;9436:4;9432:20;9428:1;9417:9;9413:17;9406:47;9470:131;9596:4;9470:131;:::i;:::-;9462:139;;9189:419;;;:::o;9614:141::-;9663:4;9686:3;9678:11;;9709:3;9706:1;9699:14;9743:4;9740:1;9730:18;9722:26;;9614:141;;;:::o;9785:802::-;9870:3;9907:5;9901:12;9936:36;9962:9;9936:36;:::i;:::-;9988:71;10052:6;10047:3;9988:71;:::i;:::-;9981:78;;10090:1;10079:9;10075:17;10106:1;10101:135;;;;10250:1;10245:336;;;;10068:513;;10101:135;10185:4;10181:9;10170;10166:25;10161:3;10154:38;10221:4;10216:3;10212:14;10205:21;;10101:135;;10245:336;10312:38;10344:5;10312:38;:::i;:::-;10372:1;10386:154;10400:6;10397:1;10394:13;10386:154;;;10474:7;10468:14;10464:1;10459:3;10455:11;10448:35;10524:1;10515:7;10511:15;10500:26;;10422:4;10419:1;10415:12;10410:17;;10386:154;;;10569:1;10564:3;10560:11;10553:18;;10252:329;;10068:513;;9874:713;;9785:802;;;;:::o;10593:638::-;10789:4;10827:2;10816:9;10812:18;10804:26;;10840:71;10908:1;10897:9;10893:17;10884:6;10840:71;:::i;:::-;10958:9;10952:4;10948:20;10943:2;10932:9;10928:18;10921:48;10986:75;11056:4;11047:6;10986:75;:::i;:::-;10978:83;;11108:9;11102:4;11098:20;11093:2;11082:9;11078:18;11071:48;11136:88;11219:4;11210:6;11202;11136:88;:::i;:::-;11128:96;;10593:638;;;;;;;:::o;11237:364::-;11325:3;11353:39;11386:5;11353:39;:::i;:::-;11408:71;11472:6;11467:3;11408:71;:::i;:::-;11401:78;;11488:52;11533:6;11528:3;11521:4;11514:5;11510:16;11488:52;:::i;:::-;11565:29;11587:6;11565:29;:::i;:::-;11560:3;11556:39;11549:46;;11329:272;11237:364;;;;:::o;11607:624::-;11796:4;11834:2;11823:9;11819:18;11811:26;;11847:71;11915:1;11904:9;11900:17;11891:6;11847:71;:::i;:::-;11965:9;11959:4;11955:20;11950:2;11939:9;11935:18;11928:48;11993:78;12066:4;12057:6;11993:78;:::i;:::-;11985:86;;12118:9;12112:4;12108:20;12103:2;12092:9;12088:18;12081:48;12146:78;12219:4;12210:6;12146:78;:::i;:::-;12138:86;;11607:624;;;;;;:::o;12237:638::-;12433:4;12471:2;12460:9;12456:18;12448:26;;12484:71;12552:1;12541:9;12537:17;12528:6;12484:71;:::i;:::-;12602:9;12596:4;12592:20;12587:2;12576:9;12572:18;12565:48;12630:88;12713:4;12704:6;12696;12630:88;:::i;:::-;12622:96;;12765:9;12759:4;12755:20;12750:2;12739:9;12735:18;12728:48;12793:75;12863:4;12854:6;12793:75;:::i;:::-;12785:83;;12237:638;;;;;;;:::o", - "source": "// SPDX-License-Identifier: GPL-3.0\n\npragma solidity >=0.7.0 <0.9.0;\n\ncontract IdentityContract {\n struct Node {\n string url;\n string name;\n }\n\n address private onwer;\n mapping(address => Node) nodes;\n\n // event for EVM logging\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\n // triggered when node joined\n event NodeJoined(address addr, string url, string name);\n // triggered when node info updated\n event NodeUpdated(address addr, string url, string name);\n // triggered when node leaved\n event NodeLeaved(address addr, string url, string name);\n\n modifier nodeNotExists(address addr) {\n require(\n bytes(nodes[addr].name).length == 0 &&\n bytes(nodes[addr].url).length == 0,\n \"node has already joined in\"\n );\n _;\n }\n\n modifier nodeExists(address addr) {\n require(\n bytes(nodes[addr].name).length > 0 &&\n bytes(nodes[addr].url).length > 0,\n \"node has not joined in\"\n );\n _;\n }\n\n constructor() {\n onwer = msg.sender;\n emit OwnerSet(address(0), onwer);\n }\n\n function join(string calldata url, string calldata name)\n public\n nodeNotExists(msg.sender)\n {\n nodes[msg.sender] = Node({url: url, name: name});\n emit NodeJoined(msg.sender, url, name);\n }\n\n function updateUrl(string calldata url) public nodeExists(msg.sender) {\n nodes[msg.sender].url = url;\n emit NodeUpdated(msg.sender, url, nodes[msg.sender].name);\n }\n\n function updateName(string calldata name) public nodeExists(msg.sender) {\n nodes[msg.sender].name = name;\n emit NodeUpdated(msg.sender, nodes[msg.sender].url, name);\n }\n\n function leave() public nodeExists(msg.sender) {\n string memory url = nodes[msg.sender].url;\n string memory name = nodes[msg.sender].name;\n delete nodes[msg.sender];\n emit NodeLeaved(msg.sender, url, name);\n }\n\n function getNodeInfo(address addr) public view nodeExists(addr) returns (Node memory node) {\n node = nodes[addr];\n }\n}\n", - "sourcePath": "/home/hmiao/workspace/node/contract/contracts/Identity.sol", - "ast": { - "absolutePath": "project:/contracts/Identity.sol", - "exportedSymbols": { - "IdentityContract": [ - 1926 - ] - }, - "id": 1927, - "license": "GPL-3.0", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1662, - "literals": [ - "solidity", - ">=", - "0.7", - ".0", - "<", - "0.9", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "37:31:1" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IdentityContract", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1926, - "linearizedBaseContracts": [ - 1926 - ], - "name": "IdentityContract", - "nameLocation": "79:16:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "IdentityContract.Node", - "id": 1667, - "members": [ - { - "constant": false, - "id": 1664, - "mutability": "mutable", - "name": "url", - "nameLocation": "131:3:1", - "nodeType": "VariableDeclaration", - "scope": 1667, - "src": "124:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1663, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "124:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1666, - "mutability": "mutable", - "name": "name", - "nameLocation": "151:4:1", - "nodeType": "VariableDeclaration", - "scope": 1667, - "src": "144:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1665, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "144:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "name": "Node", - "nameLocation": "109:4:1", - "nodeType": "StructDefinition", - "scope": 1926, - "src": "102:60:1", - "visibility": "public" - }, - { - "constant": false, - "id": 1669, - "mutability": "mutable", - "name": "onwer", - "nameLocation": "184:5:1", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "168:21:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1668, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "168:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 1674, - "mutability": "mutable", - "name": "nodes", - "nameLocation": "220:5:1", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "195:30:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node)" - }, - "typeName": { - "id": 1673, - "keyType": { - "id": 1670, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "203:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "195:24:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node)" - }, - "valueType": { - "id": 1672, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1671, - "name": "Node", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1667, - "src": "214:4:1" - }, - "referencedDeclaration": 1667, - "src": "214:4:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage_ptr", - "typeString": "struct IdentityContract.Node" - } - } - }, - "visibility": "internal" - }, - { - "anonymous": false, - "id": 1680, - "name": "OwnerSet", - "nameLocation": "267:8:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1679, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1676, - "indexed": true, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "292:8:1", - "nodeType": "VariableDeclaration", - "scope": 1680, - "src": "276:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1675, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "276:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1678, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "318:8:1", - "nodeType": "VariableDeclaration", - "scope": 1680, - "src": "302:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1677, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "302:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "275:52:1" - }, - "src": "261:67:1" - }, - { - "anonymous": false, - "id": 1688, - "name": "NodeJoined", - "nameLocation": "373:10:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1687, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1682, - "indexed": false, - "mutability": "mutable", - "name": "addr", - "nameLocation": "392:4:1", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "384:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1681, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "384:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1684, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "405:3:1", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "398:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1683, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "398:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1686, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "417:4:1", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "410:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1685, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "410:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "383:39:1" - }, - "src": "367:56:1" - }, - { - "anonymous": false, - "id": 1696, - "name": "NodeUpdated", - "nameLocation": "474:11:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1695, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1690, - "indexed": false, - "mutability": "mutable", - "name": "addr", - "nameLocation": "494:4:1", - "nodeType": "VariableDeclaration", - "scope": 1696, - "src": "486:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1689, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "486:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1692, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "507:3:1", - "nodeType": "VariableDeclaration", - "scope": 1696, - "src": "500:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1691, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "500:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1694, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "519:4:1", - "nodeType": "VariableDeclaration", - "scope": 1696, - "src": "512:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1693, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "512:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "485:39:1" - }, - "src": "468:57:1" - }, - { - "anonymous": false, - "id": 1704, - "name": "NodeLeaved", - "nameLocation": "570:10:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1703, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1698, - "indexed": false, - "mutability": "mutable", - "name": "addr", - "nameLocation": "589:4:1", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "581:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1697, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "581:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1700, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "602:3:1", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "595:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1699, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "595:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1702, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "614:4:1", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "607:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1701, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "607:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "580:39:1" - }, - "src": "564:56:1" - }, - { - "body": { - "id": 1734, - "nodeType": "Block", - "src": "663:190:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1711, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "700:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1713, - "indexExpression": { - "id": 1712, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1706, - "src": "706:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "700:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1714, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "700:16:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "694:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1709, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "694:5:1", - "typeDescriptions": {} - } - }, - "id": 1715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "694:23:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "694:30:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1717, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "728:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "694:35:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1728, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1721, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "755:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1723, - "indexExpression": { - "id": 1722, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1706, - "src": "761:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "755:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1724, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "755:15:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1720, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "749:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1719, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "749:5:1", - "typeDescriptions": {} - } - }, - "id": 1725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "749:22:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "749:29:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1727, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "782:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "749:34:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "694:89:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f64652068617320616c7265616479206a6f696e656420696e", - "id": 1730, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "797:28:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799", - "typeString": "literal_string \"node has already joined in\"" - }, - "value": "node has already joined in" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799", - "typeString": "literal_string \"node has already joined in\"" - } - ], - "id": 1708, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "673:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "673:162:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1732, - "nodeType": "ExpressionStatement", - "src": "673:162:1" - }, - { - "id": 1733, - "nodeType": "PlaceholderStatement", - "src": "845:1:1" - } - ] - }, - "id": 1735, - "name": "nodeNotExists", - "nameLocation": "635:13:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1707, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1706, - "mutability": "mutable", - "name": "addr", - "nameLocation": "657:4:1", - "nodeType": "VariableDeclaration", - "scope": 1735, - "src": "649:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1705, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "649:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "648:14:1" - }, - "src": "626:227:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1765, - "nodeType": "Block", - "src": "893:184:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1760, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1742, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "930:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1744, - "indexExpression": { - "id": 1743, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1737, - "src": "936:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "930:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1745, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "930:16:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1741, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "924:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1740, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "924:5:1", - "typeDescriptions": {} - } - }, - "id": 1746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "924:23:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1747, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "924:30:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1748, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "957:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "924:34:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1752, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "984:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1754, - "indexExpression": { - "id": 1753, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1737, - "src": "990:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "984:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1755, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "984:15:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1751, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "978:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1750, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "978:5:1", - "typeDescriptions": {} - } - }, - "id": 1756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "978:22:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "978:29:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1010:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "978:33:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "924:87:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f646520686173206e6f74206a6f696e656420696e", - "id": 1761, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1025:24:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e", - "typeString": "literal_string \"node has not joined in\"" - }, - "value": "node has not joined in" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e", - "typeString": "literal_string \"node has not joined in\"" - } - ], - "id": 1739, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "903:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1762, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "903:156:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1763, - "nodeType": "ExpressionStatement", - "src": "903:156:1" - }, - { - "id": 1764, - "nodeType": "PlaceholderStatement", - "src": "1069:1:1" - } - ] - }, - "id": 1766, - "name": "nodeExists", - "nameLocation": "868:10:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1738, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1737, - "mutability": "mutable", - "name": "addr", - "nameLocation": "887:4:1", - "nodeType": "VariableDeclaration", - "scope": 1766, - "src": "879:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1736, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "879:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "878:14:1" - }, - "src": "859:218:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1782, - "nodeType": "Block", - "src": "1097:77:1", - "statements": [ - { - "expression": { - "id": 1772, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1769, - "name": "onwer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1669, - "src": "1107:5:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1770, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1115:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1115:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1107:18:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1773, - "nodeType": "ExpressionStatement", - "src": "1107:18:1" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 1777, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1157:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1776, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1149:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1775, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1149:7:1", - "typeDescriptions": {} - } - }, - "id": 1778, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1149:10:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1779, - "name": "onwer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1669, - "src": "1161:5:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1774, - "name": "OwnerSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1680, - "src": "1140:8:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 1780, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1140:27:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1781, - "nodeType": "EmitStatement", - "src": "1135:32:1" - } - ] - }, - "id": 1783, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1767, - "nodeType": "ParameterList", - "parameters": [], - "src": "1094:2:1" - }, - "returnParameters": { - "id": 1768, - "nodeType": "ParameterList", - "parameters": [], - "src": "1097:0:1" - }, - "scope": 1926, - "src": "1083:91:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1811, - "nodeType": "Block", - "src": "1290:113:1", - "statements": [ - { - "expression": { - "id": 1802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1794, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1300:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1797, - "indexExpression": { - "expression": { - "id": 1795, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1306:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1796, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1306:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1300:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1799, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1785, - "src": "1331:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1800, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1787, - "src": "1342:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1798, - "name": "Node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1667, - "src": "1320:4:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Node_$1667_storage_ptr_$", - "typeString": "type(struct IdentityContract.Node storage pointer)" - } - }, - "id": 1801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "url", - "name" - ], - "nodeType": "FunctionCall", - "src": "1320:28:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "src": "1300:48:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1803, - "nodeType": "ExpressionStatement", - "src": "1300:48:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1805, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1374:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1374:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1807, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1785, - "src": "1386:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1808, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1787, - "src": "1391:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1804, - "name": "NodeJoined", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1688, - "src": "1363:10:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1363:33:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1810, - "nodeType": "EmitStatement", - "src": "1358:38:1" - } - ] - }, - "functionSelector": "29803b21", - "id": 1812, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1790, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1274:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1274:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1792, - "kind": "modifierInvocation", - "modifierName": { - "id": 1789, - "name": "nodeNotExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1735, - "src": "1260:13:1" - }, - "nodeType": "ModifierInvocation", - "src": "1260:25:1" - } - ], - "name": "join", - "nameLocation": "1189:4:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1788, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1785, - "mutability": "mutable", - "name": "url", - "nameLocation": "1210:3:1", - "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "1194:19:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1784, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1194:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1787, - "mutability": "mutable", - "name": "name", - "nameLocation": "1231:4:1", - "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "1215:20:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1786, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1215:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1193:43:1" - }, - "returnParameters": { - "id": 1793, - "nodeType": "ParameterList", - "parameters": [], - "src": "1290:0:1" - }, - "scope": 1926, - "src": "1180:223:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1840, - "nodeType": "Block", - "src": "1479:111:1", - "statements": [ - { - "expression": { - "id": 1827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 1821, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1489:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1824, - "indexExpression": { - "expression": { - "id": 1822, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1495:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1823, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1495:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1489:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1825, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "1489:21:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1826, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "1513:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - "src": "1489:27:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1828, - "nodeType": "ExpressionStatement", - "src": "1489:27:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1830, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1543:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1831, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1543:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1832, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "1555:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "expression": { - "baseExpression": { - "id": 1833, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1560:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1836, - "indexExpression": { - "expression": { - "id": 1834, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1566:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1566:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1560:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1837, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "1560:22:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1829, - "name": "NodeUpdated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1696, - "src": "1531:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1531:52:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1839, - "nodeType": "EmitStatement", - "src": "1526:57:1" - } - ] - }, - "functionSelector": "f928edc2", - "id": 1841, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1817, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1467:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1818, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1467:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1819, - "kind": "modifierInvocation", - "modifierName": { - "id": 1816, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "1456:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "1456:22:1" - } - ], - "name": "updateUrl", - "nameLocation": "1418:9:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1815, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1814, - "mutability": "mutable", - "name": "url", - "nameLocation": "1444:3:1", - "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "1428:19:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1813, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1428:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1427:21:1" - }, - "returnParameters": { - "id": 1820, - "nodeType": "ParameterList", - "parameters": [], - "src": "1479:0:1" - }, - "scope": 1926, - "src": "1409:181:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1869, - "nodeType": "Block", - "src": "1668:113:1", - "statements": [ - { - "expression": { - "id": 1856, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 1850, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1678:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1853, - "indexExpression": { - "expression": { - "id": 1851, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1684:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1684:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1678:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1854, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "1678:22:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1855, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "1703:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - "src": "1678:29:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1857, - "nodeType": "ExpressionStatement", - "src": "1678:29:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1859, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1734:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1734:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "baseExpression": { - "id": 1861, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1746:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1864, - "indexExpression": { - "expression": { - "id": 1862, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1752:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1863, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1752:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1746:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1865, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "1746:21:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "id": 1866, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "1769:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1858, - "name": "NodeUpdated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1696, - "src": "1722:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1867, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1722:52:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1868, - "nodeType": "EmitStatement", - "src": "1717:57:1" - } - ] - }, - "functionSelector": "84da92a7", - "id": 1870, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1846, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1656:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1656:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1848, - "kind": "modifierInvocation", - "modifierName": { - "id": 1845, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "1645:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "1645:22:1" - } - ], - "name": "updateName", - "nameLocation": "1605:10:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1844, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1843, - "mutability": "mutable", - "name": "name", - "nameLocation": "1632:4:1", - "nodeType": "VariableDeclaration", - "scope": 1870, - "src": "1616:20:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1842, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1616:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1615:22:1" - }, - "returnParameters": { - "id": 1849, - "nodeType": "ParameterList", - "parameters": [], - "src": "1668:0:1" - }, - "scope": 1926, - "src": "1596:185:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1906, - "nodeType": "Block", - "src": "1834:193:1", - "statements": [ - { - "assignments": [ - 1878 - ], - "declarations": [ - { - "constant": false, - "id": 1878, - "mutability": "mutable", - "name": "url", - "nameLocation": "1858:3:1", - "nodeType": "VariableDeclaration", - "scope": 1906, - "src": "1844:17:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1877, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1844:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1884, - "initialValue": { - "expression": { - "baseExpression": { - "id": 1879, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1864:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1882, - "indexExpression": { - "expression": { - "id": 1880, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1870:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1881, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1870:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1864:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1883, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "1864:21:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1844:41:1" - }, - { - "assignments": [ - 1886 - ], - "declarations": [ - { - "constant": false, - "id": 1886, - "mutability": "mutable", - "name": "name", - "nameLocation": "1909:4:1", - "nodeType": "VariableDeclaration", - "scope": 1906, - "src": "1895:18:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1885, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1895:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1892, - "initialValue": { - "expression": { - "baseExpression": { - "id": 1887, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1916:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1890, - "indexExpression": { - "expression": { - "id": 1888, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1922:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1889, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1922:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1916:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1891, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "1916:22:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1895:43:1" - }, - { - "expression": { - "id": 1897, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1948:24:1", - "subExpression": { - "baseExpression": { - "id": 1893, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1955:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1896, - "indexExpression": { - "expression": { - "id": 1894, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1961:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1895, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1961:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1955:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1898, - "nodeType": "ExpressionStatement", - "src": "1948:24:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1900, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1998:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1998:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1902, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "2010:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 1903, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1886, - "src": "2015:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1899, - "name": "NodeLeaved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1704, - "src": "1987:10:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1904, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1987:33:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1905, - "nodeType": "EmitStatement", - "src": "1982:38:1" - } - ] - }, - "functionSelector": "d66d9e19", - "id": 1907, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1873, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1822:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1874, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1822:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1875, - "kind": "modifierInvocation", - "modifierName": { - "id": 1872, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "1811:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "1811:22:1" - } - ], - "name": "leave", - "nameLocation": "1796:5:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1871, - "nodeType": "ParameterList", - "parameters": [], - "src": "1801:2:1" - }, - "returnParameters": { - "id": 1876, - "nodeType": "ParameterList", - "parameters": [], - "src": "1834:0:1" - }, - "scope": 1926, - "src": "1787:240:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1924, - "nodeType": "Block", - "src": "2124:35:1", - "statements": [ - { - "expression": { - "id": 1922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1918, - "name": "node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1916, - "src": "2134:4:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1919, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "2141:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1921, - "indexExpression": { - "id": 1920, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "2147:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2141:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "src": "2134:18:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "id": 1923, - "nodeType": "ExpressionStatement", - "src": "2134:18:1" - } - ] - }, - "functionSelector": "582115fb", - "id": 1925, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1912, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "2091:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1913, - "kind": "modifierInvocation", - "modifierName": { - "id": 1911, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "2080:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "2080:16:1" - } - ], - "name": "getNodeInfo", - "nameLocation": "2042:11:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1910, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1909, - "mutability": "mutable", - "name": "addr", - "nameLocation": "2062:4:1", - "nodeType": "VariableDeclaration", - "scope": 1925, - "src": "2054:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1908, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2054:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2053:14:1" - }, - "returnParameters": { - "id": 1917, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1916, - "mutability": "mutable", - "name": "node", - "nameLocation": "2118:4:1", - "nodeType": "VariableDeclaration", - "scope": 1925, - "src": "2106:16:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node" - }, - "typeName": { - "id": 1915, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1914, - "name": "Node", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1667, - "src": "2106:4:1" - }, - "referencedDeclaration": 1667, - "src": "2106:4:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage_ptr", - "typeString": "struct IdentityContract.Node" - } - }, - "visibility": "internal" - } - ], - "src": "2105:18:1" - }, - "scope": 1926, - "src": "2033:126:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - } - ], - "scope": 1927, - "src": "70:2091:1", - "usedErrors": [] - } - ], - "src": "37:2125:1" - }, - "legacyAST": { - "absolutePath": "project:/contracts/Identity.sol", - "exportedSymbols": { - "IdentityContract": [ - 1926 - ] - }, - "id": 1927, - "license": "GPL-3.0", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1662, - "literals": [ - "solidity", - ">=", - "0.7", - ".0", - "<", - "0.9", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "37:31:1" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IdentityContract", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1926, - "linearizedBaseContracts": [ - 1926 - ], - "name": "IdentityContract", - "nameLocation": "79:16:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "IdentityContract.Node", - "id": 1667, - "members": [ - { - "constant": false, - "id": 1664, - "mutability": "mutable", - "name": "url", - "nameLocation": "131:3:1", - "nodeType": "VariableDeclaration", - "scope": 1667, - "src": "124:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1663, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "124:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1666, - "mutability": "mutable", - "name": "name", - "nameLocation": "151:4:1", - "nodeType": "VariableDeclaration", - "scope": 1667, - "src": "144:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1665, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "144:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "name": "Node", - "nameLocation": "109:4:1", - "nodeType": "StructDefinition", - "scope": 1926, - "src": "102:60:1", - "visibility": "public" - }, - { - "constant": false, - "id": 1669, - "mutability": "mutable", - "name": "onwer", - "nameLocation": "184:5:1", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "168:21:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1668, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "168:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 1674, - "mutability": "mutable", - "name": "nodes", - "nameLocation": "220:5:1", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "195:30:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node)" - }, - "typeName": { - "id": 1673, - "keyType": { - "id": 1670, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "203:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "195:24:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node)" - }, - "valueType": { - "id": 1672, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1671, - "name": "Node", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1667, - "src": "214:4:1" - }, - "referencedDeclaration": 1667, - "src": "214:4:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage_ptr", - "typeString": "struct IdentityContract.Node" - } - } - }, - "visibility": "internal" - }, - { - "anonymous": false, - "id": 1680, - "name": "OwnerSet", - "nameLocation": "267:8:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1679, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1676, - "indexed": true, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "292:8:1", - "nodeType": "VariableDeclaration", - "scope": 1680, - "src": "276:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1675, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "276:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1678, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "318:8:1", - "nodeType": "VariableDeclaration", - "scope": 1680, - "src": "302:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1677, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "302:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "275:52:1" - }, - "src": "261:67:1" - }, - { - "anonymous": false, - "id": 1688, - "name": "NodeJoined", - "nameLocation": "373:10:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1687, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1682, - "indexed": false, - "mutability": "mutable", - "name": "addr", - "nameLocation": "392:4:1", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "384:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1681, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "384:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1684, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "405:3:1", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "398:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1683, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "398:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1686, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "417:4:1", - "nodeType": "VariableDeclaration", - "scope": 1688, - "src": "410:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1685, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "410:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "383:39:1" - }, - "src": "367:56:1" - }, - { - "anonymous": false, - "id": 1696, - "name": "NodeUpdated", - "nameLocation": "474:11:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1695, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1690, - "indexed": false, - "mutability": "mutable", - "name": "addr", - "nameLocation": "494:4:1", - "nodeType": "VariableDeclaration", - "scope": 1696, - "src": "486:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1689, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "486:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1692, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "507:3:1", - "nodeType": "VariableDeclaration", - "scope": 1696, - "src": "500:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1691, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "500:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1694, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "519:4:1", - "nodeType": "VariableDeclaration", - "scope": 1696, - "src": "512:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1693, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "512:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "485:39:1" - }, - "src": "468:57:1" - }, - { - "anonymous": false, - "id": 1704, - "name": "NodeLeaved", - "nameLocation": "570:10:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 1703, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1698, - "indexed": false, - "mutability": "mutable", - "name": "addr", - "nameLocation": "589:4:1", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "581:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1697, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "581:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1700, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "602:3:1", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "595:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1699, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "595:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1702, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "614:4:1", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "607:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1701, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "607:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "580:39:1" - }, - "src": "564:56:1" - }, - { - "body": { - "id": 1734, - "nodeType": "Block", - "src": "663:190:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1711, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "700:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1713, - "indexExpression": { - "id": 1712, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1706, - "src": "706:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "700:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1714, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "700:16:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "694:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1709, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "694:5:1", - "typeDescriptions": {} - } - }, - "id": 1715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "694:23:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "694:30:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1717, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "728:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "694:35:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1728, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1721, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "755:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1723, - "indexExpression": { - "id": 1722, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1706, - "src": "761:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "755:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1724, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "755:15:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1720, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "749:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1719, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "749:5:1", - "typeDescriptions": {} - } - }, - "id": 1725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "749:22:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "749:29:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1727, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "782:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "749:34:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "694:89:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f64652068617320616c7265616479206a6f696e656420696e", - "id": 1730, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "797:28:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799", - "typeString": "literal_string \"node has already joined in\"" - }, - "value": "node has already joined in" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_25cdabc226b155c5392592bbf1ae939a5ad24a08b04940cbd2cb3402256c4799", - "typeString": "literal_string \"node has already joined in\"" - } - ], - "id": 1708, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "673:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "673:162:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1732, - "nodeType": "ExpressionStatement", - "src": "673:162:1" - }, - { - "id": 1733, - "nodeType": "PlaceholderStatement", - "src": "845:1:1" - } - ] - }, - "id": 1735, - "name": "nodeNotExists", - "nameLocation": "635:13:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1707, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1706, - "mutability": "mutable", - "name": "addr", - "nameLocation": "657:4:1", - "nodeType": "VariableDeclaration", - "scope": 1735, - "src": "649:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1705, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "649:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "648:14:1" - }, - "src": "626:227:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1765, - "nodeType": "Block", - "src": "893:184:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1760, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1742, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "930:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1744, - "indexExpression": { - "id": 1743, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1737, - "src": "936:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "930:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1745, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "930:16:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1741, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "924:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1740, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "924:5:1", - "typeDescriptions": {} - } - }, - "id": 1746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "924:23:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1747, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "924:30:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1748, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "957:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "924:34:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1752, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "984:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1754, - "indexExpression": { - "id": 1753, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1737, - "src": "990:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "984:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1755, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "984:15:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1751, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "978:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1750, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "978:5:1", - "typeDescriptions": {} - } - }, - "id": 1756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "978:22:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "978:29:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1010:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "978:33:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "924:87:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f646520686173206e6f74206a6f696e656420696e", - "id": 1761, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1025:24:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e", - "typeString": "literal_string \"node has not joined in\"" - }, - "value": "node has not joined in" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1352516be1087893cc18adb8afdd1a8c76e7c504a89e379814f4b1fb0ed3619e", - "typeString": "literal_string \"node has not joined in\"" - } - ], - "id": 1739, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "903:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1762, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "903:156:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1763, - "nodeType": "ExpressionStatement", - "src": "903:156:1" - }, - { - "id": 1764, - "nodeType": "PlaceholderStatement", - "src": "1069:1:1" - } - ] - }, - "id": 1766, - "name": "nodeExists", - "nameLocation": "868:10:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1738, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1737, - "mutability": "mutable", - "name": "addr", - "nameLocation": "887:4:1", - "nodeType": "VariableDeclaration", - "scope": 1766, - "src": "879:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1736, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "879:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "878:14:1" - }, - "src": "859:218:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1782, - "nodeType": "Block", - "src": "1097:77:1", - "statements": [ - { - "expression": { - "id": 1772, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1769, - "name": "onwer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1669, - "src": "1107:5:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1770, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1115:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1115:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1107:18:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1773, - "nodeType": "ExpressionStatement", - "src": "1107:18:1" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 1777, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1157:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1776, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1149:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1775, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1149:7:1", - "typeDescriptions": {} - } - }, - "id": 1778, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1149:10:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1779, - "name": "onwer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1669, - "src": "1161:5:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1774, - "name": "OwnerSet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1680, - "src": "1140:8:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 1780, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1140:27:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1781, - "nodeType": "EmitStatement", - "src": "1135:32:1" - } - ] - }, - "id": 1783, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1767, - "nodeType": "ParameterList", - "parameters": [], - "src": "1094:2:1" - }, - "returnParameters": { - "id": 1768, - "nodeType": "ParameterList", - "parameters": [], - "src": "1097:0:1" - }, - "scope": 1926, - "src": "1083:91:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1811, - "nodeType": "Block", - "src": "1290:113:1", - "statements": [ - { - "expression": { - "id": 1802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1794, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1300:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1797, - "indexExpression": { - "expression": { - "id": 1795, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1306:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1796, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1306:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1300:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1799, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1785, - "src": "1331:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1800, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1787, - "src": "1342:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1798, - "name": "Node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1667, - "src": "1320:4:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Node_$1667_storage_ptr_$", - "typeString": "type(struct IdentityContract.Node storage pointer)" - } - }, - "id": 1801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "url", - "name" - ], - "nodeType": "FunctionCall", - "src": "1320:28:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "src": "1300:48:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1803, - "nodeType": "ExpressionStatement", - "src": "1300:48:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1805, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1374:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1374:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1807, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1785, - "src": "1386:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1808, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1787, - "src": "1391:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1804, - "name": "NodeJoined", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1688, - "src": "1363:10:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1363:33:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1810, - "nodeType": "EmitStatement", - "src": "1358:38:1" - } - ] - }, - "functionSelector": "29803b21", - "id": 1812, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1790, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1274:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1274:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1792, - "kind": "modifierInvocation", - "modifierName": { - "id": 1789, - "name": "nodeNotExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1735, - "src": "1260:13:1" - }, - "nodeType": "ModifierInvocation", - "src": "1260:25:1" - } - ], - "name": "join", - "nameLocation": "1189:4:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1788, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1785, - "mutability": "mutable", - "name": "url", - "nameLocation": "1210:3:1", - "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "1194:19:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1784, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1194:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1787, - "mutability": "mutable", - "name": "name", - "nameLocation": "1231:4:1", - "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "1215:20:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1786, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1215:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1193:43:1" - }, - "returnParameters": { - "id": 1793, - "nodeType": "ParameterList", - "parameters": [], - "src": "1290:0:1" - }, - "scope": 1926, - "src": "1180:223:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1840, - "nodeType": "Block", - "src": "1479:111:1", - "statements": [ - { - "expression": { - "id": 1827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 1821, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1489:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1824, - "indexExpression": { - "expression": { - "id": 1822, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1495:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1823, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1495:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1489:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1825, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "1489:21:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1826, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "1513:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - "src": "1489:27:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1828, - "nodeType": "ExpressionStatement", - "src": "1489:27:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1830, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1543:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1831, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1543:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1832, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "1555:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "expression": { - "baseExpression": { - "id": 1833, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1560:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1836, - "indexExpression": { - "expression": { - "id": 1834, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1566:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1566:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1560:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1837, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "1560:22:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1829, - "name": "NodeUpdated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1696, - "src": "1531:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1531:52:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1839, - "nodeType": "EmitStatement", - "src": "1526:57:1" - } - ] - }, - "functionSelector": "f928edc2", - "id": 1841, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1817, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1467:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1818, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1467:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1819, - "kind": "modifierInvocation", - "modifierName": { - "id": 1816, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "1456:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "1456:22:1" - } - ], - "name": "updateUrl", - "nameLocation": "1418:9:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1815, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1814, - "mutability": "mutable", - "name": "url", - "nameLocation": "1444:3:1", - "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "1428:19:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1813, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1428:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1427:21:1" - }, - "returnParameters": { - "id": 1820, - "nodeType": "ParameterList", - "parameters": [], - "src": "1479:0:1" - }, - "scope": 1926, - "src": "1409:181:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1869, - "nodeType": "Block", - "src": "1668:113:1", - "statements": [ - { - "expression": { - "id": 1856, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 1850, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1678:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1853, - "indexExpression": { - "expression": { - "id": 1851, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1684:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1684:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1678:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1854, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "1678:22:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1855, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "1703:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - "src": "1678:29:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1857, - "nodeType": "ExpressionStatement", - "src": "1678:29:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1859, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1734:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1734:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "baseExpression": { - "id": 1861, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1746:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1864, - "indexExpression": { - "expression": { - "id": 1862, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1752:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1863, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1752:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1746:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1865, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "1746:21:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "id": 1866, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "1769:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1858, - "name": "NodeUpdated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1696, - "src": "1722:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1867, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1722:52:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1868, - "nodeType": "EmitStatement", - "src": "1717:57:1" - } - ] - }, - "functionSelector": "84da92a7", - "id": 1870, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1846, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1656:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1656:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1848, - "kind": "modifierInvocation", - "modifierName": { - "id": 1845, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "1645:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "1645:22:1" - } - ], - "name": "updateName", - "nameLocation": "1605:10:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1844, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1843, - "mutability": "mutable", - "name": "name", - "nameLocation": "1632:4:1", - "nodeType": "VariableDeclaration", - "scope": 1870, - "src": "1616:20:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1842, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1616:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1615:22:1" - }, - "returnParameters": { - "id": 1849, - "nodeType": "ParameterList", - "parameters": [], - "src": "1668:0:1" - }, - "scope": 1926, - "src": "1596:185:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1906, - "nodeType": "Block", - "src": "1834:193:1", - "statements": [ - { - "assignments": [ - 1878 - ], - "declarations": [ - { - "constant": false, - "id": 1878, - "mutability": "mutable", - "name": "url", - "nameLocation": "1858:3:1", - "nodeType": "VariableDeclaration", - "scope": 1906, - "src": "1844:17:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1877, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1844:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1884, - "initialValue": { - "expression": { - "baseExpression": { - "id": 1879, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1864:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1882, - "indexExpression": { - "expression": { - "id": 1880, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1870:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1881, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1870:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1864:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1883, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "url", - "nodeType": "MemberAccess", - "referencedDeclaration": 1664, - "src": "1864:21:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1844:41:1" - }, - { - "assignments": [ - 1886 - ], - "declarations": [ - { - "constant": false, - "id": 1886, - "mutability": "mutable", - "name": "name", - "nameLocation": "1909:4:1", - "nodeType": "VariableDeclaration", - "scope": 1906, - "src": "1895:18:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1885, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1895:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1892, - "initialValue": { - "expression": { - "baseExpression": { - "id": 1887, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1916:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1890, - "indexExpression": { - "expression": { - "id": 1888, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1922:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1889, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1922:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1916:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "id": 1891, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1666, - "src": "1916:22:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1895:43:1" - }, - { - "expression": { - "id": 1897, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1948:24:1", - "subExpression": { - "baseExpression": { - "id": 1893, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1955:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1896, - "indexExpression": { - "expression": { - "id": 1894, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1961:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1895, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1961:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1955:17:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1898, - "nodeType": "ExpressionStatement", - "src": "1948:24:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1900, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1998:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1998:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1902, - "name": "url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "2010:3:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 1903, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1886, - "src": "2015:4:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1899, - "name": "NodeLeaved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1704, - "src": "1987:10:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 1904, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1987:33:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1905, - "nodeType": "EmitStatement", - "src": "1982:38:1" - } - ] - }, - "functionSelector": "d66d9e19", - "id": 1907, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "expression": { - "id": 1873, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1822:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1874, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1822:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1875, - "kind": "modifierInvocation", - "modifierName": { - "id": 1872, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "1811:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "1811:22:1" - } - ], - "name": "leave", - "nameLocation": "1796:5:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1871, - "nodeType": "ParameterList", - "parameters": [], - "src": "1801:2:1" - }, - "returnParameters": { - "id": 1876, - "nodeType": "ParameterList", - "parameters": [], - "src": "1834:0:1" - }, - "scope": 1926, - "src": "1787:240:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1924, - "nodeType": "Block", - "src": "2124:35:1", - "statements": [ - { - "expression": { - "id": 1922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1918, - "name": "node", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1916, - "src": "2134:4:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1919, - "name": "nodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "2141:5:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Node_$1667_storage_$", - "typeString": "mapping(address => struct IdentityContract.Node storage ref)" - } - }, - "id": 1921, - "indexExpression": { - "id": 1920, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "2147:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2141:11:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage", - "typeString": "struct IdentityContract.Node storage ref" - } - }, - "src": "2134:18:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node memory" - } - }, - "id": 1923, - "nodeType": "ExpressionStatement", - "src": "2134:18:1" - } - ] - }, - "functionSelector": "582115fb", - "id": 1925, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1912, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "2091:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1913, - "kind": "modifierInvocation", - "modifierName": { - "id": 1911, - "name": "nodeExists", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1766, - "src": "2080:10:1" - }, - "nodeType": "ModifierInvocation", - "src": "2080:16:1" - } - ], - "name": "getNodeInfo", - "nameLocation": "2042:11:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1910, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1909, - "mutability": "mutable", - "name": "addr", - "nameLocation": "2062:4:1", - "nodeType": "VariableDeclaration", - "scope": 1925, - "src": "2054:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1908, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2054:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2053:14:1" - }, - "returnParameters": { - "id": 1917, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1916, - "mutability": "mutable", - "name": "node", - "nameLocation": "2118:4:1", - "nodeType": "VariableDeclaration", - "scope": 1925, - "src": "2106:16:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_memory_ptr", - "typeString": "struct IdentityContract.Node" - }, - "typeName": { - "id": 1915, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1914, - "name": "Node", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1667, - "src": "2106:4:1" - }, - "referencedDeclaration": 1667, - "src": "2106:4:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$1667_storage_ptr", - "typeString": "struct IdentityContract.Node" - } - }, - "visibility": "internal" - } - ], - "src": "2105:18:1" - }, - "scope": 1926, - "src": "2033:126:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - } - ], - "scope": 1927, - "src": "70:2091:1", - "usedErrors": [] - } - ], - "src": "37:2125:1" - }, - "compiler": { - "name": "solc", - "version": "0.8.10+commit.fc410830.Emscripten.clang" - }, - "networks": { - "1637654080369": { - "events": {}, - "links": {}, - "address": "0x60278b9DeB29Df5a9624074E7aBe48E52acd0a7F", - "transactionHash": "0x019e0fe10535efe27e0f2326ea136b7dedb4d6646b771b862764c015d69bc0ea" - }, - "1637668839754": { - "events": {}, - "links": {}, - "address": "0xc44CdeC4Ba84AdC34834e50C690Df71994C3d0D9", - "transactionHash": "0xfc01d4e91f40f9623fcf38fd4b42beecf8f7da9028a6799d9212bb0b96536f87" - }, - "1637669680062": { - "events": {}, - "links": {}, - "address": "0xBD3A0471E150a6410674e4B675873Dfd34252130", - "transactionHash": "0xc9bc19014c655e5eb2e8db72a3369179886b0a535d90fc306b1dc693ed3e5f24" - }, - "1637670344156": { - "events": {}, - "links": {}, - "address": "0x8665E1047287352f958dd926391752694D416519", - "transactionHash": "0xb5ee9339cfbe81eb8df96b1d66153c82eba77128b0d0a90d9595f5688929f169" - }, - "1637922795922": { - "events": {}, - "links": {}, - "address": "0xf59661E7c55bF34F5202555EFbA6147E1e2D6BfF", - "transactionHash": "0x3ee8c35b01a5131994a2b94c5717e2deb359368b714e21e267ab29290f27f78a" - } - }, - "schemaVersion": "3.4.3", - "updatedAt": "2021-11-26T10:42:04.983Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file +{"name":"IdentityContract","source":"IdentityContract.sol","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor","signature":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"addr","type":"address"},{"indexed":false,"internalType":"string","name":"url","type":"string"},{"indexed":false,"internalType":"string","name":"name","type":"string"}],"name":"NodeJoined","type":"event","signature":"0x26e049335acb952e44de7f01b0fd40f3bd53cfba74c61199e7654c71e2d556c1"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"addr","type":"address"},{"indexed":false,"internalType":"string","name":"url","type":"string"},{"indexed":false,"internalType":"string","name":"name","type":"string"}],"name":"NodeLeaved","type":"event","signature":"0xe6cce2c467e7cff22040fe784d410127854a34b9cf37b4c179f62afef96dd07d"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"addr","type":"address"},{"indexed":false,"internalType":"string","name":"url","type":"string"},{"indexed":false,"internalType":"string","name":"name","type":"string"}],"name":"NodeUpdated","type":"event","signature":"0x8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba725"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerSet","type":"event","signature":"0x342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getNodeInfo","outputs":[{"components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"string","name":"url","type":"string"},{"internalType":"string","name":"name","type":"string"}],"internalType":"struct IdentityContract.Node","name":"node","type":"tuple"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x582115fb"},{"inputs":[{"internalType":"uint256","name":"page","type":"uint256"},{"internalType":"uint256","name":"pageSize","type":"uint256"}],"name":"getNodes","outputs":[{"components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"string","name":"url","type":"string"},{"internalType":"string","name":"name","type":"string"}],"internalType":"struct IdentityContract.Node[]","name":"","type":"tuple[]"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","constant":true,"signature":"0x038d67e8"},{"inputs":[{"internalType":"string","name":"url","type":"string"},{"internalType":"string","name":"name","type":"string"}],"name":"join","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x29803b21"},{"inputs":[],"name":"leave","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xd66d9e19"},{"inputs":[{"internalType":"string","name":"name","type":"string"}],"name":"updateName","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0x84da92a7"},{"inputs":[{"internalType":"string","name":"url","type":"string"}],"name":"updateUrl","outputs":[],"stateMutability":"nonpayable","type":"function","signature":"0xf928edc2"}],"byteCode":"608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3611ef7806100db6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063038d67e81461006757806329803b2114610098578063582115fb146100b457806384da92a7146100e4578063d66d9e1914610100578063f928edc21461010a575b600080fd5b610081600480360381019061007c919061161d565b610126565b60405161008f929190611a42565b60405180910390f35b6100b260048036038101906100ad919061159c565b610497565b005b6100ce60048036038101906100c99190611522565b6107a8565b6040516100db9190611ab2565b60405180910390f35b6100fe60048036038101906100f9919061154f565b610a68565b005b610108610c29565b005b610124600480360381019061011f919061154f565b611141565b005b6060600080836001866101399190611bff565b6101439190611ba5565b905060028054905081101561042f57600084826002805490506101669190611bff565b11610181578160028054905061017c9190611bff565b610183565b845b905060008167ffffffffffffffff8111156101a1576101a0611de8565b5b6040519080825280602002602001820160405280156101da57816020015b6101c7611302565b8152602001906001900390816101bf5790505b50905060005b8281101561041b576001600060028381548110610200576101ff611db9565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820180546102d690611cb1565b80601f016020809104026020016040519081016040528092919081815260200182805461030290611cb1565b801561034f5780601f106103245761010080835404028352916020019161034f565b820191906000526020600020905b81548152906001019060200180831161033257829003601f168201915b5050505050815260200160028201805461036890611cb1565b80601f016020809104026020016040519081016040528092919081815260200182805461039490611cb1565b80156103e15780601f106103b6576101008083540402835291602001916103e1565b820191906000526020600020905b8154815290600101906020018083116103c457829003601f168201915b5050505050815250508282815181106103fd576103fc611db9565b5b6020026020010181905250808061041390611ce3565b9150506101e0565b508060028054905094509450505050610490565b600067ffffffffffffffff81111561044a57610449611de8565b5b60405190808252806020026020018201604052801561048357816020015b610470611302565b8152602001906001900390816104685790505b5060028054905092509250505b9250929050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020180546104e790611cb1565b905014801561054457506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461054090611cb1565b9050145b610583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057a90611a92565b60405180910390fd5b60405180606001604052803373ffffffffffffffffffffffffffffffffffffffff16815260200186868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815250600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010190805190602001906106de929190611339565b5060408201518160020190805190602001906106fb929190611339565b509050506002339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f26e049335acb952e44de7f01b0fd40f3bd53cfba74c61199e7654c71e2d556c13386868686604051610799959493929190611926565b60405180910390a15050505050565b6107b0611302565b816000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201805461080090611cb1565b905011801561085d57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461085990611cb1565b9050115b61089c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089390611a72565b60405180910390fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201805461094c90611cb1565b80601f016020809104026020016040519081016040528092919081815260200182805461097890611cb1565b80156109c55780601f1061099a576101008083540402835291602001916109c5565b820191906000526020600020905b8154815290600101906020018083116109a857829003601f168201915b505050505081526020016002820180546109de90611cb1565b80601f0160208091040260200160405190810160405280929190818152602001828054610a0a90611cb1565b8015610a575780601f10610a2c57610100808354040283529160200191610a57565b820191906000526020600020905b815481529060010190602001808311610a3a57829003601f168201915b505050505081525050915050919050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018054610ab890611cb1565b9050118015610b1557506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054610b1190611cb1565b9050115b610b54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4b90611a72565b60405180910390fd5b8282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002019190610ba59291906113bf565b507f8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba72533600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018585604051610c1c94939291906119fb565b60405180910390a1505050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018054610c7990611cb1565b9050118015610cd657506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054610cd290611cb1565b9050115b610d15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0c90611a72565b60405180910390fd5b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054610d6490611cb1565b80601f0160208091040260200160405190810160405280929190818152602001828054610d9090611cb1565b8015610ddd5780601f10610db257610100808354040283529160200191610ddd565b820191906000526020600020905b815481529060010190602001808311610dc057829003601f168201915b505050505090506000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018054610e3390611cb1565b80601f0160208091040260200160405190810160405280929190818152602001828054610e5f90611cb1565b8015610eac5780601f10610e8157610100808354040283529160200191610eac565b820191906000526020600020905b815481529060010190602001808311610e8f57829003601f168201915b50505050509050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000610f2a9190611445565b600282016000610f3a9190611445565b5050600080600090505b600280549050811015610fde573373ffffffffffffffffffffffffffffffffffffffff1660028281548110610f7c57610f7b611db9565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610fcb57809150610fde565b8080610fd690611ce3565b915050610f44565b5060008190505b6001600280549050610ff79190611bff565b8110156110b857600260018261100d9190611b4f565b8154811061101e5761101d611db9565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166002828154811061105d5761105c611db9565b5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080806110b090611ce3565b915050610fe5565b5060028054806110cb576110ca611d8a565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590557fe6cce2c467e7cff22040fe784d410127854a34b9cf37b4c179f62afef96dd07d338484604051611133939291906119b6565b60405180910390a150505050565b336000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201805461119190611cb1565b90501180156111ee57506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010180546111ea90611cb1565b9050115b61122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122490611a72565b60405180910390fd5b8282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101919061127e9291906113bf565b507f8dd72b3e159c2446f32a80f24459ad76e9f8fbb74165952a01c27adb16aba725338484600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016040516112f5949392919061196f565b60405180910390a1505050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081525090565b82805461134590611cb1565b90600052602060002090601f01602090048101928261136757600085556113ae565b82601f1061138057805160ff19168380011785556113ae565b828001600101855582156113ae579182015b828111156113ad578251825591602001919060010190611392565b5b5090506113bb9190611485565b5090565b8280546113cb90611cb1565b90600052602060002090601f0160209004810192826113ed5760008555611434565b82601f1061140657803560ff1916838001178555611434565b82800160010185558215611434579182015b82811115611433578235825591602001919060010190611418565b5b5090506114419190611485565b5090565b50805461145190611cb1565b6000825580601f106114635750611482565b601f0160209004906000526020600020908101906114819190611485565b5b50565b5b8082111561149e576000816000905550600101611486565b5090565b6000813590506114b181611e93565b92915050565b60008083601f8401126114cd576114cc611e1c565b5b8235905067ffffffffffffffff8111156114ea576114e9611e17565b5b60208301915083600182028301111561150657611505611e21565b5b9250929050565b60008135905061151c81611eaa565b92915050565b60006020828403121561153857611537611e2b565b5b6000611546848285016114a2565b91505092915050565b6000806020838503121561156657611565611e2b565b5b600083013567ffffffffffffffff81111561158457611583611e26565b5b611590858286016114b7565b92509250509250929050565b600080600080604085870312156115b6576115b5611e2b565b5b600085013567ffffffffffffffff8111156115d4576115d3611e26565b5b6115e0878288016114b7565b9450945050602085013567ffffffffffffffff81111561160357611602611e26565b5b61160f878288016114b7565b925092505092959194509250565b6000806040838503121561163457611633611e2b565b5b60006116428582860161150d565b92505060206116538582860161150d565b9150509250929050565b60006116698383611869565b905092915050565b61167a81611c33565b82525050565b61168981611c33565b82525050565b600061169a82611af9565b6116a48185611b1c565b9350836020820285016116b685611ad4565b8060005b858110156116f257848403895281516116d3858261165d565b94506116de83611b0f565b925060208a019950506001810190506116ba565b50829750879550505050505092915050565b60006117108385611b3e565b935061171d838584611c6f565b61172683611e30565b840190509392505050565b600061173c82611b04565b6117468185611b2d565b9350611756818560208601611c7e565b61175f81611e30565b840191505092915050565b600061177582611b04565b61177f8185611b3e565b935061178f818560208601611c7e565b61179881611e30565b840191505092915050565b600081546117b081611cb1565b6117ba8186611b3e565b945060018216600081146117d557600181146117e75761181a565b60ff198316865260208601935061181a565b6117f085611ae4565b60005b83811015611812578154818901526001820191506020810190506117f3565b808801955050505b50505092915050565b6000611830601683611b3e565b915061183b82611e41565b602082019050919050565b6000611853601a83611b3e565b915061185e82611e6a565b602082019050919050565b60006060830160008301516118816000860182611671565b50602083015184820360208601526118998282611731565b915050604083015184820360408601526118b38282611731565b9150508091505092915050565b60006060830160008301516118d86000860182611671565b50602083015184820360208601526118f08282611731565b9150506040830151848203604086015261190a8282611731565b9150508091505092915050565b61192081611c65565b82525050565b600060608201905061193b6000830188611680565b818103602083015261194e818688611704565b90508181036040830152611963818486611704565b90509695505050505050565b60006060820190506119846000830187611680565b8181036020830152611997818587611704565b905081810360408301526119ab81846117a3565b905095945050505050565b60006060820190506119cb6000830186611680565b81810360208301526119dd818561176a565b905081810360408301526119f1818461176a565b9050949350505050565b6000606082019050611a106000830187611680565b8181036020830152611a2281866117a3565b90508181036040830152611a37818486611704565b905095945050505050565b60006040820190508181036000830152611a5c818561168f565b9050611a6b6020830184611917565b9392505050565b60006020820190508181036000830152611a8b81611823565b9050919050565b60006020820190508181036000830152611aab81611846565b9050919050565b60006020820190508181036000830152611acc81846118c0565b905092915050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611b5a82611c65565b9150611b6583611c65565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b9a57611b99611d2c565b5b828201905092915050565b6000611bb082611c65565b9150611bbb83611c65565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611bf457611bf3611d2c565b5b828202905092915050565b6000611c0a82611c65565b9150611c1583611c65565b925082821015611c2857611c27611d2c565b5b828203905092915050565b6000611c3e82611c45565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015611c9c578082015181840152602081019050611c81565b83811115611cab576000848401525b50505050565b60006002820490506001821680611cc957607f821691505b60208210811415611cdd57611cdc611d5b565b5b50919050565b6000611cee82611c65565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611d2157611d20611d2c565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f6e6f646520686173206e6f74206a6f696e656420696e00000000000000000000600082015250565b7f6e6f64652068617320616c7265616479206a6f696e656420696e000000000000600082015250565b611e9c81611c33565b8114611ea757600080fd5b50565b611eb381611c65565b8114611ebe57600080fd5b5056fea2646970667358221220cf62f42654517c048982a59a4868e4deec6a4c66860511b2faade79bf89a5c7f64736f6c63430008060033","address":"0x43A6feb218F0a1Bc3Ad9d9045ee6528349572E42","txHash":"0xfafd2a7dcf2e474f6d38b43b4003635b9f8b3325f182679306ba812b49082bd4","receipt":{"blockHash":"0xce616b11f28c0d3e61c3836bd021e2daeafa7f1abcdc67266bb1d2ca618db371","blockNumber":1903461,"contractAddress":"0x43A6feb218F0a1Bc3Ad9d9045ee6528349572E42","cumulativeGasUsed":1787027,"from":"0xcae73102154059df0cdb628413a866b15ce81cd9","gasUsed":1787027,"logs":[{"address":"0x43A6feb218F0a1Bc3Ad9d9045ee6528349572E42","blockHash":"0xce616b11f28c0d3e61c3836bd021e2daeafa7f1abcdc67266bb1d2ca618db371","blockNumber":1903461,"data":"0x","logIndex":0,"removed":false,"topics":["0x342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000cae73102154059df0cdb628413a866b15ce81cd9"],"transactionHash":"0xfafd2a7dcf2e474f6d38b43b4003635b9f8b3325f182679306ba812b49082bd4","transactionIndex":0,"transactionLogIndex":"0x0","id":"log_a8f736e6"}],"logsBloom":"0x00000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000200000020000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000100000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000100400000000000000000000000000000000000000000000000","status":true,"to":null,"transactionHash":"0xfafd2a7dcf2e474f6d38b43b4003635b9f8b3325f182679306ba812b49082bd4","transactionIndex":0}} diff --git a/config/config.js b/config/config.js index 351387c..496459f 100644 --- a/config/config.js +++ b/config/config.js @@ -13,6 +13,10 @@ const conf = { // address: '0x242b7c50babbf087d4a73fe669bd0ffa1208233a', // privateKey: '4c37340e31bd665979a875a211ad47905c041b3b821b67e7d416bd97fc58a8e6', // } + { + address: "0xcae73102154059DF0cdb628413A866b15cE81cd9", + privateKey: "1c86b422d4a23bffc9107c6818e2566395f4a8802e93a175049e6307b12c9d51" + }, { address:'0x4CeDC9148aA38cc9636ddEC16a7a0bDC3c0c756F', privateKey:"18755a8c9ecf090505333ea5ff5a065415bbd312ed3eb8bca571892f212eab9c" diff --git a/contracts/hfl.sol b/contracts/HFLContract.sol similarity index 97% rename from contracts/hfl.sol rename to contracts/HFLContract.sol index 543ff95..bfc6732 100644 --- a/contracts/hfl.sol +++ b/contracts/HFLContract.sol @@ -2,7 +2,7 @@ pragma solidity >=0.7.0 <0.9.0; -import "./Identity.sol"; +import "./IdentityContract.sol"; /** * @title Delta Contract @@ -35,6 +35,7 @@ contract HFLContract { bytes32 commitment; string taskType; uint64 currentRound; + bool finished; } struct Candidate { @@ -77,6 +78,8 @@ contract HFLContract { bytes32 commitment, string taskType ); + // triggered when task finished + event TaskFinished(bytes32 taskId); // triggered when task developer call startRound event RoundStart(bytes32 taskId, uint64 round); @@ -184,7 +187,8 @@ contract HFLContract { dataSet: dataSet, commitment: commitment, taskType: taskType, - currentRound: 0 + currentRound: 0, + finished: false }); taskId = task_id; TaskRound[] storage rounds = taskRounds[taskId]; @@ -199,6 +203,25 @@ contract HFLContract { ); } + function finishTask(bytes32 taskId) + public + taskExists(taskId) + taskOwner(taskId) + { + Task storage task = createdTasks[taskId]; + task.finished = true; + emit TaskFinished(taskId); + } + + function getTask(bytes32 taskId) + public + view + taskExists(taskId) + returns (Task memory task) + { + task = createdTasks[taskId]; + } + /** * @dev called by task developer, notifying all clients that a new computing round is started and open for joining * @param taskId taskId diff --git a/contracts/Identity.sol b/contracts/IdentityContract.sol similarity index 61% rename from contracts/Identity.sol rename to contracts/IdentityContract.sol index 7a7206c..44bb106 100644 --- a/contracts/Identity.sol +++ b/contracts/IdentityContract.sol @@ -4,12 +4,14 @@ pragma solidity >=0.7.0 <0.9.0; contract IdentityContract { struct Node { + address addr; string url; string name; } address private onwer; mapping(address => Node) nodes; + address[] addrs; // event for EVM logging event OwnerSet(address indexed oldOwner, address indexed newOwner); @@ -47,7 +49,8 @@ contract IdentityContract { public nodeNotExists(msg.sender) { - nodes[msg.sender] = Node({url: url, name: name}); + nodes[msg.sender] = Node({addr: msg.sender, url: url, name: name}); + addrs.push(msg.sender); emit NodeJoined(msg.sender, url, name); } @@ -65,10 +68,46 @@ contract IdentityContract { string memory url = nodes[msg.sender].url; string memory name = nodes[msg.sender].name; delete nodes[msg.sender]; + uint256 removeIndex; + for (uint256 i = 0; i < addrs.length; i++) { + if (addrs[i] == msg.sender) { + removeIndex = i; + break; + } + } + for (uint256 i = removeIndex; i < addrs.length - 1; i++) { + addrs[i] = addrs[i + 1]; + } + addrs.pop(); emit NodeLeaved(msg.sender, url, name); } - function getNodeInfo(address addr) public view nodeExists(addr) returns (Node memory node) { + function getNodeInfo(address addr) + public + view + nodeExists(addr) + returns (Node memory node) + { node = nodes[addr]; } + + function getNodes(uint256 page, uint256 pageSize) + public + view + returns (Node[] memory, uint256) + { + uint256 offset = (page - 1) * pageSize; + if (offset < addrs.length) { + uint256 size = addrs.length - offset > pageSize + ? pageSize + : addrs.length - offset; + Node[] memory result = new Node[](size); + for (uint256 i = 0; i < size; i++) { + result[i] = nodes[addrs[i]]; + } + return (result, addrs.length); + } else { + return (new Node[](0), addrs.length); + } + } } diff --git a/package-lock.json b/package-lock.json index 3e02360..30d385c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "@ethereumjs/tx": "^3.3.2", "@grpc/grpc-js": "^1.2.3", "@grpc/proto-loader": "^0.5.5", + "@poanet/solidity-flattener": "^3.0.6", "big-integer": "^1.6.47", "fs": "^0.0.1-security", "google-protobuf": "^3.14.0", @@ -279,6 +280,23 @@ "node": ">=6" } }, + "node_modules/@poanet/solidity-flattener": { + "version": "3.0.6", + "resolved": "https://registry.npmmirror.com/@poanet/solidity-flattener/download/@poanet/solidity-flattener-3.0.6.tgz", + "integrity": "sha1-dlAGvSIntuXFoHG6KoVYlRIjTE0=", + "dependencies": { + "bunyan": "^1.8.12", + "decomment": "^0.9.1", + "glob-promise": "^3.4.0", + "path": "^0.12.7" + }, + "bin": { + "poa-solidity-flattener": "index.js" + }, + "engines": { + "node": "^12" + } + }, "node_modules/@protobufjs/aspromise": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", @@ -360,11 +378,26 @@ "@types/node": "*" } }, + "node_modules/@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/@types/glob/download/@types/glob-7.2.0.tgz", + "integrity": "sha1-vBtb86qS8lvV3TnzXFc2G9zlsus=", + "license": "MIT", + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, "node_modules/@types/long": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/@types/minimatch/download/@types/minimatch-3.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.5.tgz", + "integrity": "sha1-EAHMXmo3BLg8I2An538vWOoBD0A=" + }, "node_modules/@types/node": { "version": "16.10.4", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.4.tgz", @@ -678,6 +711,23 @@ "node": ">=6.14.2" } }, + "node_modules/bunyan": { + "version": "1.8.15", + "resolved": "https://registry.npm.taobao.org/bunyan/download/bunyan-1.8.15.tgz", + "integrity": "sha1-jONMqQihfQd2V2yhsvbL2RbpO0Y=", + "engines": [ + "node >=0.10.0" + ], + "bin": { + "bunyan": "bin/bunyan" + }, + "optionalDependencies": { + "dtrace-provider": "~0.8", + "moment": "^2.19.3", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, "node_modules/bytes": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", @@ -1006,6 +1056,18 @@ "node": ">=0.10" } }, + "node_modules/decomment": { + "version": "0.9.5", + "resolved": "https://registry.npmmirror.com/decomment/download/decomment-0.9.5.tgz", + "integrity": "sha512-h0TZ8t6Dp49duwyDHo3iw67mnh9/UpFiSSiOb5gDK1sqoXzrfX/SQxIUQd2R2QEiSnqib0KF2fnKnGfAhAs6lg==", + "dependencies": { + "esprima": "4.0.1" + }, + "engines": { + "node": ">=6.4", + "npm": ">=2.15" + } + }, "node_modules/decompress-response": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", @@ -1083,6 +1145,19 @@ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" }, + "node_modules/dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npm.taobao.org/dtrace-provider/download/dtrace-provider-0.8.8.tgz", + "integrity": "sha1-KZbVSQw34TR74mO0I+17KX+w2X4=", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "nan": "^2.14.0" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", @@ -1218,6 +1293,18 @@ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", @@ -1611,6 +1698,20 @@ "node": "*" } }, + "node_modules/glob-promise": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/glob-promise/download/glob-promise-3.4.0.tgz", + "integrity": "sha1-trjwhFBCFvcC3CzoybyayIZv2yA=", + "dependencies": { + "@types/glob": "*" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "glob": "*" + } + }, "node_modules/global": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", @@ -2363,6 +2464,15 @@ "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==" }, + "node_modules/moment": { + "version": "2.29.1", + "resolved": "https://registry.npmmirror.com/moment/download/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "optional": true, + "engines": { + "node": "*" + } + }, "node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -2425,11 +2535,80 @@ "buffer": "^5.5.0" } }, + "node_modules/mv": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/mv/download/mv-2.1.1.tgz", + "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "optional": true, + "dependencies": { + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/mv/node_modules/glob": { + "version": "6.0.4", + "resolved": "https://registry.npmmirror.com/glob/download/glob-6.0.4.tgz", + "integrity": "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==", + "optional": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mv/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmmirror.com/mkdirp/download/mkdirp-0.5.5.tgz", + "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=", + "optional": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mv/node_modules/rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmmirror.com/rimraf/download/rimraf-2.4.5.tgz", + "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "optional": true, + "dependencies": { + "glob": "^6.0.1" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/nan": { + "version": "2.15.0", + "resolved": "https://registry.nlark.com/nan/download/nan-2.15.0.tgz", + "integrity": "sha1-PzSkc/8Y4VwbVia2KQO1rW5mX+4=", + "optional": true + }, "node_modules/nano-json-stream-parser": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" }, + "node_modules/ncp": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ncp/download/ncp-2.0.0.tgz", + "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "optional": true, + "bin": { + "ncp": "bin/ncp" + } + }, "node_modules/negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", @@ -2924,6 +3103,12 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, + "node_modules/safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/safe-json-stringify/download/safe-json-stringify-1.2.0.tgz", + "integrity": "sha1-NW5EvJjx+TzkXfFLzXwBzahuCv0=", + "optional": true + }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -4331,6 +4516,17 @@ "protobufjs": "^6.8.6" } }, + "@poanet/solidity-flattener": { + "version": "3.0.6", + "resolved": "https://registry.npmmirror.com/@poanet/solidity-flattener/download/@poanet/solidity-flattener-3.0.6.tgz", + "integrity": "sha1-dlAGvSIntuXFoHG6KoVYlRIjTE0=", + "requires": { + "bunyan": "^1.8.12", + "decomment": "^0.9.1", + "glob-promise": "^3.4.0", + "path": "^0.12.7" + } + }, "@protobufjs/aspromise": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", @@ -4406,11 +4602,25 @@ "@types/node": "*" } }, + "@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/@types/glob/download/@types/glob-7.2.0.tgz", + "integrity": "sha1-vBtb86qS8lvV3TnzXFc2G9zlsus=", + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, "@types/long": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" }, + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/@types/minimatch/download/@types/minimatch-3.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.5.tgz", + "integrity": "sha1-EAHMXmo3BLg8I2An538vWOoBD0A=" + }, "@types/node": { "version": "16.10.4", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.4.tgz", @@ -4699,6 +4909,17 @@ "node-gyp-build": "^4.2.0" } }, + "bunyan": { + "version": "1.8.15", + "resolved": "https://registry.npm.taobao.org/bunyan/download/bunyan-1.8.15.tgz", + "integrity": "sha1-jONMqQihfQd2V2yhsvbL2RbpO0Y=", + "requires": { + "dtrace-provider": "~0.8", + "moment": "^2.19.3", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, "bytes": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", @@ -4986,6 +5207,14 @@ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, + "decomment": { + "version": "0.9.5", + "resolved": "https://registry.npmmirror.com/decomment/download/decomment-0.9.5.tgz", + "integrity": "sha512-h0TZ8t6Dp49duwyDHo3iw67mnh9/UpFiSSiOb5gDK1sqoXzrfX/SQxIUQd2R2QEiSnqib0KF2fnKnGfAhAs6lg==", + "requires": { + "esprima": "4.0.1" + } + }, "decompress-response": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", @@ -5053,6 +5282,15 @@ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" }, + "dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npm.taobao.org/dtrace-provider/download/dtrace-provider-0.8.8.tgz", + "integrity": "sha1-KZbVSQw34TR74mO0I+17KX+w2X4=", + "optional": true, + "requires": { + "nan": "^2.14.0" + } + }, "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", @@ -5177,6 +5415,11 @@ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=" + }, "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", @@ -5526,6 +5769,14 @@ "path-is-absolute": "^1.0.0" } }, + "glob-promise": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/glob-promise/download/glob-promise-3.4.0.tgz", + "integrity": "sha1-trjwhFBCFvcC3CzoybyayIZv2yA=", + "requires": { + "@types/glob": "*" + } + }, "global": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", @@ -6131,6 +6382,12 @@ "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==" }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npmmirror.com/moment/download/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "optional": true + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -6194,11 +6451,67 @@ } } }, + "mv": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/mv/download/mv-2.1.1.tgz", + "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "optional": true, + "requires": { + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" + }, + "dependencies": { + "glob": { + "version": "6.0.4", + "resolved": "https://registry.npmmirror.com/glob/download/glob-6.0.4.tgz", + "integrity": "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==", + "optional": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmmirror.com/mkdirp/download/mkdirp-0.5.5.tgz", + "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=", + "optional": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmmirror.com/rimraf/download/rimraf-2.4.5.tgz", + "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "optional": true, + "requires": { + "glob": "^6.0.1" + } + } + } + }, + "nan": { + "version": "2.15.0", + "resolved": "https://registry.nlark.com/nan/download/nan-2.15.0.tgz", + "integrity": "sha1-PzSkc/8Y4VwbVia2KQO1rW5mX+4=", + "optional": true + }, "nano-json-stream-parser": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" }, + "ncp": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ncp/download/ncp-2.0.0.tgz", + "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "optional": true + }, "negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", @@ -6594,6 +6907,12 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, + "safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/safe-json-stringify/download/safe-json-stringify-1.2.0.tgz", + "integrity": "sha1-NW5EvJjx+TzkXfFLzXwBzahuCv0=", + "optional": true + }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", diff --git a/package.json b/package.json index 3519a6a..ba59654 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "@ethereumjs/tx": "^3.3.2", "@grpc/grpc-js": "^1.2.3", "@grpc/proto-loader": "^0.5.5", + "@poanet/solidity-flattener": "^3.0.6", "big-integer": "^1.6.47", "fs": "^0.0.1-security", "google-protobuf": "^3.14.0", diff --git a/src/compile.js b/src/compile.js index 417b7d7..9f417aa 100644 --- a/src/compile.js +++ b/src/compile.js @@ -1,30 +1,33 @@ -import * as path from 'path' -import * as fs from 'fs' -import solc from 'solc' +import * as path from "path"; +import * as fs from "fs"; +import solc from "solc"; const __dirname = path.resolve(); export default function compile() { - const filePath = path.resolve(__dirname, "contracts"); - let sources = {}; - fs.readdirSync(filePath).forEach(file => { - if(file.endsWith(".sol")) { - console.log(file); - let sourceCode = fs.readFileSync(path.join(filePath, file), 'UTF-8'); - sources[file] = {content: sourceCode}; - } - }); - let input = { - language: 'Solidity', - sources: sources, - settings: { - outputSelection: { - '*': { - '*': ['*'] - } - } - } - }; - return JSON.parse(solc.compile(JSON.stringify(input))); + const filePath = path.resolve(__dirname, "contracts"); + let sources = {}; + fs.readdirSync(filePath).forEach((file) => { + if (file.endsWith(".sol")) { + console.log(file); + let sourceCode = fs.readFileSync(path.join(filePath, file), "UTF-8"); + sources[file] = { content: sourceCode }; + } + }); + let input = { + language: "Solidity", + sources: sources, + settings: { + outputSelection: { + "*": { + "*": ["*"], + }, + }, + optimizer: { + enabled: true, + runs: 200, + }, + }, + }; + return JSON.parse(solc.compile(JSON.stringify(input))); } - diff --git a/src/deploy.js b/src/deploy.js index aef523f..0d64f59 100644 --- a/src/deploy.js +++ b/src/deploy.js @@ -2,7 +2,8 @@ import Contract from "./contract.js"; const args = process.argv const c = new Contract(args.length > 2 ? args[2] : 'Mpc'); +const deployArgs = args.length > 3 ? args.slice(3): []; -c.deploy().then(() => { +c.deploy(deployArgs).then(() => { process.exit(0) }) diff --git a/src/eth.js b/src/eth.js index 856dc78..d552a98 100644 --- a/src/eth.js +++ b/src/eth.js @@ -18,7 +18,7 @@ function Connect() { }; // HTTP://127.0.0.1:7545 // conf.web3ProviderURL - let provider = new Web3.providers.WebsocketProvider("http://127.0.0.1:7545", options); + let provider = new Web3.providers.WebsocketProvider("wss://node.delta.yuanben.org", options); provider.on('error', (e) => { console.error(e.reason) }); diff --git a/yarn.lock b/yarn.lock index 06b3c64..5b9f333 100644 --- a/yarn.lock +++ b/yarn.lock @@ -209,6 +209,16 @@ "lodash.camelcase" "^4.3.0" "protobufjs" "^6.8.6" +"@poanet/solidity-flattener@^3.0.6": + "integrity" "sha1-dlAGvSIntuXFoHG6KoVYlRIjTE0=" + "resolved" "https://registry.npmmirror.com/@poanet/solidity-flattener/download/@poanet/solidity-flattener-3.0.6.tgz" + "version" "3.0.6" + dependencies: + "bunyan" "^1.8.12" + "decomment" "^0.9.1" + "glob-promise" "^3.4.0" + "path" "^0.12.7" + "@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": "integrity" "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" "resolved" "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz" @@ -288,11 +298,24 @@ dependencies: "@types/node" "*" +"@types/glob@*": + "integrity" "sha1-vBtb86qS8lvV3TnzXFc2G9zlsus=" + "resolved" "https://registry.npmmirror.com/@types/glob/download/@types/glob-7.2.0.tgz" + "version" "7.2.0" + dependencies: + "@types/minimatch" "*" + "@types/node" "*" + "@types/long@^4.0.1": "integrity" "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" "resolved" "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz" "version" "4.0.1" +"@types/minimatch@*": + "integrity" "sha1-EAHMXmo3BLg8I2An538vWOoBD0A=" + "resolved" "https://registry.npmmirror.com/@types/minimatch/download/@types/minimatch-3.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.5.tgz" + "version" "3.0.5" + "@types/node@*", "@types/node@>=12.12.47", "@types/node@>=13.7.0": "integrity" "sha512-EITwVTX5B4nDjXjGeQAfXOrm+Jn+qNjDmyDRtWoD+wZsl/RDPRTFRKivs4Mt74iOFlLOrE5+Kf+p5yjyhm3+cA==" "resolved" "https://registry.npmjs.org/@types/node/-/node-16.10.4.tgz" @@ -596,6 +619,16 @@ dependencies: "node-gyp-build" "^4.2.0" +"bunyan@^1.8.12": + "integrity" "sha1-jONMqQihfQd2V2yhsvbL2RbpO0Y=" + "resolved" "https://registry.npm.taobao.org/bunyan/download/bunyan-1.8.15.tgz" + "version" "1.8.15" + optionalDependencies: + "dtrace-provider" "~0.8" + "moment" "^2.19.3" + "mv" "~2" + "safe-json-stringify" "~1" + "bytes@3.1.0": "integrity" "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" "resolved" "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz" @@ -817,6 +850,13 @@ "resolved" "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz" "version" "0.2.0" +"decomment@^0.9.1": + "integrity" "sha512-h0TZ8t6Dp49duwyDHo3iw67mnh9/UpFiSSiOb5gDK1sqoXzrfX/SQxIUQd2R2QEiSnqib0KF2fnKnGfAhAs6lg==" + "resolved" "https://registry.npmmirror.com/decomment/download/decomment-0.9.5.tgz" + "version" "0.9.5" + dependencies: + "esprima" "4.0.1" + "decompress-response@^3.2.0", "decompress-response@^3.3.0": "integrity" "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=" "resolved" "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz" @@ -873,6 +913,13 @@ "resolved" "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz" "version" "0.1.2" +"dtrace-provider@~0.8": + "integrity" "sha1-KZbVSQw34TR74mO0I+17KX+w2X4=" + "resolved" "https://registry.npm.taobao.org/dtrace-provider/download/dtrace-provider-0.8.8.tgz" + "version" "0.8.8" + dependencies: + "nan" "^2.14.0" + "duplexer3@^0.1.4": "integrity" "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" "resolved" "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz" @@ -982,6 +1029,11 @@ "resolved" "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" "version" "1.0.3" +"esprima@4.0.1": + "integrity" "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=" + "resolved" "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz" + "version" "4.0.1" + "etag@~1.8.1": "integrity" "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" "resolved" "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" @@ -1285,7 +1337,14 @@ dependencies: "assert-plus" "^1.0.0" -"glob@^7.1.3": +"glob-promise@^3.4.0": + "integrity" "sha1-trjwhFBCFvcC3CzoybyayIZv2yA=" + "resolved" "https://registry.npmmirror.com/glob-promise/download/glob-promise-3.4.0.tgz" + "version" "3.4.0" + dependencies: + "@types/glob" "*" + +"glob@*", "glob@^7.1.3": "integrity" "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==" "resolved" "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz" "version" "7.2.0" @@ -1297,6 +1356,17 @@ "once" "^1.3.0" "path-is-absolute" "^1.0.0" +"glob@^6.0.1": + "integrity" "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==" + "resolved" "https://registry.npmmirror.com/glob/download/glob-6.0.4.tgz" + "version" "6.0.4" + dependencies: + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "2 || 3" + "once" "^1.3.0" + "path-is-absolute" "^1.0.0" + "global@~4.4.0": "integrity" "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==" "resolved" "https://registry.npmjs.org/global/-/global-4.4.0.tgz" @@ -1852,7 +1922,7 @@ "resolved" "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz" "version" "1.0.1" -"minimatch@^3.0.4": +"minimatch@^3.0.4", "minimatch@2 || 3": "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" "version" "3.0.4" @@ -1898,11 +1968,23 @@ dependencies: "minimist" "^1.2.5" +"mkdirp@~0.5.1": + "integrity" "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=" + "resolved" "https://registry.npmmirror.com/mkdirp/download/mkdirp-0.5.5.tgz" + "version" "0.5.5" + dependencies: + "minimist" "^1.2.5" + "mock-fs@^4.1.0": "integrity" "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==" "resolved" "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz" "version" "4.14.0" +"moment@^2.19.3": + "integrity" "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + "resolved" "https://registry.npmmirror.com/moment/download/moment-2.29.1.tgz" + "version" "2.29.1" + "ms@2.0.0": "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" @@ -1953,11 +2035,30 @@ "multibase" "^0.7.0" "varint" "^5.0.0" +"mv@~2": + "integrity" "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=" + "resolved" "https://registry.npm.taobao.org/mv/download/mv-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "mkdirp" "~0.5.1" + "ncp" "~2.0.0" + "rimraf" "~2.4.0" + +"nan@^2.14.0": + "integrity" "sha1-PzSkc/8Y4VwbVia2KQO1rW5mX+4=" + "resolved" "https://registry.nlark.com/nan/download/nan-2.15.0.tgz" + "version" "2.15.0" + "nano-json-stream-parser@^0.1.2": "integrity" "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" "resolved" "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz" "version" "0.1.2" +"ncp@~2.0.0": + "integrity" "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=" + "resolved" "https://registry.npm.taobao.org/ncp/download/ncp-2.0.0.tgz" + "version" "2.0.0" + "negotiator@0.6.2": "integrity" "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" "resolved" "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz" @@ -2309,6 +2410,13 @@ dependencies: "glob" "^7.1.3" +"rimraf@~2.4.0": + "integrity" "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=" + "resolved" "https://registry.npmmirror.com/rimraf/download/rimraf-2.4.5.tgz" + "version" "2.4.5" + dependencies: + "glob" "^6.0.1" + "ripemd160@^2.0.0", "ripemd160@^2.0.1": "integrity" "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==" "resolved" "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz" @@ -2339,6 +2447,11 @@ "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" "version" "5.1.2" +"safe-json-stringify@~1": + "integrity" "sha1-NW5EvJjx+TzkXfFLzXwBzahuCv0=" + "resolved" "https://registry.npm.taobao.org/safe-json-stringify/download/safe-json-stringify-1.2.0.tgz" + "version" "1.2.0" + "safer-buffer@^2.0.2", "safer-buffer@^2.1.0", "safer-buffer@>= 2.1.2 < 3", "safer-buffer@~2.1.0": "integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" "resolved" "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"