forked from balancer/balancer-v3-monorepo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathslither.db.json
1 lines (1 loc) · 49 KB
/
slither.db.json
1
[{"elements": [{"type": "function", "name": "getTokenInfo", "source_mapping": {"start": 754, "length": 322, "filename_relative": "contracts/PoolInfo.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/PoolInfo.sol", "filename_short": "contracts/PoolInfo.sol", "is_dependency": false, "lines": [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "PoolInfo", "source_mapping": {"start": 423, "length": 1471, "filename_relative": "contracts/PoolInfo.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/PoolInfo.sol", "filename_short": "contracts/PoolInfo.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "getTokenInfo()"}}, {"type": "node", "name": "_vault.getPoolTokenInfo(address(this))", "source_mapping": {"start": 1024, "length": 45, "filename_relative": "contracts/PoolInfo.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/PoolInfo.sol", "filename_short": "contracts/PoolInfo.sol", "is_dependency": false, "lines": [34], "starting_column": 9, "ending_column": 54}, "type_specific_fields": {"parent": {"type": "function", "name": "getTokenInfo", "source_mapping": {"start": 754, "length": 322, "filename_relative": "contracts/PoolInfo.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/PoolInfo.sol", "filename_short": "contracts/PoolInfo.sol", "is_dependency": false, "lines": [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "PoolInfo", "source_mapping": {"start": 423, "length": 1471, "filename_relative": "contracts/PoolInfo.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/PoolInfo.sol", "filename_short": "contracts/PoolInfo.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "getTokenInfo()"}}}}], "description": "PoolInfo.getTokenInfo() (contracts/PoolInfo.sol#24-35) ignores return value by _vault.getPoolTokenInfo(address(this)) (contracts/PoolInfo.sol#34)\n", "markdown": "[PoolInfo.getTokenInfo()](contracts/PoolInfo.sol#L24-L35) ignores return value by [_vault.getPoolTokenInfo(address(this))](contracts/PoolInfo.sol#L34)\n", "first_markdown_element": "contracts/PoolInfo.sol#L24-L35", "id": "46789cff525b6fed4b446cfac8dda6c449bf216367f583f88e707b760eb609c5", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}, {"type": "node", "name": "pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0)", "source_mapping": {"start": 4551, "length": 99, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [120], "starting_column": 9, "ending_column": 108}, "type_specific_fields": {"parent": {"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0)", "source_mapping": {"start": 4551, "length": 99, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [120], "starting_column": 9, "ending_column": 108}, "type_specific_fields": {"parent": {"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_registerPoolWithFactory(pool)", "source_mapping": {"start": 4661, "length": 30, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [122], "starting_column": 9, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_isPoolFromFactory"}}, {"type": "node", "name": "_isPoolFromFactory[pool] = true", "source_mapping": {"start": 3853, "length": 31, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [104], "starting_column": 9, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "_registerPoolWithFactory", "source_mapping": {"start": 3751, "length": 200, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [101, 102, 103, 104, 105, 106, 107, 108], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_registerPoolWithFactory(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_isPoolFromFactory"}}, {"type": "node", "name": "_registerPoolWithFactory(pool)", "source_mapping": {"start": 4661, "length": 30, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [122], "starting_column": 9, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_pools"}}, {"type": "node", "name": "_pools.push(pool)", "source_mapping": {"start": 3894, "length": 17, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [105], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_registerPoolWithFactory", "source_mapping": {"start": 3751, "length": 200, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [101, 102, 103, 104, 105, 106, 107, 108], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_registerPoolWithFactory(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_pools"}}], "description": "Reentrancy in BasePoolFactory._create(bytes,bytes32) (contracts/BasePoolFactory.sol#119-123):\n\tExternal calls:\n\t- pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0) (contracts/BasePoolFactory.sol#120)\n\tState variables written after the call(s):\n\t- _registerPoolWithFactory(pool) (contracts/BasePoolFactory.sol#122)\n\t\t- _isPoolFromFactory[pool] = true (contracts/BasePoolFactory.sol#104)\n\t- _registerPoolWithFactory(pool) (contracts/BasePoolFactory.sol#122)\n\t\t- _pools.push(pool) (contracts/BasePoolFactory.sol#105)\n", "markdown": "Reentrancy in [BasePoolFactory._create(bytes,bytes32)](contracts/BasePoolFactory.sol#L119-L123):\n\tExternal calls:\n\t- [pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0)](contracts/BasePoolFactory.sol#L120)\n\tState variables written after the call(s):\n\t- [_registerPoolWithFactory(pool)](contracts/BasePoolFactory.sol#L122)\n\t\t- [_isPoolFromFactory[pool] = true](contracts/BasePoolFactory.sol#L104)\n\t- [_registerPoolWithFactory(pool)](contracts/BasePoolFactory.sol#L122)\n\t\t- [_pools.push(pool)](contracts/BasePoolFactory.sol#L105)\n", "first_markdown_element": "contracts/BasePoolFactory.sol#L119-L123", "id": "1fe81badbe361ee8ff62ac7bc11002fb02e70f094610b3a7859ee4929c7706d5", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}, {"type": "node", "name": "pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0)", "source_mapping": {"start": 4551, "length": 99, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [120], "starting_column": 9, "ending_column": 108}, "type_specific_fields": {"parent": {"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "PoolCreated(pool)", "source_mapping": {"start": 3922, "length": 22, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [107], "starting_column": 9, "ending_column": 31}, "type_specific_fields": {"parent": {"type": "function", "name": "_registerPoolWithFactory", "source_mapping": {"start": 3751, "length": 200, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [101, 102, 103, 104, 105, 106, 107, 108], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_registerPoolWithFactory(address)"}}}, "additional_fields": {"underlying_type": "event"}}, {"type": "node", "name": "_registerPoolWithFactory(pool)", "source_mapping": {"start": 4661, "length": 30, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [122], "starting_column": 9, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "_create", "source_mapping": {"start": 4448, "length": 250, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [119, 120, 121, 122, 123], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolFactory", "source_mapping": {"start": 1732, "length": 4187, "filename_relative": "contracts/BasePoolFactory.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolFactory.sol", "filename_short": "contracts/BasePoolFactory.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_create(bytes,bytes32)"}}}, "additional_fields": {"underlying_type": "event"}}], "description": "Reentrancy in BasePoolFactory._create(bytes,bytes32) (contracts/BasePoolFactory.sol#119-123):\n\tExternal calls:\n\t- pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0) (contracts/BasePoolFactory.sol#120)\n\tEvent emitted after the call(s):\n\t- PoolCreated(pool) (contracts/BasePoolFactory.sol#107)\n\t\t- _registerPoolWithFactory(pool) (contracts/BasePoolFactory.sol#122)\n", "markdown": "Reentrancy in [BasePoolFactory._create(bytes,bytes32)](contracts/BasePoolFactory.sol#L119-L123):\n\tExternal calls:\n\t- [pool = CREATE3.deploy(_computeFinalSalt(salt),abi.encodePacked(_creationCode,constructorArgs),0)](contracts/BasePoolFactory.sol#L120)\n\tEvent emitted after the call(s):\n\t- [PoolCreated(pool)](contracts/BasePoolFactory.sol#L107)\n\t\t- [_registerPoolWithFactory(pool)](contracts/BasePoolFactory.sol#L122)\n", "first_markdown_element": "contracts/BasePoolFactory.sol#L119-L123", "id": "a6e68d97615fb430e85577f04bf4b24c4f8338129b798093ca191dc82a9133e8", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 1382, "length": 413, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "FactoryWidePauseWindow", "source_mapping": {"start": 803, "length": 2395, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(uint32)"}}, {"type": "node", "name": "pauseWindowEndTime > _MAX_TIMESTAMP", "source_mapping": {"start": 1513, "length": 35, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [34], "starting_column": 13, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 1382, "length": 413, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "FactoryWidePauseWindow", "source_mapping": {"start": 803, "length": 2395, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(uint32)"}}}}], "description": "FactoryWidePauseWindow.constructor(uint32) (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#31-42) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- pauseWindowEndTime > _MAX_TIMESTAMP (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#34)\n", "markdown": "[FactoryWidePauseWindow.constructor(uint32)](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#L31-L42) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [pauseWindowEndTime > _MAX_TIMESTAMP](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#L34)\n", "first_markdown_element": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#L31-L42", "id": "09ded9232017a56eb77fdbe47659b421af8ba066bb5f13e91a48898a2a651a10", "check": "timestamp", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "getNewPoolPauseWindowEndTime", "source_mapping": {"start": 2864, "length": 332, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [68, 69, 70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "FactoryWidePauseWindow", "source_mapping": {"start": 803, "length": 2395, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "getNewPoolPauseWindowEndTime()"}}, {"type": "node", "name": "(block.timestamp < _poolsPauseWindowEndTime)", "source_mapping": {"start": 3107, "length": 82, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [71], "starting_column": 9, "ending_column": 91}, "type_specific_fields": {"parent": {"type": "function", "name": "getNewPoolPauseWindowEndTime", "source_mapping": {"start": 2864, "length": 332, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [68, 69, 70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "FactoryWidePauseWindow", "source_mapping": {"start": 803, "length": 2395, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "getNewPoolPauseWindowEndTime()"}}}}], "description": "FactoryWidePauseWindow.getNewPoolPauseWindowEndTime() (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#68-72) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- (block.timestamp < _poolsPauseWindowEndTime) (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#71)\n", "markdown": "[FactoryWidePauseWindow.getNewPoolPauseWindowEndTime()](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#L68-L72) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [(block.timestamp < _poolsPauseWindowEndTime)](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#L71)\n", "first_markdown_element": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/helpers/FactoryWidePauseWindow.sol#L68-L72", "id": "65968849b18807a12b02e2f61955272a25b94fe2453d15479b80bb0ba9987ff8", "check": "timestamp", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deploy", "source_mapping": {"start": 2728, "length": 769, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CREATE3", "source_mapping": {"start": 570, "length": 3927, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deploy(bytes32,bytes,uint256)"}}, {"type": "node", "name": "", "source_mapping": {"start": 2972, "length": 272, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [48, 49, 50, 51, 52], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "deploy", "source_mapping": {"start": 2728, "length": 769, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CREATE3", "source_mapping": {"start": 570, "length": 3927, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deploy(bytes32,bytes,uint256)"}}}}], "description": "CREATE3.deploy(bytes32,bytes,uint256) (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#43-58) uses assembly\n\t- INLINE ASM (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#48-52)\n", "markdown": "[CREATE3.deploy(bytes32,bytes,uint256)](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#L43-L58) uses assembly\n\t- [INLINE ASM](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#L48-L52)\n", "first_markdown_element": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#L43-L58", "id": "9e36dbad81f19b563a865ef62974ac32896613b4453289488cbb96a23778c856", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "_canPerform", "source_mapping": {"start": 885, "length": 179, "filename_relative": "contracts/BasePoolAuthentication.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolAuthentication.sol", "filename_short": "contracts/BasePoolAuthentication.sol", "is_dependency": false, "lines": [23, 24, 25], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolAuthentication", "source_mapping": {"start": 349, "length": 906, "filename_relative": "contracts/BasePoolAuthentication.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolAuthentication.sol", "filename_short": "contracts/BasePoolAuthentication.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30], "starting_column": 1, "ending_column": 2}}, "signature": "_canPerform(bytes32,address)"}}], "description": "BasePoolAuthentication._canPerform(bytes32,address) (contracts/BasePoolAuthentication.sol#23-25) is never used and should be removed\n", "markdown": "[BasePoolAuthentication._canPerform(bytes32,address)](contracts/BasePoolAuthentication.sol#L23-L25) is never used and should be removed\n", "first_markdown_element": "contracts/BasePoolAuthentication.sol#L23-L25", "id": "17287c6c26a7c5161c919221e1b14daab998948667fa85e4e924ee924ee28cb7", "check": "dead-code", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_canPerform", "source_mapping": {"start": 1070, "length": 183, "filename_relative": "contracts/BasePoolAuthentication.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolAuthentication.sol", "filename_short": "contracts/BasePoolAuthentication.sol", "is_dependency": false, "lines": [27, 28, 29], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BasePoolAuthentication", "source_mapping": {"start": 349, "length": 906, "filename_relative": "contracts/BasePoolAuthentication.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/pkg/pool-utils/contracts/BasePoolAuthentication.sol", "filename_short": "contracts/BasePoolAuthentication.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30], "starting_column": 1, "ending_column": 2}}, "signature": "_canPerform(bytes32,address,address)"}}], "description": "BasePoolAuthentication._canPerform(bytes32,address,address) (contracts/BasePoolAuthentication.sol#27-29) is never used and should be removed\n", "markdown": "[BasePoolAuthentication._canPerform(bytes32,address,address)](contracts/BasePoolAuthentication.sol#L27-L29) is never used and should be removed\n", "first_markdown_element": "contracts/BasePoolAuthentication.sol#L27-L29", "id": "fb67e766c48a339f31f1ef1785dba9257664ce6531f048e699cf00a7e1d63b1e", "check": "dead-code", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "pragma", "name": "^0.8.20", "source_mapping": {"start": 107, "length": 24, "filename_relative": "../../node_modules/@openzeppelin/contracts/interfaces/IERC4626.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@openzeppelin/contracts/interfaces/IERC4626.sol", "filename_short": "../../node_modules/@openzeppelin/contracts/interfaces/IERC4626.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 25}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".20"]}}, {"type": "pragma", "name": "^0.8.20", "source_mapping": {"start": 106, "length": 24, "filename_relative": "../../node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/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": 25}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".20"]}}, {"type": "pragma", "name": "^0.8.20", "source_mapping": {"start": 125, "length": 24, "filename_relative": "../../node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/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": 25}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".20"]}}], "description": "Version constraint ^0.8.20 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)\n\t- VerbatimInvalidDeduplication\n\t- FullInlinerNonExpressionSplitArgumentEvaluationOrder\n\t- MissingSideEffectsOnSelectorAccess.\nIt is used by:\n\t- ^0.8.20 (../../node_modules/@openzeppelin/contracts/interfaces/IERC4626.sol#4)\n\t- ^0.8.20 (../../node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#4)\n\t- ^0.8.20 (../../node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#4)\n", "markdown": "Version constraint ^0.8.20 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)\n\t- VerbatimInvalidDeduplication\n\t- FullInlinerNonExpressionSplitArgumentEvaluationOrder\n\t- MissingSideEffectsOnSelectorAccess.\nIt is used by:\n\t- [^0.8.20](../../node_modules/@openzeppelin/contracts/interfaces/IERC4626.sol#L4)\n\t- [^0.8.20](../../node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4)\n\t- [^0.8.20](../../node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4)\n", "first_markdown_element": "../../node_modules/@openzeppelin/contracts/interfaces/IERC4626.sol#L4", "id": "74752076757623cf219b5da0196bff9a33f80cca0735bb537634cde914f72095", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "deploy", "source_mapping": {"start": 2728, "length": 769, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CREATE3", "source_mapping": {"start": 570, "length": 3927, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deploy(bytes32,bytes,uint256)"}}, {"type": "node", "name": "(success,None) = proxy.call{value: value}(creationCode)", "source_mapping": {"start": 3351, "length": 59, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [56], "starting_column": 9, "ending_column": 68}, "type_specific_fields": {"parent": {"type": "function", "name": "deploy", "source_mapping": {"start": 2728, "length": 769, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CREATE3", "source_mapping": {"start": 570, "length": 3927, "filename_relative": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_absolute": "/Users/jeff/balancer-v3-monorepo/node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "filename_short": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol", "is_dependency": true, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deploy(bytes32,bytes,uint256)"}}}}], "description": "Low level call in CREATE3.deploy(bytes32,bytes,uint256) (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#43-58):\n\t- (success,None) = proxy.call{value: value}(creationCode) (../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#56)\n", "markdown": "Low level call in [CREATE3.deploy(bytes32,bytes,uint256)](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#L43-L58):\n\t- [(success,None) = proxy.call{value: value}(creationCode)](../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#L56)\n", "first_markdown_element": "../../node_modules/@balancer-labs/v3-solidity-utils/contracts/solmate/CREATE3.sol#L43-L58", "id": "680d43f56cc684b2411f2d3d1260ffdb87a783c4f74f94a67091b3dcd13194f9", "check": "low-level-calls", "impact": "Informational", "confidence": "High"}]