-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathslither.db.json
1 lines (1 loc) · 90.1 KB
/
slither.db.json
1
[{"elements": [{"type": "function", "name": "updateTrophy", "source_mapping": {"start": 2020, "length": 390, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "updateTrophy(address)"}}, {"type": "node", "name": "result = goodInfluencer.transfer(_influencer,1)", "source_mapping": {"start": 2193, "length": 53, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [61], "starting_column": 13, "ending_column": 66}, "type_specific_fields": {"parent": {"type": "function", "name": "updateTrophy", "source_mapping": {"start": 2020, "length": 390, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "updateTrophy(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "EarnTrophy(msg.sender,_influencer)", "source_mapping": {"start": 2353, "length": 40, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [64], "starting_column": 13, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "updateTrophy", "source_mapping": {"start": 2020, "length": 390, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "updateTrophy(address)"}}}, "additional_fields": {"underlying_type": "event"}}], "description": "Reentrancy in GoodInfluencerManager.updateTrophy(address) (contracts/GoodInfluencerManager.sol#57-66):\n\tExternal calls:\n\t- result = goodInfluencer.transfer(_influencer,1) (contracts/GoodInfluencerManager.sol#61)\n\tEvent emitted after the call(s):\n\t- EarnTrophy(msg.sender,_influencer) (contracts/GoodInfluencerManager.sol#64)\n", "markdown": "Reentrancy in [GoodInfluencerManager.updateTrophy(address)](contracts/GoodInfluencerManager.sol#L57-L66):\n\tExternal calls:\n\t- [result = goodInfluencer.transfer(_influencer,1)](contracts/GoodInfluencerManager.sol#L61)\n\tEvent emitted after the call(s):\n\t- [EarnTrophy(msg.sender,_influencer)](contracts/GoodInfluencerManager.sol#L64)\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L57-L66", "id": "2f79b0e3be0a617052b9b74c6bceefcf037ec0034ace6c055c7897370f58a54b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}, {"type": "node", "name": "(isSent) = address(msg.sender).call{value: _amount}()", "source_mapping": {"start": 3718, "length": 62, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [102], "starting_column": 9, "ending_column": 71}, "type_specific_fields": {"parent": {"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "Withdraw(msg.sender,_amount)", "source_mapping": {"start": 3791, "length": 34, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [104], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}}, "additional_fields": {"underlying_type": "event"}}], "description": "Reentrancy in GoodInfluencerManager.withdraw(uint256) (contracts/GoodInfluencerManager.sol#86-107):\n\tExternal calls:\n\t- (isSent) = address(msg.sender).call{value: _amount}() (contracts/GoodInfluencerManager.sol#102)\n\tEvent emitted after the call(s):\n\t- Withdraw(msg.sender,_amount) (contracts/GoodInfluencerManager.sol#104)\n", "markdown": "Reentrancy in [GoodInfluencerManager.withdraw(uint256)](contracts/GoodInfluencerManager.sol#L86-L107):\n\tExternal calls:\n\t- [(isSent) = address(msg.sender).call{value: _amount}()](contracts/GoodInfluencerManager.sol#L102)\n\tEvent emitted after the call(s):\n\t- [Withdraw(msg.sender,_amount)](contracts/GoodInfluencerManager.sol#L104)\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L86-L107", "id": "2c436c28663588dae20a508ac6ff5aa861545bd3cc1aeee0bc9ad4ae197b83db", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_revert", "source_mapping": {"start": 8832, "length": 540, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_revert(bytes,string)"}}, {"type": "node", "name": "", "source_mapping": {"start": 9163, "length": 142, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [236, 237, 238, 239], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_revert", "source_mapping": {"start": 8832, "length": 540, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_revert(bytes,string)"}}}}], "description": "AddressUpgradeable._revert(bytes,string) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#231-243) uses assembly\n\t- INLINE ASM (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#236-239)\n", "markdown": "[AddressUpgradeable._revert(bytes,string)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L231-L243) uses assembly\n\t- [INLINE ASM](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L236-L239)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L231-L243", "id": "41d98055557e70cfae51beb5c985f270243fa0aa616c6503eea9c0db2d35c447", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "registerInfluencer", "source_mapping": {"start": 2416, "length": 656, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "registerInfluencer(address)"}}, {"type": "node", "name": "", "source_mapping": {"start": 2617, "length": 206, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [73, 74, 75, 76], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "registerInfluencer", "source_mapping": {"start": 2416, "length": 656, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "registerInfluencer(address)"}}}}], "description": "GoodInfluencerManager.registerInfluencer(address) (contracts/GoodInfluencerManager.sol#68-84) uses assembly\n\t- INLINE ASM (contracts/GoodInfluencerManager.sol#73-76)\n", "markdown": "[GoodInfluencerManager.registerInfluencer(address)](contracts/GoodInfluencerManager.sol#L68-L84) uses assembly\n\t- [INLINE ASM](contracts/GoodInfluencerManager.sol#L73-L76)\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L68-L84", "id": "44e84f475ff5b1626ebcac82914cda9c1e14e973c6eea314d6fe0f6655b0b027", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}, {"type": "node", "name": "", "source_mapping": {"start": 3175, "length": 203, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}}}], "description": "GoodInfluencerManager.withdraw(uint256) (contracts/GoodInfluencerManager.sol#86-107) uses assembly\n\t- INLINE ASM (contracts/GoodInfluencerManager.sol#89-92)\n", "markdown": "[GoodInfluencerManager.withdraw(uint256)](contracts/GoodInfluencerManager.sol#L86-L107) uses assembly\n\t- [INLINE ASM](contracts/GoodInfluencerManager.sol#L89-L92)\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L86-L107", "id": "06aa45de18b76c34818d1586226415c612217a9272d0b62d3517bd0ee4cd850b", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "0.8.19", "source_mapping": {"start": 36, "length": 23, "filename_relative": "contracts/GoodInfluencer.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencer.sol", "filename_short": "contracts/GoodInfluencer.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "0.8", ".19"]}}, {"type": "pragma", "name": "0.8.19", "source_mapping": {"start": 36, "length": 23, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "0.8", ".19"]}}, {"type": "pragma", "name": "0.8.19", "source_mapping": {"start": 36, "length": 23, "filename_relative": "contracts/contractsForTest/MockContractForTest.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/contractsForTest/MockContractForTest.sol", "filename_short": "contracts/contractsForTest/MockContractForTest.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "0.8", ".19"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 102, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 105, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 106, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 110, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 86, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Context.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.1", "source_mapping": {"start": 101, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".1"]}}, {"type": "pragma", "name": "^0.8.2", "source_mapping": {"start": 113, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".2"]}}], "description": "Different versions of Solidity are used:\n\t- Version used: ['0.8.19', '^0.8.0', '^0.8.1', '^0.8.2']\n\t- 0.8.19 (contracts/GoodInfluencer.sol#2)\n\t- 0.8.19 (contracts/GoodInfluencerManager.sol#2)\n\t- 0.8.19 (contracts/contractsForTest/MockContractForTest.sol#2)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/access/Ownable.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/Context.sol#4)\n\t- ^0.8.1 (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#4)\n\t- ^0.8.2 (node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol#4)\n", "markdown": "Different versions of Solidity are used:\n\t- Version used: ['0.8.19', '^0.8.0', '^0.8.1', '^0.8.2']\n\t- [0.8.19](contracts/GoodInfluencer.sol#L2)\n\t- [0.8.19](contracts/GoodInfluencerManager.sol#L2)\n\t- [0.8.19](contracts/contractsForTest/MockContractForTest.sol#L2)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/access/Ownable.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/Context.sol#L4)\n\t- [^0.8.1](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L4)\n\t- [^0.8.2](node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol#L4)\n", "first_markdown_element": "contracts/GoodInfluencer.sol#L2", "id": "655f1b8f5d5356b32254c179812b87a8ad5d50eb656500db1bdcf11b79dfb58c", "check": "pragma", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.2", "source_mapping": {"start": 113, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".2"]}}], "description": "Pragma version^0.8.2 (node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.2](node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol#L4", "id": "df5db7d467cb71fbad3cca7cef629a11b02bc8f14a74db90d7ac2cecf9dc0da6", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.1", "source_mapping": {"start": 101, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".1"]}}], "description": "Pragma version^0.8.1 (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.1](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L4", "id": "e64ad37105cb312bce8c4abfb13684ee0f969472b655be82bca640b480c86acb", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 102, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/access/Ownable.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/access/Ownable.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/access/Ownable.sol#L4", "id": "d9fcf15f6c48db746fe8b4b5b79cadf5dc4cde499aed490b6b22d0f93b6cdddd", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 105, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L4", "id": "9d8a804f21d9bda1c90bbe4177baae5a4bfe61bc990c3ffec1a5cb063264dce7", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 106, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4", "id": "851a3cc70cf5a0e84cea60ba82f675bc668a61dfc08f0b82199206a5fbafb3b4", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 110, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4", "id": "0ac7c62454421eba41ad4bc7f77cc11d95ff2e283def53e5f32dd991137af888", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 86, "length": 23, "filename_relative": "node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Context.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/Context.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/Context.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/Context.sol#L4", "id": "21c670e40e414a2f849413afbbdb25adb81dae6585c4f38fc83730c17377e60f", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "0.8.19", "source_mapping": {"start": 36, "length": 23, "filename_relative": "contracts/GoodInfluencer.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencer.sol", "filename_short": "contracts/GoodInfluencer.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "0.8", ".19"]}}], "description": "Pragma version0.8.19 (contracts/GoodInfluencer.sol#2) necessitates a version too recent to be trusted. Consider deploying with 0.8.18.\n", "markdown": "Pragma version[0.8.19](contracts/GoodInfluencer.sol#L2) necessitates a version too recent to be trusted. Consider deploying with 0.8.18.\n", "first_markdown_element": "contracts/GoodInfluencer.sol#L2", "id": "f2a741c5c740e907c8a3e4477db07df1187d567309ccdf37789c59ddeac624e5", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "0.8.19", "source_mapping": {"start": 36, "length": 23, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "0.8", ".19"]}}], "description": "Pragma version0.8.19 (contracts/GoodInfluencerManager.sol#2) necessitates a version too recent to be trusted. Consider deploying with 0.8.18.\n", "markdown": "Pragma version[0.8.19](contracts/GoodInfluencerManager.sol#L2) necessitates a version too recent to be trusted. Consider deploying with 0.8.18.\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L2", "id": "60e92c72d88d0ac26e352635af10edcba1783ff322ef833b76ed2c24220edba5", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "0.8.19", "source_mapping": {"start": 36, "length": 23, "filename_relative": "contracts/contractsForTest/MockContractForTest.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/contractsForTest/MockContractForTest.sol", "filename_short": "contracts/contractsForTest/MockContractForTest.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "0.8", ".19"]}}], "description": "Pragma version0.8.19 (contracts/contractsForTest/MockContractForTest.sol#2) necessitates a version too recent to be trusted. Consider deploying with 0.8.18.\n", "markdown": "Pragma version[0.8.19](contracts/contractsForTest/MockContractForTest.sol#L2) necessitates a version too recent to be trusted. Consider deploying with 0.8.18.\n", "first_markdown_element": "contracts/contractsForTest/MockContractForTest.sol#L2", "id": "eecf23ba12d5fe5030dea841025980c5f2ff6286d6ff79f410c4fa9b38623882", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [], "description": "solc-0.8.19 is not recommended for deployment\n", "markdown": "solc-0.8.19 is not recommended for deployment\n", "first_markdown_element": "", "id": "bc0e6f5edf86fec0e8668af5b6535a97ff60d9ff435d7796649d79d0b5e89ed6", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "sendValue", "source_mapping": {"start": 2658, "length": 312, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [64, 65, 66, 67, 68, 69], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "sendValue(address,uint256)"}}, {"type": "node", "name": "(success) = recipient.call{value: amount}()", "source_mapping": {"start": 2823, "length": 52, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [67], "starting_column": 9, "ending_column": 61}, "type_specific_fields": {"parent": {"type": "function", "name": "sendValue", "source_mapping": {"start": 2658, "length": 312, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [64, 65, 66, 67, 68, 69], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "sendValue(address,uint256)"}}}}], "description": "Low level call in AddressUpgradeable.sendValue(address,uint256) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#64-69):\n\t- (success) = recipient.call{value: amount}() (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#67)\n", "markdown": "Low level call in [AddressUpgradeable.sendValue(address,uint256)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L64-L69):\n\t- [(success) = recipient.call{value: amount}()](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L67)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L64-L69", "id": "ef14535be070facbcddf130199fb1c430fee2cd1cb8e03a87a4d1acdbb419e17", "check": "low-level-calls", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "functionCallWithValue", "source_mapping": {"start": 5176, "length": 446, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [128, 129, 130, 131, 132, 133, 134, 135, 136, 137], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "functionCallWithValue(address,bytes,uint256,string)"}}, {"type": "node", "name": "(success,returndata) = target.call{value: value}(data)", "source_mapping": {"start": 5456, "length": 73, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [135], "starting_column": 9, "ending_column": 82}, "type_specific_fields": {"parent": {"type": "function", "name": "functionCallWithValue", "source_mapping": {"start": 5176, "length": 446, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [128, 129, 130, 131, 132, 133, 134, 135, 136, 137], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "functionCallWithValue(address,bytes,uint256,string)"}}}}], "description": "Low level call in AddressUpgradeable.functionCallWithValue(address,bytes,uint256,string) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#128-137):\n\t- (success,returndata) = target.call{value: value}(data) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#135)\n", "markdown": "Low level call in [AddressUpgradeable.functionCallWithValue(address,bytes,uint256,string)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L128-L137):\n\t- [(success,returndata) = target.call{value: value}(data)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L135)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L128-L137", "id": "b055de1f0e32261bfc94f8376eed86e29658d2f588ddd1134abed80e6d35fadf", "check": "low-level-calls", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "functionStaticCall", "source_mapping": {"start": 6180, "length": 326, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [155, 156, 157, 158, 159, 160, 161, 162], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "functionStaticCall(address,bytes,string)"}}, {"type": "node", "name": "(success,returndata) = target.staticcall(data)", "source_mapping": {"start": 6348, "length": 65, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [160], "starting_column": 9, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "functionStaticCall", "source_mapping": {"start": 6180, "length": 326, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [155, 156, 157, 158, 159, 160, 161, 162], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "functionStaticCall(address,bytes,string)"}}}}], "description": "Low level call in AddressUpgradeable.functionStaticCall(address,bytes,string) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#155-162):\n\t- (success,returndata) = target.staticcall(data) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#160)\n", "markdown": "Low level call in [AddressUpgradeable.functionStaticCall(address,bytes,string)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L155-L162):\n\t- [(success,returndata) = target.staticcall(data)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L160)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L155-L162", "id": "baa83774a2040bdc437f652779408968735ec53303d22392bc04bbabb86294e7", "check": "low-level-calls", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "functionDelegateCall", "source_mapping": {"start": 7069, "length": 325, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [180, 181, 182, 183, 184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "functionDelegateCall(address,bytes,string)"}}, {"type": "node", "name": "(success,returndata) = target.delegatecall(data)", "source_mapping": {"start": 7234, "length": 67, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [185], "starting_column": 9, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "functionDelegateCall", "source_mapping": {"start": 7069, "length": 325, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "lines": [180, 181, 182, 183, 184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AddressUpgradeable", "source_mapping": {"start": 194, "length": 9180, "filename_relative": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_absolute": "/Users/kim/dev/good-influencer/node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "filename_short": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "is_dependency": true, "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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "functionDelegateCall(address,bytes,string)"}}}}], "description": "Low level call in AddressUpgradeable.functionDelegateCall(address,bytes,string) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#180-187):\n\t- (success,returndata) = target.delegatecall(data) (node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#185)\n", "markdown": "Low level call in [AddressUpgradeable.functionDelegateCall(address,bytes,string)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L180-L187):\n\t- [(success,returndata) = target.delegatecall(data)](node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L185)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol#L180-L187", "id": "4404c4f4c6ba2e7168eba016d20297521a807e8e2039898f140256ff429b8312", "check": "low-level-calls", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}, {"type": "node", "name": "(isSent) = address(msg.sender).call{value: _amount}()", "source_mapping": {"start": 3718, "length": 62, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [102], "starting_column": 9, "ending_column": 71}, "type_specific_fields": {"parent": {"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}}}], "description": "Low level call in GoodInfluencerManager.withdraw(uint256) (contracts/GoodInfluencerManager.sol#86-107):\n\t- (isSent) = address(msg.sender).call{value: _amount}() (contracts/GoodInfluencerManager.sol#102)\n", "markdown": "Low level call in [GoodInfluencerManager.withdraw(uint256)](contracts/GoodInfluencerManager.sol#L86-L107):\n\t- [(isSent) = address(msg.sender).call{value: _amount}()](contracts/GoodInfluencerManager.sol#L102)\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L86-L107", "id": "f23e367f7d30cedea911c32e5a6368a91dcc63f5889363ea0ce9c0213294c275", "check": "low-level-calls", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_manager", "source_mapping": {"start": 322, "length": 16, "filename_relative": "contracts/GoodInfluencer.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencer.sol", "filename_short": "contracts/GoodInfluencer.sol", "is_dependency": false, "lines": [10], "starting_column": 33, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "mintToTokenManager", "source_mapping": {"start": 294, "length": 108, "filename_relative": "contracts/GoodInfluencer.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencer.sol", "filename_short": "contracts/GoodInfluencer.sol", "is_dependency": false, "lines": [10, 11, 12], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencer", "source_mapping": {"start": 171, "length": 233, "filename_relative": "contracts/GoodInfluencer.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencer.sol", "filename_short": "contracts/GoodInfluencer.sol", "is_dependency": false, "lines": [7, 8, 9, 10, 11, 12, 13, 14], "starting_column": 1, "ending_column": 0}}, "signature": "mintToTokenManager(address)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencer.mintToTokenManager(address)._manager (contracts/GoodInfluencer.sol#10) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencer.mintToTokenManager(address)._manager](contracts/GoodInfluencer.sol#L10) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencer.sol#L10", "id": "5502c3a924e0ac61842d1a013d5744f30e7c4739d71227c35aaf067d5b39a812", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_goodInfluencer", "source_mapping": {"start": 807, "length": 31, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [24], "starting_column": 25, "ending_column": 56}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 787, "length": 139, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [24, 25, 26], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "initialize(address)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencerManager.initialize(address)._goodInfluencer (contracts/GoodInfluencerManager.sol#24) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencerManager.initialize(address)._goodInfluencer](contracts/GoodInfluencerManager.sol#L24) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L24", "id": "403b4f6a021e55ddea25e80c3e18ac699e78fb03a45aaab707bcfc0417f0a11f", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_influencer", "source_mapping": {"start": 1099, "length": 19, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [33], "starting_column": 21, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "donate", "source_mapping": {"start": 1083, "length": 753, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "donate(address)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencerManager.donate(address)._influencer (contracts/GoodInfluencerManager.sol#33) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencerManager.donate(address)._influencer](contracts/GoodInfluencerManager.sol#L33) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L33", "id": "06e9b355e7faa04e64c4ae23b1218577473b47920bccff262ed50ce20304026d", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_influencer", "source_mapping": {"start": 2042, "length": 19, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [57], "starting_column": 27, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "function", "name": "updateTrophy", "source_mapping": {"start": 2020, "length": 390, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "updateTrophy(address)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencerManager.updateTrophy(address)._influencer (contracts/GoodInfluencerManager.sol#57) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencerManager.updateTrophy(address)._influencer](contracts/GoodInfluencerManager.sol#L57) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L57", "id": "ae2331a726434a99e9025ea432188a72e2b238cea77714515e903426d4855d88", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_influencer", "source_mapping": {"start": 2444, "length": 19, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [68], "starting_column": 33, "ending_column": 52}, "type_specific_fields": {"parent": {"type": "function", "name": "registerInfluencer", "source_mapping": {"start": 2416, "length": 656, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "registerInfluencer(address)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencerManager.registerInfluencer(address)._influencer (contracts/GoodInfluencerManager.sol#68) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencerManager.registerInfluencer(address)._influencer](contracts/GoodInfluencerManager.sol#L68) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L68", "id": "6c421df36d578db8bc4a085192a69290e808ede17dbd6626d44ff2396678614e", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_amount", "source_mapping": {"start": 3096, "length": 15, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86], "starting_column": 23, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "withdraw", "source_mapping": {"start": 3078, "length": 800, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "withdraw(uint256)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencerManager.withdraw(uint256)._amount (contracts/GoodInfluencerManager.sol#86) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencerManager.withdraw(uint256)._amount](contracts/GoodInfluencerManager.sol#L86) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L86", "id": "dca69a40cfeb1c712f3a90801f1c0734e99624ebeb0e05238e7355b42889eaca", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_influencer", "source_mapping": {"start": 3916, "length": 19, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [109], "starting_column": 37, "ending_column": 56}, "type_specific_fields": {"parent": {"type": "function", "name": "isRegisteredInfluencer", "source_mapping": {"start": 3884, "length": 140, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [109, 110, 111], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "isRegisteredInfluencer(address)"}}}, "additional_fields": {"target": "parameter", "convention": "mixedCase"}}], "description": "Parameter GoodInfluencerManager.isRegisteredInfluencer(address)._influencer (contracts/GoodInfluencerManager.sol#109) is not in mixedCase\n", "markdown": "Parameter [GoodInfluencerManager.isRegisteredInfluencer(address)._influencer](contracts/GoodInfluencerManager.sol#L109) is not in mixedCase\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L109", "id": "a077f0db19f24d136ec2f410ba00bc0d1f547f34c1b8833488d753b87bdfa8fb", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_achievement", "source_mapping": {"start": 1504, "length": 60, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [42], "starting_column": 9, "ending_column": 69}, "type_specific_fields": {"parent": {"type": "function", "name": "donate", "source_mapping": {"start": 1083, "length": 753, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}, "signature": "donate(address)"}}}}, {"type": "variable", "name": "achievements", "source_mapping": {"start": 724, "length": 52, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.sol", "is_dependency": false, "lines": [22], "starting_column": 5, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "contract", "name": "GoodInfluencerManager", "source_mapping": {"start": 169, "length": 3857, "filename_relative": "contracts/GoodInfluencerManager.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/GoodInfluencerManager.sol", "filename_short": "contracts/GoodInfluencerManager.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], "starting_column": 1, "ending_column": 0}}}}], "description": "Variable GoodInfluencerManager.donate(address)._achievement (contracts/GoodInfluencerManager.sol#42) is too similar to GoodInfluencerManager.achievements (contracts/GoodInfluencerManager.sol#22)\n", "markdown": "Variable [GoodInfluencerManager.donate(address)._achievement](contracts/GoodInfluencerManager.sol#L42) is too similar to [GoodInfluencerManager.achievements](contracts/GoodInfluencerManager.sol#L22)\n", "first_markdown_element": "contracts/GoodInfluencerManager.sol#L42", "id": "eb0f6858f21b5151d6759001509370a85094f5add5fe6353efdfdcc2b8416a21", "check": "similar-names", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "goodInfluencerManager", "source_mapping": {"start": 136, "length": 43, "filename_relative": "contracts/contractsForTest/MockContractForTest.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/contractsForTest/MockContractForTest.sol", "filename_short": "contracts/contractsForTest/MockContractForTest.sol", "is_dependency": false, "lines": [7], "starting_column": 5, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "contract", "name": "MockContractForTest", "source_mapping": {"start": 101, "length": 555, "filename_relative": "contracts/contractsForTest/MockContractForTest.sol", "filename_absolute": "/Users/kim/dev/good-influencer/contracts/contractsForTest/MockContractForTest.sol", "filename_short": "contracts/contractsForTest/MockContractForTest.sol", "is_dependency": false, "lines": [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 1, "ending_column": 0}}}}], "description": "MockContractForTest.goodInfluencerManager (contracts/contractsForTest/MockContractForTest.sol#7) should be immutable \n", "markdown": "[MockContractForTest.goodInfluencerManager](contracts/contractsForTest/MockContractForTest.sol#L7) should be immutable \n", "first_markdown_element": "contracts/contractsForTest/MockContractForTest.sol#L7", "id": "38e82bd2d5c00385841c597bc21313e2ce3cc3607500f7d4ed89b32d70c39106", "check": "immutable-states", "impact": "Optimization", "confidence": "High"}]