forked from agregkit/argent-contracts
-
Notifications
You must be signed in to change notification settings - Fork 1
/
slither.db.json
1 lines (1 loc) · 77 KB
/
slither.db.json
1
[{"elements": [{"type": "function", "name": "invoke", "source_mapping": {"start": 4382, "length": 501, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "invoke(address,uint256,bytes)"}}, {"type": "node", "name": "(success,_result) = _target.call{value: _value}(_data)", "source_mapping": {"start": 4533, "length": 55, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [128], "starting_column": 9, "ending_column": 64}, "type_specific_fields": {"parent": {"type": "function", "name": "invoke", "source_mapping": {"start": 4382, "length": 501, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "invoke(address,uint256,bytes)"}}}}], "description": "BaseWallet.invoke(address,uint256,bytes) (wallet/BaseWallet.sol#126-137) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success,_result) = _target.call{value: _value}(_data) (wallet/BaseWallet.sol#128)\n", "markdown": "[BaseWallet.invoke(address,uint256,bytes)](contracts/wallet/BaseWallet.sol#L126-L137) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success,_result) = _target.call{value: _value}(_data)](contracts/wallet/BaseWallet.sol#L128)\n", "id": "8aee1fb6153c795b58fc391cbc7c6572df4ca6f9d9fbde02db9d0730525c360d", "check": "arbitrary-send", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "newTimelockPeriod", "source_mapping": {"start": 965, "length": 31, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.sol", "is_dependency": false, "lines": [27], "starting_column": 5, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "contract", "name": "DappRegistry", "source_mapping": {"start": 829, "length": 12581, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.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], "starting_column": 1, "ending_column": 0}}}}], "description": "DappRegistry.newTimelockPeriod (infrastructure/DappRegistry.sol#27) should be constant\n", "markdown": "[DappRegistry.newTimelockPeriod](contracts/infrastructure/DappRegistry.sol#L27) should be constant\n", "id": "b975b51e70b649a20a7a04c0b25bb78a65753f7cc24ea44513e9960e857435f7", "check": "constable-states", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "variable", "name": "timelockPeriodChangeAfter", "source_mapping": {"start": 1058, "length": 39, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.sol", "is_dependency": false, "lines": [29], "starting_column": 5, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "contract", "name": "DappRegistry", "source_mapping": {"start": 829, "length": 12581, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.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], "starting_column": 1, "ending_column": 0}}}}], "description": "DappRegistry.timelockPeriodChangeAfter (infrastructure/DappRegistry.sol#29) should be constant\n", "markdown": "[DappRegistry.timelockPeriodChangeAfter](contracts/infrastructure/DappRegistry.sol#L29) should be constant\n", "id": "9a81fceca804142b27af2d467334401e8802b16e7e3276ca9944d4e90f96c0b0", "check": "constable-states", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "setAddr", "source_mapping": {"start": 1665, "length": 159, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [48, 49, 50, 51], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentENSResolver", "source_mapping": {"start": 1035, "length": 2159, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "setAddr(bytes32,address)"}}], "description": "setAddr(bytes32,address) should be declared external:\n\t- ArgentENSResolver.setAddr(bytes32,address) (infrastructure/ens/ArgentENSResolver.sol#48-51)\n", "markdown": "setAddr(bytes32,address) should be declared external:\n\t- [ArgentENSResolver.setAddr(bytes32,address)](contracts/infrastructure/ens/ArgentENSResolver.sol#L48-L51)\n", "id": "341d0bf835f749a44100bb312b2c486a382421ca0f91d91edffa87178b1aaab1", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "setName", "source_mapping": {"start": 1997, "length": 165, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [58, 59, 60, 61], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentENSResolver", "source_mapping": {"start": 1035, "length": 2159, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "setName(bytes32,string)"}}], "description": "setName(bytes32,string) should be declared external:\n\t- ArgentENSResolver.setName(bytes32,string) (infrastructure/ens/ArgentENSResolver.sol#58-61)\n", "markdown": "setName(bytes32,string) should be declared external:\n\t- [ArgentENSResolver.setName(bytes32,string)](contracts/infrastructure/ens/ArgentENSResolver.sol#L58-L61)\n", "id": "9a8e2af93034ad3e26bf54a3e282317f9c1b7418586bf79eea9ebf3f79c6b007", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "addr", "source_mapping": {"start": 2327, "length": 111, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [68, 69, 70], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentENSResolver", "source_mapping": {"start": 1035, "length": 2159, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "addr(bytes32)"}}], "description": "addr(bytes32) should be declared external:\n\t- ArgentENSResolver.addr(bytes32) (infrastructure/ens/ArgentENSResolver.sol#68-70)\n", "markdown": "addr(bytes32) should be declared external:\n\t- [ArgentENSResolver.addr(bytes32)](contracts/infrastructure/ens/ArgentENSResolver.sol#L68-L70)\n", "id": "892cc271601739fa14b1c1265ca202bb4d07a83a71b16a2b1659f114e564035d", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "name", "source_mapping": {"start": 2605, "length": 117, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [77, 78, 79], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentENSResolver", "source_mapping": {"start": 1035, "length": 2159, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "name(bytes32)"}}], "description": "name(bytes32) should be declared external:\n\t- ArgentENSResolver.name(bytes32) (infrastructure/ens/ArgentENSResolver.sol#77-79)\n", "markdown": "name(bytes32) should be declared external:\n\t- [ArgentENSResolver.name(bytes32)](contracts/infrastructure/ens/ArgentENSResolver.sol#L77-L79)\n", "id": "da244ff73266331703edd04749026d3f82ae55b2a42bba8b08b0e50ddd8b5b95", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "supportsInterface", "source_mapping": {"start": 2982, "length": 209, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [86, 87, 88], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentENSResolver", "source_mapping": {"start": 1035, "length": 2159, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSResolver.sol", "filename_short": "infrastructure/ens/ArgentENSResolver.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "supportsInterface(bytes4)"}}], "description": "supportsInterface(bytes4) should be declared external:\n\t- ArgentENSResolver.supportsInterface(bytes4) (infrastructure/ens/ArgentENSResolver.sol#86-88)\n", "markdown": "supportsInterface(bytes4) should be declared external:\n\t- [ArgentENSResolver.supportsInterface(bytes4)](contracts/infrastructure/ens/ArgentENSResolver.sol#L86-L88)\n", "id": "d85de6068d5cb9fe1539e925323619b7c6fd0ab84371a6d54ed9e220655d3508", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "getImplementations", "source_mapping": {"start": 4025, "length": 108, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_relative": "contracts/infrastructure/ArgentWalletDetector.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_short": "infrastructure/ArgentWalletDetector.sol", "is_dependency": false, "lines": [112, 113, 114], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentWalletDetector", "source_mapping": {"start": 1418, "length": 3331, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_relative": "contracts/infrastructure/ArgentWalletDetector.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_short": "infrastructure/ArgentWalletDetector.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "getImplementations()"}}], "description": "getImplementations() should be declared external:\n\t- ArgentWalletDetector.getImplementations() (infrastructure/ArgentWalletDetector.sol#112-114)\n", "markdown": "getImplementations() should be declared external:\n\t- [ArgentWalletDetector.getImplementations()](contracts/infrastructure/ArgentWalletDetector.sol#L112-L114)\n", "id": "6eaecf61b17287074dc9f11d7d60adedfb4c78edddada83e1076ed2b733be86b", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "getCodes", "source_mapping": {"start": 4205, "length": 88, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_relative": "contracts/infrastructure/ArgentWalletDetector.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_short": "infrastructure/ArgentWalletDetector.sol", "is_dependency": false, "lines": [119, 120, 121], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentWalletDetector", "source_mapping": {"start": 1418, "length": 3331, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_relative": "contracts/infrastructure/ArgentWalletDetector.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ArgentWalletDetector.sol", "filename_short": "infrastructure/ArgentWalletDetector.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "getCodes()"}}], "description": "getCodes() should be declared external:\n\t- ArgentWalletDetector.getCodes() (infrastructure/ArgentWalletDetector.sol#119-121)\n", "markdown": "getCodes() should be declared external:\n\t- [ArgentWalletDetector.getCodes()](contracts/infrastructure/ArgentWalletDetector.sol#L119-L121)\n", "id": "f75311b1c5c48c8adcf64ec74fad15ac31a7a8bec74977e39f6501c4d25377fc", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "isAvailable", "source_mapping": {"start": 5734, "length": 309, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSManager.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSManager.sol", "filename_short": "infrastructure/ens/ArgentENSManager.sol", "is_dependency": false, "lines": [152, 153, 154, 155, 156, 157, 158, 159], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentENSManager", "source_mapping": {"start": 1264, "length": 4914, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSManager.sol", "filename_relative": "contracts/infrastructure/ens/ArgentENSManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/ens/ArgentENSManager.sol", "filename_short": "infrastructure/ens/ArgentENSManager.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "isAvailable(bytes32)"}}], "description": "isAvailable(bytes32) should be declared external:\n\t- ArgentENSManager.isAvailable(bytes32) (infrastructure/ens/ArgentENSManager.sol#152-159)\n", "markdown": "isAvailable(bytes32) should be declared external:\n\t- [ArgentENSManager.isAvailable(bytes32)](contracts/infrastructure/ens/ArgentENSManager.sol#L152-L159)\n", "id": "cea6114fb3f780560283a46b42da16e84525fd172d22aef195e6fb3716f49b5d", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "variable", "name": "creationCode", "source_mapping": {"start": 312, "length": 29, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModuleTest.sol", "filename_relative": "contracts/modules/ArgentModuleTest.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModuleTest.sol", "filename_short": "modules/ArgentModuleTest.sol", "is_dependency": false, "lines": [12], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentModuleTest", "source_mapping": {"start": 263, "length": 1349, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModuleTest.sol", "filename_relative": "contracts/modules/ArgentModuleTest.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModuleTest.sol", "filename_short": "modules/ArgentModuleTest.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}}}], "description": "ArgentModuleTest.creationCode (modules/ArgentModuleTest.sol#12) should be constant\n", "markdown": "[ArgentModuleTest.creationCode](contracts/modules/ArgentModuleTest.sol#L12) should be constant\n", "id": "341ca7153779b23dd2bdfb73e2b485c9d04719967c1b1d464f50413e32a0bfdd", "check": "constable-states", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "getRequiredSignatures", "source_mapping": {"start": 2365, "length": 2826, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModule.sol", "filename_relative": "contracts/modules/ArgentModule.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModule.sol", "filename_short": "modules/ArgentModule.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ArgentModule", "source_mapping": {"start": 1058, "length": 4294, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModule.sol", "filename_relative": "contracts/modules/ArgentModule.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/ArgentModule.sol", "filename_short": "modules/ArgentModule.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "getRequiredSignatures(address,bytes)"}}, {"type": "function", "name": "getRequiredSignatures", "source_mapping": {"start": 2483, "length": 124, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/RelayerManager.sol", "filename_relative": "contracts/modules/RelayerManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/RelayerManager.sol", "filename_short": "modules/RelayerManager.sol", "is_dependency": false, "lines": [68], "starting_column": 5, "ending_column": 129}, "type_specific_fields": {"parent": {"type": "contract", "name": "RelayerManager", "source_mapping": {"start": 1195, "length": 14683, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/RelayerManager.sol", "filename_relative": "contracts/modules/RelayerManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/RelayerManager.sol", "filename_short": "modules/RelayerManager.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "getRequiredSignatures(address,bytes)"}}], "description": "getRequiredSignatures(address,bytes) should be declared external:\n\t- ArgentModule.getRequiredSignatures(address,bytes) (modules/ArgentModule.sol#71-123)\n\t- RelayerManager.getRequiredSignatures(address,bytes) (modules/RelayerManager.sol#68)\n", "markdown": "getRequiredSignatures(address,bytes) should be declared external:\n\t- [ArgentModule.getRequiredSignatures(address,bytes)](contracts/modules/ArgentModule.sol#L71-L123)\n\t- [RelayerManager.getRequiredSignatures(address,bytes)](contracts/modules/RelayerManager.sol#L68)\n", "id": "829f1dd7582b8d6984d0bd08e1f92502d0a175fbaa027fb60d3e5b9020499d8e", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "isWhitelisted", "source_mapping": {"start": 7506, "length": 253, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/TransactionManager.sol", "filename_relative": "contracts/modules/TransactionManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/TransactionManager.sol", "filename_short": "modules/TransactionManager.sol", "is_dependency": false, "lines": [187, 188, 189, 190], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TransactionManager", "source_mapping": {"start": 1155, "length": 10716, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/TransactionManager.sol", "filename_relative": "contracts/modules/TransactionManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/TransactionManager.sol", "filename_short": "modules/TransactionManager.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "isWhitelisted(address,address)"}}], "description": "isWhitelisted(address,address) should be declared external:\n\t- TransactionManager.isWhitelisted(address,address) (modules/TransactionManager.sol#187-190)\n", "markdown": "isWhitelisted(address,address) should be declared external:\n\t- [TransactionManager.isWhitelisted(address,address)](contracts/modules/TransactionManager.sol#L187-L190)\n", "id": "20a2fa1815e7df075b0c4b94ba33bde7d07de3586936d245e3cc510964813e42", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "variable", "name": "staticCallExecutor", "source_mapping": {"start": 1212, "length": 33, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [34], "starting_column": 5, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}}}], "description": "BaseWallet.staticCallExecutor (wallet/BaseWallet.sol#34) should be constant\n", "markdown": "[BaseWallet.staticCallExecutor](contracts/wallet/BaseWallet.sol#L34) should be constant\n", "id": "9aed61415a645939a8235d18a2572321e25be98259edcbf0e873b6ae7b88e164", "check": "constable-states", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "enabled", "source_mapping": {"start": 3312, "length": 272, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [93, 94, 95, 96, 97, 98, 99], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "enabled(bytes4)"}}], "description": "enabled(bytes4) should be declared external:\n\t- BaseWallet.enabled(bytes4) (wallet/BaseWallet.sol#93-99)\n", "markdown": "enabled(bytes4) should be declared external:\n\t- [BaseWallet.enabled(bytes4)](contracts/wallet/BaseWallet.sol#L93-L99)\n", "id": "9dc0b8bff2834f2ac19776d9fc73e412a275f2c3313626035ed04117e279299a", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "variable", "name": "recoveryConfigs", "source_mapping": {"start": 1579, "length": 60, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/SecurityManager.sol", "filename_relative": "contracts/modules/SecurityManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/SecurityManager.sol", "filename_short": "modules/SecurityManager.sol", "is_dependency": false, "lines": [44], "starting_column": 5, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "contract", "name": "SecurityManager", "source_mapping": {"start": 1176, "length": 16121, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/modules/SecurityManager.sol", "filename_relative": "contracts/modules/SecurityManager.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/modules/SecurityManager.sol", "filename_short": "modules/SecurityManager.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}}}], "description": "SecurityManager.recoveryConfigs (modules/SecurityManager.sol#44) is never initialized. It is used in:\n", "markdown": "[SecurityManager.recoveryConfigs](contracts/modules/SecurityManager.sol#L44) is never initialized. It is used in:\n", "id": "1b45b11455304cb98691c21cd852b49b3cf3d5deef07c1aebdd8df8b3973dcb5", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "managers", "source_mapping": {"start": 1052, "length": 41, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_relative": "contracts/infrastructure/base/Managed.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_short": "infrastructure/base/Managed.sol", "is_dependency": false, "lines": [29], "starting_column": 5, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "contract", "name": "Managed", "source_mapping": {"start": 999, "length": 1144, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_relative": "contracts/infrastructure/base/Managed.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_short": "infrastructure/base/Managed.sol", "is_dependency": false, "lines": [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": 0}}}}], "description": "Managed.managers (infrastructure/base/Managed.sol#29) is never initialized. It is used in:\n", "markdown": "[Managed.managers](contracts/infrastructure/base/Managed.sol#L29) is never initialized. It is used in:\n", "id": "3caf8b4c9b68910a3b89942ff6e039fd074ffe059beaf4d64915b1ac95288134", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "managers", "source_mapping": {"start": 1052, "length": 41, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_relative": "contracts/infrastructure/base/Managed.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_short": "infrastructure/base/Managed.sol", "is_dependency": false, "lines": [29], "starting_column": 5, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "contract", "name": "Managed", "source_mapping": {"start": 999, "length": 1144, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_relative": "contracts/infrastructure/base/Managed.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/base/Managed.sol", "filename_short": "infrastructure/base/Managed.sol", "is_dependency": false, "lines": [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": 0}}}}, {"type": "function", "name": "setTradableForTokenList", "source_mapping": {"start": 1596, "length": 407, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/TokenRegistry.sol", "filename_relative": "contracts/infrastructure/TokenRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/TokenRegistry.sol", "filename_short": "infrastructure/TokenRegistry.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenRegistry", "source_mapping": {"start": 1027, "length": 978, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/TokenRegistry.sol", "filename_relative": "contracts/infrastructure/TokenRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/TokenRegistry.sol", "filename_short": "infrastructure/TokenRegistry.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "setTradableForTokenList(address[],bool[])"}}], "description": "Managed.managers (infrastructure/base/Managed.sol#29) is never initialized. It is used in:\n\t- TokenRegistry.setTradableForTokenList(address[],bool[]) (infrastructure/TokenRegistry.sol#43-49)\n", "markdown": "[Managed.managers](contracts/infrastructure/base/Managed.sol#L29) is never initialized. It is used in:\n\t- [TokenRegistry.setTradableForTokenList(address[],bool[])](contracts/infrastructure/TokenRegistry.sol#L43-L49)\n", "id": "e606526439713a65be773200286cc36ed8e9f1340a97ece38bada0a14c613c2c", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "authorisations", "source_mapping": {"start": 1333, "length": 69, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.sol", "is_dependency": false, "lines": [34], "starting_column": 5, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "contract", "name": "DappRegistry", "source_mapping": {"start": 829, "length": 12581, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.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], "starting_column": 1, "ending_column": 0}}}}, {"type": "function", "name": "isAuthorised", "source_mapping": {"start": 3795, "length": 1259, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.sol", "is_dependency": false, "lines": [84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DappRegistry", "source_mapping": {"start": 829, "length": 12581, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_relative": "contracts/infrastructure/DappRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure/DappRegistry.sol", "filename_short": "infrastructure/DappRegistry.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], "starting_column": 1, "ending_column": 0}}, "signature": "isAuthorised(address,address,address,bytes)"}}], "description": "DappRegistry.authorisations (infrastructure/DappRegistry.sol#34) is never initialized. It is used in:\n\t- DappRegistry.isAuthorised(address,address,address,bytes) (infrastructure/DappRegistry.sol#84-102)\n", "markdown": "[DappRegistry.authorisations](contracts/infrastructure/DappRegistry.sol#L34) is never initialized. It is used in:\n\t- [DappRegistry.isAuthorised(address,address,address,bytes)](contracts/infrastructure/DappRegistry.sol#L84-L102)\n", "id": "99e577517edf2786d8b68a2bbd34959bee9f8983e557377be3033fb3a9ec5cb0", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "contract", "name": "Proxy", "source_mapping": {"start": 972, "length": 793, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_relative": "contracts/wallet/Proxy.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_short": "wallet/Proxy.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, {"type": "function", "name": "fallback", "source_mapping": {"start": 1209, "length": 464, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_relative": "contracts/wallet/Proxy.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_short": "wallet/Proxy.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Proxy", "source_mapping": {"start": 972, "length": 793, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_relative": "contracts/wallet/Proxy.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_short": "wallet/Proxy.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "fallback()"}}, {"type": "function", "name": "receive", "source_mapping": {"start": 1679, "length": 84, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_relative": "contracts/wallet/Proxy.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_short": "wallet/Proxy.sol", "is_dependency": false, "lines": [48, 49, 50], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Proxy", "source_mapping": {"start": 972, "length": 793, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_relative": "contracts/wallet/Proxy.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/Proxy.sol", "filename_short": "wallet/Proxy.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "receive()"}}], "description": "Contract locking ether found in :\n\tContract Proxy (wallet/Proxy.sol#25-52) has payable functions:\n\t - Proxy.fallback() (wallet/Proxy.sol#35-46)\n\t - Proxy.receive() (wallet/Proxy.sol#48-50)\n\tBut does not have a function to withdraw the ether\n", "markdown": "Contract locking ether found in :\n\tContract [Proxy](contracts/wallet/Proxy.sol#L25-L52) has payable functions:\n\t - [Proxy.fallback()](contracts/wallet/Proxy.sol#L35-L46)\n\t - [Proxy.receive()](contracts/wallet/Proxy.sol#L48-L50)\n\tBut does not have a function to withdraw the ether\n", "id": "65059149746fe5e1f25c150be699d486d9916f15492140a8e9feaa9f4e710392", "check": "locked-ether", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, {"type": "function", "name": "fallback", "source_mapping": {"start": 5060, "length": 692, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "fallback()"}}, {"type": "function", "name": "receive", "source_mapping": {"start": 5758, "length": 34, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [162, 163], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BaseWallet", "source_mapping": {"start": 997, "length": 4797, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_relative": "contracts/wallet/BaseWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/wallet/BaseWallet.sol", "filename_short": "wallet/BaseWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "receive()"}}], "description": "Contract locking ether found in :\n\tContract BaseWallet (wallet/BaseWallet.sol#27-165) has payable functions:\n\t - BaseWallet.fallback() (wallet/BaseWallet.sol#143-160)\n\t - BaseWallet.receive() (wallet/BaseWallet.sol#162-163)\n\tBut does not have a function to withdraw the ether\n", "markdown": "Contract locking ether found in :\n\tContract [BaseWallet](contracts/wallet/BaseWallet.sol#L27-L165) has payable functions:\n\t - [BaseWallet.fallback()](contracts/wallet/BaseWallet.sol#L143-L160)\n\t - [BaseWallet.receive()](contracts/wallet/BaseWallet.sol#L162-L163)\n\tBut does not have a function to withdraw the ether\n", "id": "cb6e31bfdbf4097343e5c78042c14b94007b6c977edf2e37ea48f28098dfd083", "check": "locked-ether", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "contract", "name": "GuardianStorage", "source_mapping": {"start": 1165, "length": 4511, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_relative": "contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_short": "infrastructure_0.5/storage/GuardianStorage.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, {"type": "node", "name": "config.info[_guardian].index = uint128(config.guardians.push(_guardian) - 1)", "source_mapping": {"start": 2165, "length": 76, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_relative": "contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_short": "infrastructure_0.5/storage/GuardianStorage.sol", "is_dependency": false, "lines": [60], "starting_column": 9, "ending_column": 85}, "type_specific_fields": {"parent": {"type": "function", "name": "addGuardian", "source_mapping": {"start": 1958, "length": 290, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_relative": "contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_short": "infrastructure_0.5/storage/GuardianStorage.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GuardianStorage", "source_mapping": {"start": 1165, "length": 4511, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_relative": "contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/storage/GuardianStorage.sol", "filename_short": "infrastructure_0.5/storage/GuardianStorage.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "addGuardian(address,address)"}}}}], "description": "GuardianStorage (infrastructure_0.5/storage/GuardianStorage.sol#29-152) contract sets array length with a user-controlled value:\n\t- config.info[_guardian].index = uint128(config.guardians.push(_guardian) - 1) (infrastructure_0.5/storage/GuardianStorage.sol#60)\n", "markdown": "[GuardianStorage](contracts/infrastructure_0.5/storage/GuardianStorage.sol#L29-L152) contract sets array length with a user-controlled value:\n\t- [config.info[_guardian].index = uint128(config.guardians.push(_guardian) - 1)](contracts/infrastructure_0.5/storage/GuardianStorage.sol#L60)\n", "id": "fa034692f14355e0014bde5fb278b738b994c91a2b53e322fc4fcb87466cdcd6", "check": "controlled-array-length", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "recoverToken", "source_mapping": {"start": 3113, "length": 176, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_relative": "contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_short": "infrastructure_0.5/ModuleRegistry.sol", "is_dependency": false, "lines": [88, 89, 90, 91], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ModuleRegistry", "source_mapping": {"start": 1007, "length": 3863, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_relative": "contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_short": "infrastructure_0.5/ModuleRegistry.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "recoverToken(address)"}}, {"type": "node", "name": "ERC20(_token).transfer(msg.sender,total)", "source_mapping": {"start": 3241, "length": 41, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_relative": "contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_short": "infrastructure_0.5/ModuleRegistry.sol", "is_dependency": false, "lines": [90], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "recoverToken", "source_mapping": {"start": 3113, "length": 176, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_relative": "contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_short": "infrastructure_0.5/ModuleRegistry.sol", "is_dependency": false, "lines": [88, 89, 90, 91], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ModuleRegistry", "source_mapping": {"start": 1007, "length": 3863, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_relative": "contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/ModuleRegistry.sol", "filename_short": "infrastructure_0.5/ModuleRegistry.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "recoverToken(address)"}}}}], "description": "ModuleRegistry.recoverToken(address) (infrastructure_0.5/ModuleRegistry.sol#88-91) ignores return value by ERC20(_token).transfer(msg.sender,total) (infrastructure_0.5/ModuleRegistry.sol#90)\n", "markdown": "[ModuleRegistry.recoverToken(address)](contracts/infrastructure_0.5/ModuleRegistry.sol#L88-L91) ignores return value by [ERC20(_token).transfer(msg.sender,total)](contracts/infrastructure_0.5/ModuleRegistry.sol#L90)\n", "id": "41fbcd0b9d8141f132deb3d6bc28e164003eb789f1b13973222664f22be39bd1", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "execute", "source_mapping": {"start": 3050, "length": 1365, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MultiSigWallet", "source_mapping": {"start": 855, "length": 6373, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "execute(address,uint256,bytes,bytes)"}}], "description": "execute(address,uint256,bytes,bytes) should be declared external:\n\t- MultiSigWallet.execute(address,uint256,bytes,bytes) (infrastructure_0.5/MultiSigWallet.sol#77-104)\n", "markdown": "execute(address,uint256,bytes,bytes) should be declared external:\n\t- [MultiSigWallet.execute(address,uint256,bytes,bytes)](contracts/infrastructure_0.5/MultiSigWallet.sol#L77-L104)\n", "id": "c3af5848178a216692f1dd8bcebeb3cec8f959ac7b120616003a9eeef59a0196", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "addOwner", "source_mapping": {"start": 4672, "length": 295, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [111, 112, 113, 114, 115, 116, 117], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MultiSigWallet", "source_mapping": {"start": 855, "length": 6373, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "addOwner(address)"}}], "description": "addOwner(address) should be declared external:\n\t- MultiSigWallet.addOwner(address) (infrastructure_0.5/MultiSigWallet.sol#111-117)\n", "markdown": "addOwner(address) should be declared external:\n\t- [MultiSigWallet.addOwner(address)](contracts/infrastructure_0.5/MultiSigWallet.sol#L111-L117)\n", "id": "5efcde21d2a78ac98bff9840f6f55e1c1786b437adaa99ec2fd11cf6eacf78c4", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "removeOwner", "source_mapping": {"start": 5239, "length": 288, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [124, 125, 126, 127, 128, 129, 130], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MultiSigWallet", "source_mapping": {"start": 855, "length": 6373, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "removeOwner(address)"}}], "description": "removeOwner(address) should be declared external:\n\t- MultiSigWallet.removeOwner(address) (infrastructure_0.5/MultiSigWallet.sol#124-130)\n", "markdown": "removeOwner(address) should be declared external:\n\t- [MultiSigWallet.removeOwner(address)](contracts/infrastructure_0.5/MultiSigWallet.sol#L124-L130)\n", "id": "abec3a9be52925542f3856e3e13b059576195bf6e1664d926bac665d14c7fff7", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "changeThreshold", "source_mapping": {"start": 5788, "length": 252, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [137, 138, 139, 140, 141], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MultiSigWallet", "source_mapping": {"start": 855, "length": 6373, "filename_used": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_relative": "contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_absolute": "/Users/Elena/Source/argent-contracts/contracts/infrastructure_0.5/MultiSigWallet.sol", "filename_short": "infrastructure_0.5/MultiSigWallet.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 0}}, "signature": "changeThreshold(uint256)"}}], "description": "changeThreshold(uint256) should be declared external:\n\t- MultiSigWallet.changeThreshold(uint256) (infrastructure_0.5/MultiSigWallet.sol#137-141)\n", "markdown": "changeThreshold(uint256) should be declared external:\n\t- [MultiSigWallet.changeThreshold(uint256)](contracts/infrastructure_0.5/MultiSigWallet.sol#L137-L141)\n", "id": "434de4d96de5a8d7990cbd19c4b842b7b2dc02b90b2cb2d11c934328ba9321d4", "check": "external-function", "impact": "Optimization", "confidence": "High"}]