From fe333c535649d2bfb3ff46ba2b3f3a7c8fd530b3 Mon Sep 17 00:00:00 2001 From: Albert Date: Thu, 7 Sep 2023 16:52:36 +0800 Subject: [PATCH] feat: update deploy scripts --- Makefile | 2 +- README.md | 20 +- contracts/Swap.sol | 2 +- contracts/storage/MarketPlaceStorage.sol | 12 +- deploy-config/crossbell.json | 14 +- foundry.toml | 9 +- lib/forge-std | 2 +- package.json | 4 +- scripts/Deploy.s.sol | 293 +++-------------------- scripts/DeployConfig.s.sol | 24 +- scripts/Deployer.sol | 5 +- slither.db.json | 2 +- yarn.lock | 20 +- 13 files changed, 93 insertions(+), 316 deletions(-) diff --git a/Makefile b/Makefile index ec5b041..6598106 100644 --- a/Makefile +++ b/Makefile @@ -28,7 +28,7 @@ solhint :; solhint -f table "{contracts,test,scripts}/**/*.sol" # slither # to install slither, visit [https://github.com/crytic/slither] -slither :; slither . --fail-low +slither :; slither . --fail-low #--triage-mode # mythril mythril : diff --git a/README.md b/README.md index bb2d18c..f7d1b4c 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -## Crossbell NFT MarketPlace +## Crossbell xShop contracts [![Docs](https://github.com/Crossbell-Box/crossbell-marketplace-contracts/actions/workflows/docs.yml/badge.svg)](https://github.com/Crossbell-Box/crossbell-marketplace-contracts/actions/workflows/docs.yml) [![lint](https://github.com/Crossbell-Box/crossbell-marketplace-contracts/actions/workflows/lint.yml/badge.svg)](https://github.com/Crossbell-Box/crossbell-marketplace-contracts/actions/workflows/lint.yml) @@ -9,19 +9,25 @@ [![MythXBadge](https://badgen.net/https/api.mythx.io/v1/projects/e7178a58-97ab-4362-a5ab-2caa3fbd3a64/badge/data?cache=300&icon=https://raw.githubusercontent.com/ConsenSys/mythx-github-badge/main/logo_white.svg)](https://docs.mythx.io/dashboard/github-badges) -**Setup** -```bash -yarn +## ⚙ Development + +Install foundry if you don't have one: +```shell +# install foundry +curl -L https://foundry.paradigm.xyz | bash +foundryup ``` -**Testing** -```bash +Compile and run tests: +```shell +yarn yarn test ``` **Deploy** ```shell -npx hardhat run scripts/deployMarketPlace.ts +forge script scripts/Deploy.s.sol:Deploy --private-key $PRIVATE_KEY --broadcast --legacy --rpc-url $RPC_URL --ffi +forge script scripts/Deploy.s.sol:Deploy --sig 'sync()' --private-key $PRIVATE_KEY --broadcast --legacy --rpc-url $RPC_URL --ffi ``` diff --git a/contracts/Swap.sol b/contracts/Swap.sol index fe27e7b..8f49066 100644 --- a/contracts/Swap.sol +++ b/contracts/Swap.sol @@ -30,7 +30,7 @@ contract Swap is uint256 internal _minCsb; // minimum CSB amount to sell uint256 internal _minMira; // minimum MIRA amount to sell - mapping(uint256 => DataTypes.SellOrder) internal _orders; + mapping(uint256 orderId => DataTypes.SellOrder sellOrder) internal _orders; uint256 internal _orderCount; uint8 public constant SELL_MIRA = 1; diff --git a/contracts/storage/MarketPlaceStorage.sol b/contracts/storage/MarketPlaceStorage.sol index 6b96f56..f77a7a2 100644 --- a/contracts/storage/MarketPlaceStorage.sol +++ b/contracts/storage/MarketPlaceStorage.sol @@ -10,14 +10,16 @@ contract MarketPlaceStorage { uint256 internal _askOrderCount; // @notice askOrderId -> Order - mapping(uint256 => DataTypes.Order) internal _askOrders; + mapping(uint256 askOrderId => DataTypes.Order askOrder) internal _askOrders; // @notice nftAddress -> tokenId -> owner -> askOrderId - mapping(address => mapping(uint256 => mapping(address => uint256))) internal _askOrderIds; + mapping(address nftAddress => mapping(uint256 tokenId => mapping(address owner => uint256 askOrderId))) + internal _askOrderIds; uint256 internal _bidOrderCount; // @notice bidOrderId -> Order - mapping(uint256 => DataTypes.Order) internal _bidOrders; - // @notice nftAddress -> tokenId -> owner -> Order - mapping(address => mapping(uint256 => mapping(address => uint256))) internal _bidOrderIds; + mapping(uint256 bidOrderId => DataTypes.Order bidOrder) internal _bidOrders; + // @notice nftAddress -> tokenId -> owner -> bidOrderId + mapping(address nftAddress => mapping(uint256 tokenId => mapping(address owner => uint256 bidOrderId))) + internal _bidOrderIds; } // slither-disable-end naming-convention diff --git a/deploy-config/crossbell.json b/deploy-config/crossbell.json index 0a32569..3a64177 100644 --- a/deploy-config/crossbell.json +++ b/deploy-config/crossbell.json @@ -1,11 +1,9 @@ { "chainID": 3737, - "proxyAdminOwner": "0x5f603895B48F0C451af39bc7e0c587aE15718e4d", - "web3EntryTokenName": "Web3 Entry Character", - "web3EntryTokenSymbol": "WEC", - "linklistTokenName": "Link List Token", - "linklistTokenSymbol": "LLT", - "xsyncOperator": "0x0F588318A494e4508A121a32B6670b5494Ca3357", - "miraToken": "0xAfB95CC0BD320648B3E8Df6223d9CDD05EbeDC64", - "newbieVillaAdmin": "0x5f603895B48F0C451af39bc7e0c587aE15718e4d" + "proxyAdminOwner": "0xc72cE0090718502f08506c4592F18f13094d4CE3", + "admin": "0x4BCe096F44b90B812420637068dC215C1C3C8B54", + "wcsb": "0xff823B6138089Bea84E8d67fcb68f786e7Feb118", + "mira": "0xb402548B1f3fE59211B19832C5b659bB4d4Abd42", + "minCsb": 100000000000000000000, + "minMira": 100000000000000000000 } \ No newline at end of file diff --git a/foundry.toml b/foundry.toml index 741c9f7..787247e 100644 --- a/foundry.toml +++ b/foundry.toml @@ -19,6 +19,13 @@ cache_path = 'cache_foundry' fuzz_runs = 1_000 libs = ["node_modules", "lib"] +fs_permissions = [ + { access='read-write', path='./deployments/' }, + { access='read', path='./deploy-config/' }, + { access='read', path='./broadcast/' }, + { access='read', path = './artifacts_foundry/' }, +] + # Extreme Fuzzing CI Profile :P [profile.ci] -fuzz_runs = 256 +fuzz_runs = 1_000 diff --git a/lib/forge-std b/lib/forge-std index 1d9650e..2330c3d 160000 --- a/lib/forge-std +++ b/lib/forge-std @@ -1 +1 @@ -Subproject commit 1d9650e951204a0ddce9ff89c32f1997984cef4d +Subproject commit 2330c3de86b02a9710fe921e6a2949ebcf509540 diff --git a/package.json b/package.json index 304642a..b01ab1a 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "crossbell-marketplace-contracts", + "name": "xShop-contracts", "license": "MIT", "version": "1.0.0", "files": [ @@ -9,7 +9,7 @@ "@nomiclabs/hardhat-ethers": "^2.0.6", "@nomiclabs/hardhat-etherscan": "^3.1.0", "@nomiclabs/hardhat-waffle": "^2.0.3", - "@openzeppelin/contracts": "4.8.1", + "@openzeppelin/contracts": "4.9.0", "@typechain/ethers-v5": "^7.0.1", "@typechain/hardhat": "^6.1.5", "@types/mocha": "^10.0.0", diff --git a/scripts/Deploy.s.sol b/scripts/Deploy.s.sol index 15dcc5b..6752d77 100644 --- a/scripts/Deploy.s.sol +++ b/scripts/Deploy.s.sol @@ -4,16 +4,8 @@ pragma solidity 0.8.18; import {Deployer} from "./Deployer.sol"; import {DeployConfig} from "./DeployConfig.s.sol"; -import {MintNFT} from "../contracts/MintNFT.sol"; -import {Web3Entry} from "../contracts/Web3Entry.sol"; -import {Linklist} from "../contracts/Linklist.sol"; -import {Periphery} from "../contracts/misc/Periphery.sol"; -import {NewbieVilla} from "../contracts/misc/NewbieVilla.sol"; -import {Tips} from "../contracts/misc/Tips.sol"; -import {TipsWithFee} from "../contracts/misc/TipsWithFee.sol"; -import {TipsWithConfig} from "../contracts/misc/TipsWithConfig.sol"; -import {LimitedMintModule} from "../contracts/modules/mint/LimitedMintModule.sol"; -import {ApprovalMintModule} from "../contracts/modules/mint/ApprovalMintModule.sol"; +import {MarketPlace} from "../contracts/MarketPlace.sol"; +import {Swap} from "../contracts/Swap.sol"; import {console2 as console} from "forge-std/console2.sol"; import { TransparentUpgradeableProxy @@ -57,47 +49,24 @@ contract Deploy is Deployer { deployProxies(); initialize(); - - // deploy mint modules - deployApprovalMintModule(); - deployLimitedMintModule(); } /// @notice Initialize all of the proxies function initialize() public { - initializeWeb3Entry(); - initializeLinklist(); - initializePeriphery(); - initializeNewbieVilla(); - initializeTips(); - initializeTipsWithFee(); - initializeTipsWithConfig(); + initializeMarketPlace(); + initializeSwap(); } /// @notice Deploy all of the proxies function deployProxies() public { - deployProxy("Web3Entry"); - deployProxy("Linklist"); - deployProxy("Periphery"); - deployProxy("NewbieVilla"); - deployProxy("Tips"); - deployProxy("TipsWithFee"); - deployProxy("TipsWithConfig"); + deployProxy("MarketPlace"); + deployProxy("Swap"); } /// @notice Deploy all of the logic contracts function deployImplementations() public { - deployWeb3Entry(); - deployLinklist(); - deployPeriphery(); - - deployMintNFTImpl(); - - deployNewbieVilla(); - - deployTips(); - deployTipsWithFee(); - deployTipsWithConfig(); + deployMarketPlace(); + deploySwap(); } function deployProxy(string memory _name) public broadcast returns (address addr_) { @@ -119,241 +88,53 @@ contract Deploy is Deployer { addr_ = address(proxy); } - function deployWeb3Entry() public broadcast returns (address addr_) { - Web3Entry web3Entry = new Web3Entry(); - - // check states - require( - web3Entry.getLinklistContract() == address(0), - "web3Entry linklist should be address(0)" - ); - require(web3Entry.totalSupply() == 0, "web3Entry totalSupply should be 0"); - - save("Web3Entry", address(web3Entry)); - console.log("Web3Entry deployed at %s", address(web3Entry)); - addr_ = address(web3Entry); - } - - function deployLinklist() public broadcast returns (address addr_) { - Linklist linklist = new Linklist(); - - // check states - require(linklist.Web3Entry() == address(0), "linklist web3Entry should be address(0)"); - require(linklist.totalSupply() == 0, "linklist totalSupply should be 0"); - - save("Linklist", address(linklist)); - console.log("Linklist deployed at %s", address(linklist)); - addr_ = address(linklist); - } - - function deployPeriphery() public broadcast returns (address addr_) { - Periphery periphery = new Periphery(); - - // check states - require(periphery.web3Entry() == address(0), "periphery web3Entry should be address(0)"); - require(periphery.linklist() == address(0), "periphery linklist should be address(0)"); - - save("Periphery", address(periphery)); - console.log("Periphery deployed at %s", address(periphery)); - addr_ = address(periphery); - } - - function deployNewbieVilla() public broadcast returns (address addr_) { - NewbieVilla newbieVilla = new NewbieVilla(); + function deployMarketPlace() public broadcast returns (address addr_) { + MarketPlace marketPlace = new MarketPlace(); // check states - require( - newbieVilla.web3Entry() == address(0), - "newbieVilla web3Entry should be address(0)" - ); - require( - newbieVilla.xsyncOperator() == address(0), - "newbieVilla xsyncOperator should be address(0)" - ); + require(marketPlace.wcsb() == address(0), "marketPlace wcsb should be address(0)"); + require(marketPlace.mira() == address(0), "marketPlace mira should be address(0)"); - save("NewbieVilla", address(newbieVilla)); - console.log("NewbieVilla deployed at %s", address(newbieVilla)); - addr_ = address(newbieVilla); + save("MarketPlace", address(marketPlace)); + console.log("MarketPlace deployed at %s", address(marketPlace)); + addr_ = address(marketPlace); } - function deployTips() public broadcast returns (address addr_) { - Tips tips = new Tips(); + function deploySwap() public broadcast returns (address addr_) { + Swap swap = new Swap(); // check states - require(tips.getWeb3Entry() == address(0), "tips web3Entry should be address(0)"); - require(tips.getToken() == address(0), "tips getToken should be address(0)"); + require(swap.mira() == address(0), "swap mira should be address(0)"); + require(swap.getMinMira() == 0, "swap getMinMira should be 0"); + require(swap.getMinCsb() == 0, "swap getMinCsb should be 0"); - save("Tips", address(tips)); - console.log("Tips deployed at %s", address(tips)); - addr_ = address(tips); + save("Swap", address(swap)); + console.log("Swap deployed at %s", address(swap)); + addr_ = address(swap); } - function deployTipsWithFee() public broadcast returns (address addr_) { - TipsWithFee tips = new TipsWithFee(); + function initializeMarketPlace() public broadcast { + MarketPlace marketPlaceProxy = MarketPlace(mustGetAddress("MarketPlaceProxy")); - // check states - require(tips.getWeb3Entry() == address(0), "tipsWithFee web3Entry should be address(0)"); - require(tips.getToken() == address(0), "tipsWithFee getToken should be address(0)"); - - save("TipsWithFee", address(tips)); - console.log("TipsWithFee deployed at %s", address(tips)); - addr_ = address(tips); - } - - function deployTipsWithConfig() public broadcast returns (address addr_) { - TipsWithConfig tips = new TipsWithConfig(); + marketPlaceProxy.initialize(cfg.wcsb(), cfg.mira(), cfg.admin()); // check states + require(marketPlaceProxy.wcsb() == cfg.wcsb(), "marketPlace wcsb error"); + require(marketPlaceProxy.mira() == cfg.mira(), "marketPlace mira error"); require( - tips.getWeb3Entry() == address(0), - "tipsWithConfig getWeb3Entry should be address(0)" + marketPlaceProxy.hasRole(marketPlaceProxy.ADMIN_ROLE(), cfg.admin()), + "marketPlace admin error" ); - - save("TipsWithConfig", address(tips)); - console.log("TipsWithConfig deployed at %s", address(tips)); - addr_ = address(tips); - } - - function deployMintNFTImpl() public broadcast returns (address addr_) { - MintNFT nft = new MintNFT(); - - // check states - bytes32 web3EntrySlot = vm.load(address(nft), bytes32(uint256(15))); - require( - address(uint160(uint256(web3EntrySlot))) == address(0), - "MintNFT web3Entry should be address(0)" - ); - - save("MintNFT", address(nft)); - console.log("MintNFT deployed at %s", address(nft)); - addr_ = address(nft); - } - - function deployApprovalMintModule() public broadcast returns (address addr_) { - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - - ApprovalMintModule module = new ApprovalMintModule(web3EntryProxy); - - save("ApprovalMintModule", address(module)); - console.log("ApprovalMintModule deployed at %s", address(module)); - addr_ = address(module); - } - - function deployLimitedMintModule() public broadcast returns (address addr_) { - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - - LimitedMintModule module = new LimitedMintModule(web3EntryProxy); - - save("LimitedMintModule", address(module)); - console.log("LimitedMintModule deployed at %s", address(module)); - addr_ = address(module); - } - - function initializeWeb3Entry() public broadcast { - Web3Entry web3EntryProxy = Web3Entry(mustGetAddress("Web3EntryProxy")); - address mintNFTImpl = mustGetAddress("MintNFT"); - address linklistProxy = mustGetAddress("LinklistProxy"); - address peripheryProxy = mustGetAddress("PeripheryProxy"); - address newbieVillaProxy = mustGetAddress("NewbieVillaProxy"); - - web3EntryProxy.initialize( - cfg.web3EntryTokenName(), - cfg.web3EntryTokenSymbol(), - linklistProxy, - mintNFTImpl, - peripheryProxy, - newbieVillaProxy - ); - - // check states - require( - keccak256(abi.encodePacked(web3EntryProxy.name())) == - keccak256(abi.encodePacked(cfg.web3EntryTokenName())), - "web3Entry name error" - ); - require( - keccak256(abi.encodePacked(web3EntryProxy.symbol())) == - keccak256(abi.encodePacked(cfg.web3EntryTokenSymbol())), - "web3Entry symbol error" - ); - require(web3EntryProxy.getLinklistContract() == linklistProxy, "web3Entry linklist error"); - - bytes32 peripherySlot = vm.load(address(web3EntryProxy), bytes32(uint256(21))); - require( - address(uint160(uint256(peripherySlot))) == peripheryProxy, - "web3Entry periphery error" - ); - - bytes32 newbieVillaSlot = vm.load(address(web3EntryProxy), bytes32(uint256(27))); - require( - address(uint160(uint256(newbieVillaSlot))) == newbieVillaProxy, - "web3Entry newbieVilla error" - ); - } - - function initializeLinklist() public broadcast { - Linklist linklistProxy = Linklist(mustGetAddress("LinklistProxy")); - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - - linklistProxy.initialize( - cfg.linklistTokenName(), - cfg.linklistTokenSymbol(), - web3EntryProxy - ); - - require(linklistProxy.Web3Entry() == web3EntryProxy, "linklist web3Entry error"); - } - - function initializePeriphery() public broadcast { - Periphery peripheryProxy = Periphery(mustGetAddress("PeripheryProxy")); - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - address linklistProxy = mustGetAddress("LinklistProxy"); - - peripheryProxy.initialize(web3EntryProxy, linklistProxy); - - require(peripheryProxy.web3Entry() == web3EntryProxy, "periphery web3Entry error"); - } - - function initializeNewbieVilla() public broadcast { - NewbieVilla newbieVillaProxy = NewbieVilla(mustGetAddress("NewbieVillaProxy")); - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - address tipsProxy = mustGetAddress("TipsProxy"); - - newbieVillaProxy.initialize( - web3EntryProxy, - cfg.xsyncOperator(), - cfg.miraToken(), - cfg.newbieVillaAdmin(), - tipsProxy - ); - - require(newbieVillaProxy.web3Entry() == web3EntryProxy, "newbieVilla web3Entry error"); - } - - function initializeTips() public broadcast { - Tips tipsProxy = Tips(mustGetAddress("TipsProxy")); - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - - tipsProxy.initialize(web3EntryProxy, cfg.miraToken()); - - require(tipsProxy.getWeb3Entry() == web3EntryProxy, "tips getWeb3Entry error"); - } - - function initializeTipsWithFee() public broadcast { - TipsWithFee tipsProxy = TipsWithFee(mustGetAddress("TipsWithFeeProxy")); - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); - - tipsProxy.initialize(web3EntryProxy, cfg.miraToken()); - - require(tipsProxy.getWeb3Entry() == web3EntryProxy, "tipsWithFee getWeb3Entry error"); } - function initializeTipsWithConfig() public broadcast { - TipsWithConfig tipsProxy = TipsWithConfig(mustGetAddress("TipsWithConfigProxy")); - address web3EntryProxy = mustGetAddress("Web3EntryProxy"); + function initializeSwap() public broadcast { + Swap swapProxy = Swap(mustGetAddress("SwapProxy")); - tipsProxy.initialize(web3EntryProxy); + swapProxy.initialize(cfg.mira(), cfg.minCsb(), cfg.minMira(), cfg.admin()); - require(tipsProxy.getWeb3Entry() == web3EntryProxy, "tipsWithConfig getWeb3Entry error"); + require(swapProxy.mira() == cfg.mira(), "swap mira error"); + require(swapProxy.getMinMira() == cfg.minCsb(), "swap getMinMira error"); + require(swapProxy.getMinCsb() == cfg.minMira(), "swap getMinCsb error"); + require(swapProxy.hasRole(swapProxy.ADMIN_ROLE(), cfg.admin()), "swap admin error"); } } diff --git a/scripts/DeployConfig.s.sol b/scripts/DeployConfig.s.sol index 5df10ee..18c7f29 100644 --- a/scripts/DeployConfig.s.sol +++ b/scripts/DeployConfig.s.sol @@ -15,13 +15,11 @@ contract DeployConfig is Script { uint256 public chainID; address public proxyAdminOwner; - string public web3EntryTokenName; - string public web3EntryTokenSymbol; - string public linklistTokenName; - string public linklistTokenSymbol; - address public xsyncOperator; - address public miraToken; - address public newbieVillaAdmin; + address public admin; + address public wcsb; + address public mira; + uint256 public minCsb; + uint256 public minMira; constructor(string memory _path) { console.log("DeployConfig: reading file %s", _path); @@ -36,12 +34,10 @@ contract DeployConfig is Script { chainID = stdJson.readUint(_json, "$.chainID"); proxyAdminOwner = stdJson.readAddress(_json, "$.proxyAdminOwner"); - web3EntryTokenName = stdJson.readString(_json, "$.web3EntryTokenName"); - web3EntryTokenSymbol = stdJson.readString(_json, "$.web3EntryTokenSymbol"); - linklistTokenName = stdJson.readString(_json, "$.linklistTokenName"); - linklistTokenSymbol = stdJson.readString(_json, "$.linklistTokenSymbol"); - xsyncOperator = stdJson.readAddress(_json, "$.xsyncOperator"); - miraToken = stdJson.readAddress(_json, "$.miraToken"); - newbieVillaAdmin = stdJson.readAddress(_json, "$.newbieVillaAdmin"); + admin = stdJson.readAddress(_json, "$.admin"); + wcsb = stdJson.readAddress(_json, "$.wcsb"); + mira = stdJson.readAddress(_json, "$.mira"); + minCsb = stdJson.readUint(_json, "$.minCsb"); + minMira = stdJson.readUint(_json, "$.minMira"); } } diff --git a/scripts/Deployer.sol b/scripts/Deployer.sol index 5ddfe9c..06758e7 100644 --- a/scripts/Deployer.sol +++ b/scripts/Deployer.sol @@ -131,9 +131,8 @@ abstract contract Deployer is Script { console.log("Syncing deployment %s: contract %s", deploymentName, contractName); string[] memory args = getDeployTransactionConstructorArguments(deployTx); - // issue: https://github.com/foundry-rs/foundry/issues/4049 - bytes memory code; // = _getCode(contractName); - bytes memory deployedCode; // = _getDeployedCode(contractName); + bytes memory code = _getCode(contractName); + bytes memory deployedCode = _getDeployedCode(contractName); string memory receipt = _getDeployReceiptByContractAddress(addr); string memory artifactPath = string.concat( diff --git a/slither.db.json b/slither.db.json index d1f8558..ff21933 100644 --- a/slither.db.json +++ b/slither.db.json @@ -1 +1 @@ -[{"elements": [{"type": "function", "name": "balanceOf", "source_mapping": {"start": 14257, "length": 380, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [453, 454, 455, 456, 457, 458, 459], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14136, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472], "starting_column": 1, "ending_column": 2}}, "signature": "balanceOf(address)"}}, {"type": "node", "name": "characterId = IERC721Enumerable(Web3Entry).tokenOfOwnerByIndex(account,i)", "source_mapping": {"start": 14483, "length": 82, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [456], "starting_column": 13, "ending_column": 95}, "type_specific_fields": {"parent": {"type": "function", "name": "balanceOf", "source_mapping": {"start": 14257, "length": 380, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [453, 454, 455, 456, 457, 458, 459], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14136, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472], "starting_column": 1, "ending_column": 2}}, "signature": "balanceOf(address)"}}}}], "description": "Linklist.balanceOf(address) (contracts/Linklist.sol#453-459) has external calls inside a loop: characterId = IERC721Enumerable(Web3Entry).tokenOfOwnerByIndex(account,i) (contracts/Linklist.sol#456)\n", "markdown": "[Linklist.balanceOf(address)](contracts/Linklist.sol#L453-L459) has external calls inside a loop: [characterId = IERC721Enumerable(Web3Entry).tokenOfOwnerByIndex(account,i)](contracts/Linklist.sol#L456)\n", "first_markdown_element": "contracts/Linklist.sol#L453-L459", "id": "dc05c728afd53c734ad1e92702ad8c96e47862659c1fb8f79c5a229e1fff984a", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "linkCharactersInBatch", "source_mapping": {"start": 738, "length": 972, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "linkCharactersInBatch(DataTypes.linkCharactersInBatchData)"}}, {"type": "node", "name": "IWeb3Entry(web3Entry).linkCharacter(DataTypes.linkCharacterData(vars.fromCharacterId,vars.toCharacterIds[i],vars.linkType,vars.data[i]))", "source_mapping": {"start": 1004, "length": 317, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "linkCharactersInBatch", "source_mapping": {"start": 738, "length": 972, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "linkCharactersInBatch(DataTypes.linkCharactersInBatchData)"}}}}], "description": "Periphery.linkCharactersInBatch(DataTypes.linkCharactersInBatchData) (contracts/misc/Periphery.sol#21-44) has external calls inside a loop: IWeb3Entry(web3Entry).linkCharacter(DataTypes.linkCharacterData(vars.fromCharacterId,vars.toCharacterIds[i],vars.linkType,vars.data[i])) (contracts/misc/Periphery.sol#25-32)\n", "markdown": "[Periphery.linkCharactersInBatch(DataTypes.linkCharactersInBatchData)](contracts/misc/Periphery.sol#L21-L44) has external calls inside a loop: [IWeb3Entry(web3Entry).linkCharacter(DataTypes.linkCharacterData(vars.fromCharacterId,vars.toCharacterIds[i],vars.linkType,vars.data[i]))](contracts/misc/Periphery.sol#L25-L32)\n", "first_markdown_element": "contracts/misc/Periphery.sol#L21-L44", "id": "58932bce1e95df28a9c4d9bd701ce2b92afad182608b38ca0a024aa488471a11", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "linkCharactersInBatch", "source_mapping": {"start": 738, "length": 972, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "linkCharactersInBatch(DataTypes.linkCharactersInBatchData)"}}, {"type": "node", "name": "IWeb3Entry(web3Entry).createThenLinkCharacter(DataTypes.createThenLinkCharacterData(vars.fromCharacterId,vars.toAddresses[i_scope_0],vars.linkType))", "source_mapping": {"start": 1410, "length": 283, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "linkCharactersInBatch", "source_mapping": {"start": 738, "length": 972, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "linkCharactersInBatch(DataTypes.linkCharactersInBatchData)"}}}}], "description": "Periphery.linkCharactersInBatch(DataTypes.linkCharactersInBatchData) (contracts/misc/Periphery.sol#21-44) has external calls inside a loop: IWeb3Entry(web3Entry).createThenLinkCharacter(DataTypes.createThenLinkCharacterData(vars.fromCharacterId,vars.toAddresses[i_scope_0],vars.linkType)) (contracts/misc/Periphery.sol#36-42)\n", "markdown": "[Periphery.linkCharactersInBatch(DataTypes.linkCharactersInBatchData)](contracts/misc/Periphery.sol#L21-L44) has external calls inside a loop: [IWeb3Entry(web3Entry).createThenLinkCharacter(DataTypes.createThenLinkCharacterData(vars.fromCharacterId,vars.toAddresses[i_scope_0],vars.linkType))](contracts/misc/Periphery.sol#L36-L42)\n", "first_markdown_element": "contracts/misc/Periphery.sol#L21-L44", "id": "55dcd3e7191b0137afaf47e812721fd886afb320b6fbbd3fd3cc4fa1e4544b61", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "getNotesByCharacterId", "source_mapping": {"start": 2137, "length": 553, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "getNotesByCharacterId(uint256,uint256,uint256)"}}, {"type": "node", "name": "results[i - offset] = IWeb3Entry(web3Entry).getNote(characterId,i)", "source_mapping": {"start": 2606, "length": 67, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [72], "starting_column": 13, "ending_column": 80}, "type_specific_fields": {"parent": {"type": "function", "name": "getNotesByCharacterId", "source_mapping": {"start": 2137, "length": 553, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "getNotesByCharacterId(uint256,uint256,uint256)"}}}}], "description": "Periphery.getNotesByCharacterId(uint256,uint256,uint256) (contracts/misc/Periphery.sol#60-74) has external calls inside a loop: results[i - offset] = IWeb3Entry(web3Entry).getNote(characterId,i) (contracts/misc/Periphery.sol#72)\n", "markdown": "[Periphery.getNotesByCharacterId(uint256,uint256,uint256)](contracts/misc/Periphery.sol#L60-L74) has external calls inside a loop: [results[i - offset] = IWeb3Entry(web3Entry).getNote(characterId,i)](contracts/misc/Periphery.sol#L72)\n", "first_markdown_element": "contracts/misc/Periphery.sol#L60-L74", "id": "0d1da440e47ea7b09e2f082e6c77a71496a850619802f7124ef834d96700b67b", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_exists", "source_mapping": {"start": 8346, "length": 155, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "_exists(uint256)"}}, {"type": "node", "name": "IWeb3Entry(web3Entry).getCharacter(characterId).characterId != 0", "source_mapping": {"start": 8423, "length": 71, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [230], "starting_column": 9, "ending_column": 80}, "type_specific_fields": {"parent": {"type": "function", "name": "_exists", "source_mapping": {"start": 8346, "length": 155, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "_exists(uint256)"}}}}], "description": "Periphery._exists(uint256) (contracts/misc/Periphery.sol#229-231) has external calls inside a loop: IWeb3Entry(web3Entry).getCharacter(characterId).characterId != 0 (contracts/misc/Periphery.sol#230)\n", "markdown": "[Periphery._exists(uint256)](contracts/misc/Periphery.sol#L229-L231) has external calls inside a loop: [IWeb3Entry(web3Entry).getCharacter(characterId).characterId != 0](contracts/misc/Periphery.sol#L230)\n", "first_markdown_element": "contracts/misc/Periphery.sol#L229-L231", "id": "72f901297c2559ce715ec2c3741b67a61e2c43de97c4460cecb2f6441324d1b5", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "getLinkingNotes", "source_mapping": {"start": 3534, "length": 553, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "getLinkingNotes(uint256,bytes32)"}}, {"type": "node", "name": "results[i] = IWeb3Entry(web3Entry).getNote(notes[i].characterId,notes[i].noteId)", "source_mapping": {"start": 3989, "length": 81, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [111], "starting_column": 13, "ending_column": 94}, "type_specific_fields": {"parent": {"type": "function", "name": "getLinkingNotes", "source_mapping": {"start": 3534, "length": 553, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Periphery", "source_mapping": {"start": 481, "length": 8022, "filename_relative": "contracts/misc/Periphery.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/misc/Periphery.sol", "filename_short": "contracts/misc/Periphery.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232], "starting_column": 1, "ending_column": 2}}, "signature": "getLinkingNotes(uint256,bytes32)"}}}}], "description": "Periphery.getLinkingNotes(uint256,bytes32) (contracts/misc/Periphery.sol#103-113) has external calls inside a loop: results[i] = IWeb3Entry(web3Entry).getNote(notes[i].characterId,notes[i].noteId) (contracts/misc/Periphery.sol#111)\n", "markdown": "[Periphery.getLinkingNotes(uint256,bytes32)](contracts/misc/Periphery.sol#L103-L113) has external calls inside a loop: [results[i] = IWeb3Entry(web3Entry).getNote(notes[i].characterId,notes[i].noteId)](contracts/misc/Periphery.sol#L111)\n", "first_markdown_element": "contracts/misc/Periphery.sol#L103-L113", "id": "0ba51037a9024de6de7c4c73db3c3f8ecd7a2fb72fe9e253be4c770e345557f2", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "SET_LINK_MODULE_FOR_NOTE", "source_mapping": {"start": 2647, "length": 54, "filename_relative": "contracts/libraries/OP.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/libraries/OP.sol", "filename_short": "contracts/libraries/OP.sol", "is_dependency": false, "lines": [73], "starting_column": 5, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "contract", "name": "OP", "source_mapping": {"start": 1240, "length": 3040, "filename_relative": "contracts/libraries/OP.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/libraries/OP.sol", "filename_short": "contracts/libraries/OP.sol", "is_dependency": false, "lines": [42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106], "starting_column": 1, "ending_column": 2}}}}, {"type": "variable", "name": "SET_MINT_MODULE_FOR_NOTE", "source_mapping": {"start": 2771, "length": 54, "filename_relative": "contracts/libraries/OP.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/libraries/OP.sol", "filename_short": "contracts/libraries/OP.sol", "is_dependency": false, "lines": [75], "starting_column": 5, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "contract", "name": "OP", "source_mapping": {"start": 1240, "length": 3040, "filename_relative": "contracts/libraries/OP.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/libraries/OP.sol", "filename_short": "contracts/libraries/OP.sol", "is_dependency": false, "lines": [42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106], "starting_column": 1, "ending_column": 2}}}}], "description": "Variable OP.SET_LINK_MODULE_FOR_NOTE (contracts/libraries/OP.sol#73) is too similar to OP.SET_MINT_MODULE_FOR_NOTE (contracts/libraries/OP.sol#75)\n", "markdown": "Variable [OP.SET_LINK_MODULE_FOR_NOTE](contracts/libraries/OP.sol#L73) is too similar to [OP.SET_MINT_MODULE_FOR_NOTE](contracts/libraries/OP.sol#L75)\n", "first_markdown_element": "contracts/libraries/OP.sol#L73", "id": "4ed2d10da7d6d58a48917616818dce4cdd2e36db62bf89f98ad8e1102bc7f947", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_currentTakeOver", "source_mapping": {"start": 1526, "length": 53, "filename_relative": "contracts/storage/LinklistStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/LinklistStorage.sol", "filename_short": "contracts/storage/LinklistStorage.sol", "is_dependency": false, "lines": [39], "starting_column": 5, "ending_column": 58}, "type_specific_fields": {"parent": {"type": "contract", "name": "LinklistStorage", "source_mapping": {"start": 235, "length": 1790, "filename_relative": "contracts/storage/LinklistStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/LinklistStorage.sol", "filename_short": "contracts/storage/LinklistStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14136, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472], "starting_column": 1, "ending_column": 2}}], "description": "LinklistStorage._currentTakeOver (contracts/storage/LinklistStorage.sol#39) is never used in Linklist (contracts/Linklist.sol#22-472)\n", "markdown": "[LinklistStorage._currentTakeOver](contracts/storage/LinklistStorage.sol#L39) is never used in [Linklist](contracts/Linklist.sol#L22-L472)\n", "first_markdown_element": "contracts/storage/LinklistStorage.sol#L39", "id": "21d5fffdf20046eadde4e840ddbe255a59b274ed39a017f4b3b71163bb9a4391", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_operatorByCharacter", "source_mapping": {"start": 281, "length": 57, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [9], "starting_column": 5, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 199, "length": 843, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}], "description": "Web3EntryExtendStorage._operatorByCharacter (contracts/storage/Web3EntryExtendStorage.sol#9) is never used in Web3Entry (contracts/Web3Entry.sol#32-869)\n", "markdown": "[Web3EntryExtendStorage._operatorByCharacter](contracts/storage/Web3EntryExtendStorage.sol#L9) is never used in [Web3Entry](contracts/Web3Entry.sol#L32-L869)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L9", "id": "7f5866f4808f25890d74be36d7f30c56324a3ca57af562b46d52da2008a11b03", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_attachedLinklists", "source_mapping": {"start": 536, "length": 75, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [16], "starting_column": 5, "ending_column": 80}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getLinklistId", "source_mapping": {"start": 21800, "length": 190, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [645, 646, 647, 648, 649, 650], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getLinklistId(uint256,bytes32)"}}], "description": "Web3EntryStorage._attachedLinklists (contracts/storage/Web3EntryStorage.sol#16) is never initialized. It is used in:\n\t- Web3Entry.getLinklistId(uint256,bytes32) (contracts/Web3Entry.sol#645-650)\n", "markdown": "[Web3EntryStorage._attachedLinklists](contracts/storage/Web3EntryStorage.sol#L16) is never initialized. It is used in:\n\t- [Web3Entry.getLinklistId(uint256,bytes32)](contracts/Web3Entry.sol#L645-L650)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L16", "id": "748cdbc8981a2dcae47e730d745a51efcc7247e51b4eb2d73d62fb1efe26d2a9", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_noteByIdByCharacter", "source_mapping": {"start": 655, "length": 84, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [19], "starting_column": 5, "ending_column": 89}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getNote", "source_mapping": {"start": 21385, "length": 196, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [632, 633, 634, 635, 636, 637], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getNote(uint256,uint256)"}}], "description": "Web3EntryStorage._noteByIdByCharacter (contracts/storage/Web3EntryStorage.sol#19) is never initialized. It is used in:\n\t- Web3Entry.getNote(uint256,uint256) (contracts/Web3Entry.sol#632-637)\n", "markdown": "[Web3EntryStorage._noteByIdByCharacter](contracts/storage/Web3EntryStorage.sol#L19) is never initialized. It is used in:\n\t- [Web3Entry.getNote(uint256,uint256)](contracts/Web3Entry.sol#L632-L637)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L19", "id": "f9ce4dca74417b3721cec3a1db161525025c3a75b11401ac91ca17192e7c8065", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_operatorsPermissionBitMap", "source_mapping": {"start": 691, "length": 83, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [16], "starting_column": 5, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getOperatorPermissions", "source_mapping": {"start": 19101, "length": 207, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [568, 569, 570, 571, 572, 573], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getOperatorPermissions(uint256,address)"}}, {"type": "function", "name": "_isOperatorAllowedForNote", "source_mapping": {"start": 25714, "length": 601, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "_isOperatorAllowedForNote(uint256,uint256,address)"}}, {"type": "function", "name": "_validateCallerPermission", "source_mapping": {"start": 26321, "length": 553, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "_validateCallerPermission(uint256,uint256)"}}], "description": "Web3EntryExtendStorage._operatorsPermissionBitMap (contracts/storage/Web3EntryExtendStorage.sol#16) is never initialized. It is used in:\n\t- Web3Entry.getOperatorPermissions(uint256,address) (contracts/Web3Entry.sol#568-573)\n\t- Web3Entry._isOperatorAllowedForNote(uint256,uint256,address) (contracts/Web3Entry.sol#769-786)\n\t- Web3Entry._validateCallerPermission(uint256,uint256) (contracts/Web3Entry.sol#788-801)\n", "markdown": "[Web3EntryExtendStorage._operatorsPermissionBitMap](contracts/storage/Web3EntryExtendStorage.sol#L16) is never initialized. It is used in:\n\t- [Web3Entry.getOperatorPermissions(uint256,address)](contracts/Web3Entry.sol#L568-L573)\n\t- [Web3Entry._isOperatorAllowedForNote(uint256,uint256,address)](contracts/Web3Entry.sol#L769-L786)\n\t- [Web3Entry._validateCallerPermission(uint256,uint256)](contracts/Web3Entry.sol#L788-L801)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L16", "id": "695293b286d6933fe59f7a8be9018dab9a93514e109182069982b3c59f6e19c8", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_operators4Note", "source_mapping": {"start": 867, "length": 89, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [19], "starting_column": 5, "ending_column": 94}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getOperators4Note", "source_mapping": {"start": 19345, "length": 367, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [576, 577, 578, 579, 580, 581, 582], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getOperators4Note(uint256,uint256)"}}, {"type": "function", "name": "_isOperatorAllowedForNote", "source_mapping": {"start": 25714, "length": 601, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "_isOperatorAllowedForNote(uint256,uint256,address)"}}], "description": "Web3EntryExtendStorage._operators4Note (contracts/storage/Web3EntryExtendStorage.sol#19) is never initialized. It is used in:\n\t- Web3Entry.getOperators4Note(uint256,uint256) (contracts/Web3Entry.sol#576-582)\n\t- Web3Entry._isOperatorAllowedForNote(uint256,uint256,address) (contracts/Web3Entry.sol#769-786)\n", "markdown": "[Web3EntryExtendStorage._operators4Note](contracts/storage/Web3EntryExtendStorage.sol#L19) is never initialized. It is used in:\n\t- [Web3Entry.getOperators4Note(uint256,uint256)](contracts/Web3Entry.sol#L576-L582)\n\t- [Web3Entry._isOperatorAllowedForNote(uint256,uint256,address)](contracts/Web3Entry.sol#L769-L786)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L19", "id": "e79fe30553cf1cc6013cb5930ccbc4956f9bd92c70eaaf2b7e0b2a2d1fa3f44d", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_sigNonces", "source_mapping": {"start": 1045, "length": 47, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [23], "starting_column": 5, "ending_column": 52}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "nonces", "source_mapping": {"start": 22529, "length": 113, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [668, 669, 670], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "nonces(address)"}}], "description": "Web3EntryExtendStorage._sigNonces (contracts/storage/Web3EntryExtendStorage.sol#23) is never initialized. It is used in:\n\t- Web3Entry.nonces(address) (contracts/Web3Entry.sol#668-670)\n", "markdown": "[Web3EntryExtendStorage._sigNonces](contracts/storage/Web3EntryExtendStorage.sol#L23) is never initialized. It is used in:\n\t- [Web3Entry.nonces(address)](contracts/Web3Entry.sol#L668-L670)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L23", "id": "ea539ab94d36d7bf56aeb4711b165d1fb26445c79039de4cd2478b107c4131d6", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_newbieVilla", "source_mapping": {"start": 974, "length": 29, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [21], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "variable", "name": "newbieVilla_", "source_mapping": {"start": 2230, "length": 20, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [63], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 2052, "length": 489, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 1361, "length": 27532, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(string,string,address,address,address,address)"}}}}], "description": "Variable Web3EntryExtendStorage._newbieVilla (contracts/storage/Web3EntryExtendStorage.sol#21) is too similar to Web3Entry.initialize(string,string,address,address,address,address).newbieVilla_ (contracts/Web3Entry.sol#63)\n", "markdown": "Variable [Web3EntryExtendStorage._newbieVilla](contracts/storage/Web3EntryExtendStorage.sol#L21) is too similar to [Web3Entry.initialize(string,string,address,address,address,address).newbieVilla_](contracts/Web3Entry.sol#L63)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L21", "id": "97b0ac95e9d0f8882fccd9a415fedccf86a5a6be103d42d5be4268bd1db3712a", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_attachedLinklists", "source_mapping": {"start": 536, "length": 75, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [16], "starting_column": 5, "ending_column": 80}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getLinklistId", "source_mapping": {"start": 21804, "length": 190, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [645, 646, 647, 648, 649, 650], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getLinklistId(uint256,bytes32)"}}], "description": "Web3EntryStorage._attachedLinklists (contracts/storage/Web3EntryStorage.sol#16) is never initialized. It is used in:\n\t- Web3EntryBase.getLinklistId(uint256,bytes32) (contracts/Web3EntryBase.sol#645-650)\n", "markdown": "[Web3EntryStorage._attachedLinklists](contracts/storage/Web3EntryStorage.sol#L16) is never initialized. It is used in:\n\t- [Web3EntryBase.getLinklistId(uint256,bytes32)](contracts/Web3EntryBase.sol#L645-L650)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L16", "id": "947375eecbc491c5be0d97578bcbfac1889248ca0ffddfc362599783d854fb1f", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_noteByIdByCharacter", "source_mapping": {"start": 655, "length": 84, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [19], "starting_column": 5, "ending_column": 89}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getNote", "source_mapping": {"start": 21389, "length": 196, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [632, 633, 634, 635, 636, 637], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getNote(uint256,uint256)"}}], "description": "Web3EntryStorage._noteByIdByCharacter (contracts/storage/Web3EntryStorage.sol#19) is never initialized. It is used in:\n\t- Web3EntryBase.getNote(uint256,uint256) (contracts/Web3EntryBase.sol#632-637)\n", "markdown": "[Web3EntryStorage._noteByIdByCharacter](contracts/storage/Web3EntryStorage.sol#L19) is never initialized. It is used in:\n\t- [Web3EntryBase.getNote(uint256,uint256)](contracts/Web3EntryBase.sol#L632-L637)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L19", "id": "d4750982bb3527b40de60df0b1701fbf8bca8748211a7631fb9feca802c75256", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_operatorsPermissionBitMap", "source_mapping": {"start": 691, "length": 83, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [16], "starting_column": 5, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getOperatorPermissions", "source_mapping": {"start": 19105, "length": 207, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [568, 569, 570, 571, 572, 573], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getOperatorPermissions(uint256,address)"}}, {"type": "function", "name": "_isOperatorAllowedForNote", "source_mapping": {"start": 25718, "length": 601, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "_isOperatorAllowedForNote(uint256,uint256,address)"}}, {"type": "function", "name": "_validateCallerPermission", "source_mapping": {"start": 26325, "length": 553, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "_validateCallerPermission(uint256,uint256)"}}], "description": "Web3EntryExtendStorage._operatorsPermissionBitMap (contracts/storage/Web3EntryExtendStorage.sol#16) is never initialized. It is used in:\n\t- Web3EntryBase.getOperatorPermissions(uint256,address) (contracts/Web3EntryBase.sol#568-573)\n\t- Web3EntryBase._isOperatorAllowedForNote(uint256,uint256,address) (contracts/Web3EntryBase.sol#769-786)\n\t- Web3EntryBase._validateCallerPermission(uint256,uint256) (contracts/Web3EntryBase.sol#788-801)\n", "markdown": "[Web3EntryExtendStorage._operatorsPermissionBitMap](contracts/storage/Web3EntryExtendStorage.sol#L16) is never initialized. It is used in:\n\t- [Web3EntryBase.getOperatorPermissions(uint256,address)](contracts/Web3EntryBase.sol#L568-L573)\n\t- [Web3EntryBase._isOperatorAllowedForNote(uint256,uint256,address)](contracts/Web3EntryBase.sol#L769-L786)\n\t- [Web3EntryBase._validateCallerPermission(uint256,uint256)](contracts/Web3EntryBase.sol#L788-L801)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L16", "id": "f9cf2a00732748c9745187f5621348f96e5fb8bcf3951a1117320eedf935085c", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_operators4Note", "source_mapping": {"start": 867, "length": 89, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [19], "starting_column": 5, "ending_column": 94}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getOperators4Note", "source_mapping": {"start": 19349, "length": 367, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [576, 577, 578, 579, 580, 581, 582], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "getOperators4Note(uint256,uint256)"}}, {"type": "function", "name": "_isOperatorAllowedForNote", "source_mapping": {"start": 25718, "length": 601, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "_isOperatorAllowedForNote(uint256,uint256,address)"}}], "description": "Web3EntryExtendStorage._operators4Note (contracts/storage/Web3EntryExtendStorage.sol#19) is never initialized. It is used in:\n\t- Web3EntryBase.getOperators4Note(uint256,uint256) (contracts/Web3EntryBase.sol#576-582)\n\t- Web3EntryBase._isOperatorAllowedForNote(uint256,uint256,address) (contracts/Web3EntryBase.sol#769-786)\n", "markdown": "[Web3EntryExtendStorage._operators4Note](contracts/storage/Web3EntryExtendStorage.sol#L19) is never initialized. It is used in:\n\t- [Web3EntryBase.getOperators4Note(uint256,uint256)](contracts/Web3EntryBase.sol#L576-L582)\n\t- [Web3EntryBase._isOperatorAllowedForNote(uint256,uint256,address)](contracts/Web3EntryBase.sol#L769-L786)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L19", "id": "7a8ef8f1e9e93b7aef2e5d68bd7038f9a7f072dbaf4bb16174ba2314ef67e8fb", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_sigNonces", "source_mapping": {"start": 1045, "length": 47, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [23], "starting_column": 5, "ending_column": 52}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "nonces", "source_mapping": {"start": 22533, "length": 113, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [668, 669, 670], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1361, "length": 27536, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869], "starting_column": 1, "ending_column": 2}}, "signature": "nonces(address)"}}], "description": "Web3EntryExtendStorage._sigNonces (contracts/storage/Web3EntryExtendStorage.sol#23) is never initialized. It is used in:\n\t- Web3EntryBase.nonces(address) (contracts/Web3EntryBase.sol#668-670)\n", "markdown": "[Web3EntryExtendStorage._sigNonces](contracts/storage/Web3EntryExtendStorage.sol#L23) is never initialized. It is used in:\n\t- [Web3EntryBase.nonces(address)](contracts/Web3EntryBase.sol#L668-L670)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L23", "id": "dd7f92b170dbf0963ddf81e510301e446a0d27bec19d7cd18fd3ef2a81cbb05d", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "balanceOf", "source_mapping": {"start": 14298, "length": 380, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [454, 455, 456, 457, 458, 459, 460], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14177, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473], "starting_column": 1, "ending_column": 2}}, "signature": "balanceOf(address)"}}, {"type": "node", "name": "characterId = IERC721Enumerable(Web3Entry).tokenOfOwnerByIndex(account,i)", "source_mapping": {"start": 14524, "length": 82, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [457], "starting_column": 13, "ending_column": 95}, "type_specific_fields": {"parent": {"type": "function", "name": "balanceOf", "source_mapping": {"start": 14298, "length": 380, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [454, 455, 456, 457, 458, 459, 460], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14177, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473], "starting_column": 1, "ending_column": 2}}, "signature": "balanceOf(address)"}}}}], "description": "Linklist.balanceOf(address) (contracts/Linklist.sol#454-460) has external calls inside a loop: characterId = IERC721Enumerable(Web3Entry).tokenOfOwnerByIndex(account,i) (contracts/Linklist.sol#457)\n", "markdown": "[Linklist.balanceOf(address)](contracts/Linklist.sol#L454-L460) has external calls inside a loop: [characterId = IERC721Enumerable(Web3Entry).tokenOfOwnerByIndex(account,i)](contracts/Linklist.sol#L457)\n", "first_markdown_element": "contracts/Linklist.sol#L454-L460", "id": "55efee8b5c868db649feda3985208d445bf0d0111ec520dd222cce5d335a325d", "check": "calls-loop", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_linkingCharacterLinks", "source_mapping": {"start": 1360, "length": 81, "filename_relative": "contracts/storage/LinklistStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/LinklistStorage.sol", "filename_short": "contracts/storage/LinklistStorage.sol", "is_dependency": false, "lines": [35], "starting_column": 5, "ending_column": 86}, "type_specific_fields": {"parent": {"type": "contract", "name": "LinklistStorage", "source_mapping": {"start": 278, "length": 1836, "filename_relative": "contracts/storage/LinklistStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/LinklistStorage.sol", "filename_short": "contracts/storage/LinklistStorage.sol", "is_dependency": false, "lines": [9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14177, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473], "starting_column": 1, "ending_column": 2}}], "description": "LinklistStorage._linkingCharacterLinks (contracts/storage/LinklistStorage.sol#35) is never used in Linklist (contracts/Linklist.sol#22-473)\n", "markdown": "[LinklistStorage._linkingCharacterLinks](contracts/storage/LinklistStorage.sol#L35) is never used in [Linklist](contracts/Linklist.sol#L22-L473)\n", "first_markdown_element": "contracts/storage/LinklistStorage.sol#L35", "id": "101ded90e248337284bfa933187efb0a496178253cc19eda5df78ba5774fbeba", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_linkingCharacterLinkKeys", "source_mapping": {"start": 1957, "length": 79, "filename_relative": "contracts/storage/LinklistStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/LinklistStorage.sol", "filename_short": "contracts/storage/LinklistStorage.sol", "is_dependency": false, "lines": [48], "starting_column": 5, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "contract", "name": "LinklistStorage", "source_mapping": {"start": 278, "length": 1836, "filename_relative": "contracts/storage/LinklistStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/LinklistStorage.sol", "filename_short": "contracts/storage/LinklistStorage.sol", "is_dependency": false, "lines": [9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Linklist", "source_mapping": {"start": 888, "length": 14177, "filename_relative": "contracts/Linklist.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Linklist.sol", "filename_short": "contracts/Linklist.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473], "starting_column": 1, "ending_column": 2}}], "description": "LinklistStorage._linkingCharacterLinkKeys (contracts/storage/LinklistStorage.sol#48) is never used in Linklist (contracts/Linklist.sol#22-473)\n", "markdown": "[LinklistStorage._linkingCharacterLinkKeys](contracts/storage/LinklistStorage.sol#L48) is never used in [Linklist](contracts/Linklist.sol#L22-L473)\n", "first_markdown_element": "contracts/storage/LinklistStorage.sol#L48", "id": "360a60cb6cafaa86c2ee53fd1afad7bc00f3b4303dbd54e95b3bef1570a7de19", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_linkModules4Linklist", "source_mapping": {"start": 892, "length": 58, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [26], "starting_column": 5, "ending_column": 63}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 154, "length": 40, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [7, 8, 9], "starting_column": 1, "ending_column": 2}}], "description": "Web3EntryStorage._linkModules4Linklist (contracts/storage/Web3EntryStorage.sol#26) is never used in Web3Entry (contracts/Web3Entry.sol#7-9)\n", "markdown": "[Web3EntryStorage._linkModules4Linklist](contracts/storage/Web3EntryStorage.sol#L26) is never used in [Web3Entry](contracts/Web3Entry.sol#L7-L9)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L26", "id": "14546975e737c9971df9faf18a17e9acaa4c8bf5846a065c8c1e45ff785724b2", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_linkModules4ERC721", "source_mapping": {"start": 1162, "length": 76, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [31], "starting_column": 5, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 154, "length": 40, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [7, 8, 9], "starting_column": 1, "ending_column": 2}}], "description": "Web3EntryStorage._linkModules4ERC721 (contracts/storage/Web3EntryStorage.sol#31) is never used in Web3Entry (contracts/Web3Entry.sol#7-9)\n", "markdown": "[Web3EntryStorage._linkModules4ERC721](contracts/storage/Web3EntryStorage.sol#L31) is never used in [Web3Entry](contracts/Web3Entry.sol#L7-L9)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L31", "id": "65af4017f5f25254942cddd216ea0fb1e85b029300e4cb03eaac151afb53aeaa", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_linkModules4Address", "source_mapping": {"start": 1282, "length": 57, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [34], "starting_column": 5, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryStorage", "source_mapping": {"start": 155, "length": 1416, "filename_relative": "contracts/storage/Web3EntryStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryStorage.sol", "filename_short": "contracts/storage/Web3EntryStorage.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41], "starting_column": 1, "ending_column": 2}}}}, {"type": "contract", "name": "Web3Entry", "source_mapping": {"start": 154, "length": 40, "filename_relative": "contracts/Web3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3Entry.sol", "filename_short": "contracts/Web3Entry.sol", "is_dependency": false, "lines": [7, 8, 9], "starting_column": 1, "ending_column": 2}}], "description": "Web3EntryStorage._linkModules4Address (contracts/storage/Web3EntryStorage.sol#34) is never used in Web3Entry (contracts/Web3Entry.sol#7-9)\n", "markdown": "[Web3EntryStorage._linkModules4Address](contracts/storage/Web3EntryStorage.sol#L34) is never used in [Web3Entry](contracts/Web3Entry.sol#L7-L9)\n", "first_markdown_element": "contracts/storage/Web3EntryStorage.sol#L34", "id": "96a9766dcd2f1bb13b8311513e87202e163b475c8b716e8777d113a7838a43a8", "check": "unused-state", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_characterId", "source_mapping": {"start": 1104, "length": 29, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [22], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "MintNFT", "source_mapping": {"start": 1036, "length": 2955, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118], "starting_column": 1, "ending_column": 2}}}}, {"type": "variable", "name": "characterId_", "source_mapping": {"start": 1621, "length": 20, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [40], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 1592, "length": 431, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MintNFT", "source_mapping": {"start": 1036, "length": 2955, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(uint256,uint256,address,string,string)"}}}}], "description": "Variable MintNFT._characterId (contracts/MintNFT.sol#22) is too similar to MintNFT.initialize(uint256,uint256,address,string,string).characterId_ (contracts/MintNFT.sol#40)\n", "markdown": "Variable [MintNFT._characterId](contracts/MintNFT.sol#L22) is too similar to [MintNFT.initialize(uint256,uint256,address,string,string).characterId_](contracts/MintNFT.sol#L40)\n", "first_markdown_element": "contracts/MintNFT.sol#L22", "id": "e4017c0b2af7352fc6ea8d8d991e75a1c166767aee6aa13a99b92a4acd444e8d", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_characterId", "source_mapping": {"start": 1104, "length": 29, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [22], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "MintNFT", "source_mapping": {"start": 1036, "length": 2955, "filename_relative": "contracts/MintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/MintNFT.sol", "filename_short": "contracts/MintNFT.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118], "starting_column": 1, "ending_column": 2}}}}, {"type": "variable", "name": "characterId_", "source_mapping": {"start": 455, "length": 20, "filename_relative": "contracts/interfaces/IMintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/interfaces/IMintNFT.sol", "filename_short": "contracts/interfaces/IMintNFT.sol", "is_dependency": false, "lines": [15], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 426, "length": 182, "filename_relative": "contracts/interfaces/IMintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/interfaces/IMintNFT.sol", "filename_short": "contracts/interfaces/IMintNFT.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20], "starting_column": 5, "ending_column": 16}, "type_specific_fields": {"parent": {"type": "contract", "name": "IMintNFT", "source_mapping": {"start": 58, "length": 2316, "filename_relative": "contracts/interfaces/IMintNFT.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/interfaces/IMintNFT.sol", "filename_short": "contracts/interfaces/IMintNFT.sol", "is_dependency": false, "lines": [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(uint256,uint256,address,string,string)"}}}}], "description": "Variable MintNFT._characterId (contracts/MintNFT.sol#22) is too similar to IMintNFT.initialize(uint256,uint256,address,string,string).characterId_ (contracts/interfaces/IMintNFT.sol#15)\n", "markdown": "Variable [MintNFT._characterId](contracts/MintNFT.sol#L22) is too similar to [IMintNFT.initialize(uint256,uint256,address,string,string).characterId_](contracts/interfaces/IMintNFT.sol#L15)\n", "first_markdown_element": "contracts/MintNFT.sol#L22", "id": "16f4e138d7fedbf6e78ffd185d79b867c5270828994fdec5b4dc18c170e9dec7", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_newbieVilla", "source_mapping": {"start": 974, "length": 29, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [21], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "variable", "name": "newbieVilla_", "source_mapping": {"start": 792, "length": 20, "filename_relative": "contracts/interfaces/IWeb3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/interfaces/IWeb3Entry.sol", "filename_short": "contracts/interfaces/IWeb3Entry.sol", "is_dependency": false, "lines": [23], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 614, "length": 214, "filename_relative": "contracts/interfaces/IWeb3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/interfaces/IWeb3Entry.sol", "filename_short": "contracts/interfaces/IWeb3Entry.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 5, "ending_column": 16}, "type_specific_fields": {"parent": {"type": "contract", "name": "IWeb3Entry", "source_mapping": {"start": 113, "length": 27085, "filename_relative": "contracts/interfaces/IWeb3Entry.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/interfaces/IWeb3Entry.sol", "filename_short": "contracts/interfaces/IWeb3Entry.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(string,string,address,address,address,address)"}}}}], "description": "Variable Web3EntryExtendStorage._newbieVilla (contracts/storage/Web3EntryExtendStorage.sol#21) is too similar to IWeb3Entry.initialize(string,string,address,address,address,address).newbieVilla_ (contracts/interfaces/IWeb3Entry.sol#23)\n", "markdown": "Variable [Web3EntryExtendStorage._newbieVilla](contracts/storage/Web3EntryExtendStorage.sol#L21) is too similar to [IWeb3Entry.initialize(string,string,address,address,address,address).newbieVilla_](contracts/interfaces/IWeb3Entry.sol#L23)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L21", "id": "787a96c0f2a13199ae6d4670d88ebf74d73139e87259b13eb63792697f175e31", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_newbieVilla", "source_mapping": {"start": 974, "length": 29, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [21], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryExtendStorage", "source_mapping": {"start": 242, "length": 889, "filename_relative": "contracts/storage/Web3EntryExtendStorage.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/storage/Web3EntryExtendStorage.sol", "filename_short": "contracts/storage/Web3EntryExtendStorage.sol", "is_dependency": false, "lines": [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 2}}}}, {"type": "variable", "name": "newbieVilla_", "source_mapping": {"start": 2213, "length": 20, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [62], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 2035, "length": 489, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Web3EntryBase", "source_mapping": {"start": 1641, "length": 35492, "filename_relative": "contracts/Web3EntryBase.sol", "filename_absolute": "/Users/zhuliting/github/Crossbell-Contracts/contracts/Web3EntryBase.sol", "filename_short": "contracts/Web3EntryBase.sol", "is_dependency": false, "lines": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(string,string,address,address,address,address)"}}}}], "description": "Variable Web3EntryExtendStorage._newbieVilla (contracts/storage/Web3EntryExtendStorage.sol#21) is too similar to Web3EntryBase.initialize(string,string,address,address,address,address).newbieVilla_ (contracts/Web3EntryBase.sol#62)\n", "markdown": "Variable [Web3EntryExtendStorage._newbieVilla](contracts/storage/Web3EntryExtendStorage.sol#L21) is too similar to [Web3EntryBase.initialize(string,string,address,address,address,address).newbieVilla_](contracts/Web3EntryBase.sol#L62)\n", "first_markdown_element": "contracts/storage/Web3EntryExtendStorage.sol#L21", "id": "1cc5e0eb34690973dd790d26660d1ec6bd581d60dec57e7dbae67cb10ed84fcc", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}] \ No newline at end of file +[{"elements": [{"type": "function", "name": "acceptBid", "source_mapping": {"start": 8845, "length": 1173, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MarketPlace", "source_mapping": {"start": 1345, "length": 14097, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504], "starting_column": 1, "ending_column": 2}}, "signature": "acceptBid(uint256)"}}, {"type": "node", "name": "require(bool,string)(order.deadline >= _now(),BidExpiredOrNotExists)", "source_mapping": {"start": 9022, "length": 58, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [288], "starting_column": 9, "ending_column": 67}, "type_specific_fields": {"parent": {"type": "function", "name": "acceptBid", "source_mapping": {"start": 8845, "length": 1173, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MarketPlace", "source_mapping": {"start": 1345, "length": 14097, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504], "starting_column": 1, "ending_column": 2}}, "signature": "acceptBid(uint256)"}}}}], "description": "MarketPlace.acceptBid(uint256) (contracts/MarketPlace.sol#285-323) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- require(bool,string)(order.deadline >= _now(),BidExpiredOrNotExists) (contracts/MarketPlace.sol#288)\n", "markdown": "[MarketPlace.acceptBid(uint256)](contracts/MarketPlace.sol#L285-L323) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [require(bool,string)(order.deadline >= _now(),BidExpiredOrNotExists)](contracts/MarketPlace.sol#L288)\n", "first_markdown_element": "contracts/MarketPlace.sol#L285-L323", "id": "40f171992efee7d0705087eebc2faa9586e98c1e96481fe5417c93ab103d5edb", "check": "timestamp", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_acceptAsk", "source_mapping": {"start": 11924, "length": 1237, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MarketPlace", "source_mapping": {"start": 1345, "length": 14097, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504], "starting_column": 1, "ending_column": 2}}, "signature": "_acceptAsk(uint256,address,uint256)"}}, {"type": "node", "name": "require(bool,string)(askOrder.deadline >= _now(),AskExpiredOrNotExists)", "source_mapping": {"start": 12124, "length": 61, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [397], "starting_column": 9, "ending_column": 70}, "type_specific_fields": {"parent": {"type": "function", "name": "_acceptAsk", "source_mapping": {"start": 11924, "length": 1237, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MarketPlace", "source_mapping": {"start": 1345, "length": 14097, "filename_relative": "contracts/MarketPlace.sol", "filename_absolute": "/Users/zhuliting/github/crossbell-marketplace-contracts/contracts/MarketPlace.sol", "filename_short": "contracts/MarketPlace.sol", "is_dependency": false, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504], "starting_column": 1, "ending_column": 2}}, "signature": "_acceptAsk(uint256,address,uint256)"}}}}], "description": "MarketPlace._acceptAsk(uint256,address,uint256) (contracts/MarketPlace.sol#391-434) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- require(bool,string)(askOrder.deadline >= _now(),AskExpiredOrNotExists) (contracts/MarketPlace.sol#397)\n", "markdown": "[MarketPlace._acceptAsk(uint256,address,uint256)](contracts/MarketPlace.sol#L391-L434) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [require(bool,string)(askOrder.deadline >= _now(),AskExpiredOrNotExists)](contracts/MarketPlace.sol#L397)\n", "first_markdown_element": "contracts/MarketPlace.sol#L391-L434", "id": "5cdba10ac2ad3e05385c3240625b5d253bf795e856e7defad5ec0ccea409b707", "check": "timestamp", "impact": "Low", "confidence": "Medium"}] \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 5a9dbe2..299ffbe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1106,17 +1106,10 @@ "@types/sinon-chai" "^3.2.3" "@types/web3" "1.0.19" -"@openzeppelin/contracts@4.8.1": - version "4.8.1" - resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.8.1.tgz#709cfc4bbb3ca9f4460d60101f15dac6b7a2d5e4" - integrity sha512-xQ6eUZl+RDyb/FiZe1h+U7qr/f4p/SrTSQcTPH2bjur3C5DbuW/zFgCU/b1P/xcIaEqJep+9ju4xDRi3rmChdQ== - -"@primitivefi/hardhat-dodoc@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@primitivefi/hardhat-dodoc/-/hardhat-dodoc-0.2.3.tgz#76aebbfa70de2d6454af29e166b1430583b54c5c" - integrity sha512-ver9uHa79LTDTeebOKZ/eOVRL/FP1k0s0x/5Bo/8ZaDdLWFVClKqZyZYVjjW4CJqTPCt8uU9b9p71P2vzH4O9A== - dependencies: - squirrelly "^8.0.8" +"@openzeppelin/contracts@4.9.0": + version "4.9.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.9.0.tgz#683f33b6598970051bc5f0806fd8660da9e018dd" + integrity sha512-DUP74AFGKlic2sQb/CmgrN2aUPMFGxRrmCTUxLHsiU2RzwWqVuMPZBxiAyvlff6Pea77uylAX6B5x9W6evEbhA== "@resolver-engine/core@^0.3.3": version "0.3.3" @@ -8295,11 +8288,6 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -squirrelly@^8.0.8: - version "8.0.8" - resolved "https://registry.yarnpkg.com/squirrelly/-/squirrelly-8.0.8.tgz#d6704650b2170b8040d5de5bff9fa69cb62b5e0f" - integrity sha512-7dyZJ9Gw86MmH0dYLiESsjGOTj6KG8IWToTaqBuB6LwPI+hyNb6mbQaZwrfnAQ4cMDnSWMUvX/zAYDLTSWLk/w== - sshpk@^1.7.0: version "1.17.0" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5"