# BIP-192: Wire-up authorizer permissions on new linear pool factories

**URL:** <https://forum.balancer.fi/t/bip-192-wire-up-authorizer-permissions-on-new-linear-pool-factories/4417>\
**Category:** General Proposal\
**Created:** [February 16, 2023, 7:37pm UTC](https://forum.balancer.fi/t/bip-192-wire-up-authorizer-permissions-on-new-linear-pool-factories/4417 "2023-02-16T19:37:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tritium](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.balancer.fi/tritium/32/2011_2.png) [@Tritium](https://forum.balancer.fi/u/Tritium)\
**Post date:** [February 16, 2023, 7:37pm UTC](https://forum.balancer.fi/t/bip-192-wire-up-authorizer-permissions-on-new-linear-pool-factories/4417/1 "2023-02-16T19:37:09Z")

</div>

## [Payload PR - BIP-192](https://github.com/BalancerMaxis/multisig-ops/pull/75)

## Background

Following [BIP-175](https://forum.balancer.fi/t/bip-175-grant-permissions-for-v3-pool-factories/4360) amd [BIP-183](https://forum.balancer.fi/t/bip-183-grant-v2-factory-disable-and-v3-standard-permissions-on-gnosis-chain/4385) the a number of new linear pool factories and pools have been deployed to provide base tokens for LPs wishing to build on the [Core Pools concept](https://docs.balancer.fi/concepts/governance/protocol-fees.html#core-pool-fees). This BIP seeks to grant the standard administrative permissions for these new factories and the pools they spawn.

## English Specification

The transaction details were generated by [this script](https://github.com/BalancerMaxis/multisig-ops/blob/main/tools/python/gen_add_permissions_payload.py) with inputs and outputs in [this directory](https://github.com/BalancerMaxis/multisig-ops/tree/staging/BIPs/BIP-192)

The following files can be found both linked below and in the payload PR linked above:

| Filename | Description of Contents |
| --- | --- |
| [inputs.json](https://github.com/BalancerMaxis/multisig-ops/blob/staging/BIPs/BIP-192/inputs.json) | The inputs to the script mapping functions and deployments to target addresses that can execute them. |
| [results\_address\_sorted.md](https://github.com/BalancerMaxis/multisig-ops/blob/staging/BIPs/BIP-192/results_address_sorted.md) | The resulting changes printed in a table sorted by target chain and target address. (to easily understand permisisons granted) |
| [results\_deployment\_sorted.md](https://github.com/BalancerMaxis/multisig-ops/blob/staging/BIPs/BIP-192/results_deployment_sorted.md) | The resulting changes printed in a table sorted by target chain and target deployment. (for verification against action ids) |
| [function\_descriptions.md](https://github.com/BalancerMaxis/multisig-ops/blob/staging/BIPs/BIP-192/function_descriptions.md) | A table that describes what each function that is being granted privileged access to allows. |
| [`chainname`.json](https://github.com/BalancerMaxis/multisig-ops/tree/staging/BIPs/BIP-192/) | For each change with changes, a transaction builder json named after said chain exists to apply the changes described in the tables. |

In the tables above:

The “emergency” caller group:

- maps to the Balancer Emergency DAO Multisig as defined in [this vote](https://forum.balancer.fi/t/form-the-emergency-subdao/3197).

The “feeManager” caller group:

- maps to the feeManager multisig controlled by the Balancer Maxis on all chains except mainnet.
- On mainnet a special feeSetter multisig exists to manage a-factors and a gautletFeeSetter contract that allows bulk changing of fees.
- The maxi’s functionally control all contracts that make up the feeManager target group.

_More information about the various Balancer Multisigs and their functions can be found in the [multisig-ops repo](https://github.com/BalancerMaxis/multisig-ops/blob/staging/multisigs.md)_

# Specification

As described in the payload json, the authorizer will be called to grant the roles as described.

For record, the contents of [results\_address\_sorted.md](https://github.com/BalancerMaxis/multisig-ops/blob/staging/BIPs/BIP-192/results_address_sorted.md) are printed here:

| deployment | chain | function | role | target | target\_address |
| --- | --- | --- | --- | --- | --- |
| 20230206-aave-rebalanced-linear-pool-v4 | arbitrum | setSwapFeePercentage(uint256) | 0x6e1c8947d790e79a7f8b6b195b2ec3231b6b9bd27a74f04b192aacd8e93f3660 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-aave-rebalanced-linear-pool-v4 | arbitrum | setTargets(uint256,uint256) | 0xb78893595b75c70259cbe387580b752c333e0a52d40fb98d6bcdf4b54b0cef91 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-erc4626-linear-pool-v3 | arbitrum | setSwapFeePercentage(uint256) | 0x4e369965828f3a76cdcb37d24a69a3ddf1f0bbfa9110f9978e25d804504b279f | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-erc4626-linear-pool-v3 | arbitrum | setTargets(uint256,uint256) | 0x342f10e709ad2a053a4e5035c4b3b703fea94c19f458d3887a6323472f0e42cd | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230213-yearn-linear-pool | arbitrum | setSwapFeePercentage(uint256) | 0x3e6c904353f81ad8c8ed1a0e926cebf468aeaba4c280147e2d32030a359746f5 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230213-yearn-linear-pool | arbitrum | setTargets(uint256,uint256) | 0x4cc8eb383f0521484d9a2bc36774c7eb2c8fcc5a9170f797b9509164f5e449fc | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-aave-rebalanced-linear-pool-v4 | arbitrum | disable() | 0x06efe7e891755c060de5033e398e2d4d9f1bc713591717209ef84b7e021bd154 | emergency | 0xf404C5a0c02397f0908A3524fc5eb84e68Bbe60D |
| 20230206-erc4626-linear-pool-v3 | arbitrum | disable() | 0x5ec883ecf16774e6b304f1e06322669694ffb90c13167afeac8ed7b68ab0869e | emergency | 0xf404C5a0c02397f0908A3524fc5eb84e68Bbe60D |
| 20230213-yearn-linear-pool | arbitrum | disable() | 0x204435acb6f76b6cfa0ef594fc0e4379b943252865ff8edb9a6d07e718ca12e8 | emergency | 0xf404C5a0c02397f0908A3524fc5eb84e68Bbe60D |
| 20230206-aave-rebalanced-linear-pool-v4 | gnosis | setSwapFeePercentage(uint256) | 0x2ae3adc781b5bd1b6741f6a0d64c69c177a309fa771c818a298f437b11e338a9 | feeManager | 0x14969B55a675d13a1700F71A37511bc22D90155a |
| 20230206-aave-rebalanced-linear-pool-v4 | gnosis | setTargets(uint256,uint256) | 0xc4f7c40d1a1c9c1b1f2c156f3cff7d927a45ed28ae5b64d1fb81ea8ca888ee95 | feeManager | 0x14969B55a675d13a1700F71A37511bc22D90155a |
| 20230206-aave-rebalanced-linear-pool-v4 | gnosis | disable() | 0xf27a3cfffd6082308886cb5ef66425202d4b3180e84c6852d7d8109b4228a5ec | emergency | 0xd6110A7756080a4e3BCF4e7EBBCA8E8aDFBC9962 |
| 20230206-aave-rebalanced-linear-pool-v4 | mainnet | disable() | 0x50f3f826f5b6f34e6b9291e41967ce5c8f5cbd998ab8b3f740cf2bb02e2e6ea0 | emergency | 0xA29F61256e948F3FB707b4b3B138C5cCb9EF9888 |
| 20230206-erc4626-linear-pool-v3 | mainnet | disable() | 0xb1bb0315049487d8b225a40fc17d5a02647e84002cfa5b11eda57b967629f72c | emergency | 0xA29F61256e948F3FB707b4b3B138C5cCb9EF9888 |
| 20230213-yearn-linear-pool | mainnet | disable() | 0xc6d41c26426784c7fab7298da04eab2259046b3c7c8351286ee364e4e0a3bd1e | emergency | 0xA29F61256e948F3FB707b4b3B138C5cCb9EF9888 |
| 20230208-euler-linear-pool | mainnet | disable() | 0xdf42af2dd96057a6f29e617c9d6c389e3ac79347b2e4d0b06b8d33cd7e15c40b | emergency | 0xA29F61256e948F3FB707b4b3B138C5cCb9EF9888 |
| 20230213-gearbox-linear-pool | mainnet | disable() | 0xa29d20c33a203d4663b49d6135fd5876558c9bf107a898f7a0e95357ec2e42b1 | emergency | 0xA29F61256e948F3FB707b4b3B138C5cCb9EF9888 |
| 20230206-aave-rebalanced-linear-pool-v4 | mainnet | setSwapFeePercentage(uint256) | 0xdc4d63c40d0a7a13b082c0bfcc25b1ad5b79ab783d81da5dca1cdc51c2a64ac6 | gauntletFeeSetter | 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B |
| 20230206-erc4626-linear-pool-v3 | mainnet | setSwapFeePercentage(uint256) | 0xf0498ccb15b689c1257a638831837f9a1a6e21c1530e7b0c4f9e0fa6af0651c9 | gauntletFeeSetter | 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B |
| 20230213-yearn-linear-pool | mainnet | setSwapFeePercentage(uint256) | 0xafb360e583a4ccc8e9935d214a3031628a34797c2f2a1d2f52505137a54c5796 | gauntletFeeSetter | 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B |
| 20230208-euler-linear-pool | mainnet | setSwapFeePercentage(uint256) | 0xb6bd869a6825ba2f1c9eba4c1d907dd5791b335cebd7f401b5f5efb9340a4450 | gauntletFeeSetter | 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B |
| 20230213-gearbox-linear-pool | mainnet | setSwapFeePercentage(uint256) | 0x69f726d607e0cfd6af767f629799bd33e396b1bad79f46a94a8d88a1ab08abbe | gauntletFeeSetter | 0xE4a8ed6c1D8d048bD29A00946BFcf2DB10E7923B |
| 20230206-aave-rebalanced-linear-pool-v4 | mainnet | setTargets(uint256,uint256) | 0xc5fa0b5a00f4912a6fcf5435bcb7507106a6a5b7923a95a167496a6de8a7b658 | feeManager | 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 |
| 20230206-erc4626-linear-pool-v3 | mainnet | setTargets(uint256,uint256) | 0x98ac729537b2c4aea25f652542bb7769f700500018ca6a9f9879466f75194838 | feeManager | 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 |
| 20230213-yearn-linear-pool | mainnet | setTargets(uint256,uint256) | 0x44c2c324db39782f28032ff6aa4234a8ed6d95a11e194006e5b63213abdd209f | feeManager | 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 |
| 20230208-euler-linear-pool | mainnet | setTargets(uint256,uint256) | 0x3c41e27d020ed56c209b202d47efeb4484e52537c3e6ec646e8ba1c123ea16cf | feeManager | 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 |
| 20230213-gearbox-linear-pool | mainnet | setTargets(uint256,uint256) | 0x48860201a4ce2338c9b0cd0a11ef9bffea1ee89bf1f610a71e12a2817be310ec | feeManager | 0xf4A80929163C5179Ca042E1B292F5EFBBE3D89e6 |
| 20230206-aave-rebalanced-linear-pool-v4 | optimism | setSwapFeePercentage(uint256) | 0x6e1c8947d790e79a7f8b6b195b2ec3231b6b9bd27a74f04b192aacd8e93f3660 | feeManager | 0x09Df1626110803C7b3b07085Ef1E053494155089 |
| 20230206-aave-rebalanced-linear-pool-v4 | optimism | setTargets(uint256,uint256) | 0xb78893595b75c70259cbe387580b752c333e0a52d40fb98d6bcdf4b54b0cef91 | feeManager | 0x09Df1626110803C7b3b07085Ef1E053494155089 |
| 20230206-erc4626-linear-pool-v3 | optimism | setSwapFeePercentage(uint256) | 0x4e369965828f3a76cdcb37d24a69a3ddf1f0bbfa9110f9978e25d804504b279f | feeManager | 0x09Df1626110803C7b3b07085Ef1E053494155089 |
| 20230206-erc4626-linear-pool-v3 | optimism | setTargets(uint256,uint256) | 0x342f10e709ad2a053a4e5035c4b3b703fea94c19f458d3887a6323472f0e42cd | feeManager | 0x09Df1626110803C7b3b07085Ef1E053494155089 |
| 20230213-yearn-linear-pool | optimism | setSwapFeePercentage(uint256) | 0x3e6c904353f81ad8c8ed1a0e926cebf468aeaba4c280147e2d32030a359746f5 | feeManager | 0x09Df1626110803C7b3b07085Ef1E053494155089 |
| 20230213-yearn-linear-pool | optimism | setTargets(uint256,uint256) | 0x4cc8eb383f0521484d9a2bc36774c7eb2c8fcc5a9170f797b9509164f5e449fc | feeManager | 0x09Df1626110803C7b3b07085Ef1E053494155089 |
| 20230206-aave-rebalanced-linear-pool-v4 | optimism | disable() | 0x06efe7e891755c060de5033e398e2d4d9f1bc713591717209ef84b7e021bd154 | emergency | 0xd4c87b33afcE39F1E3F4aF1ce8fFFF7241d9128B |
| 20230206-erc4626-linear-pool-v3 | optimism | disable() | 0x5ec883ecf16774e6b304f1e06322669694ffb90c13167afeac8ed7b68ab0869e | emergency | 0xd4c87b33afcE39F1E3F4aF1ce8fFFF7241d9128B |
| 20230213-yearn-linear-pool | optimism | disable() | 0x204435acb6f76b6cfa0ef594fc0e4379b943252865ff8edb9a6d07e718ca12e8 | emergency | 0xd4c87b33afcE39F1E3F4aF1ce8fFFF7241d9128B |
| 20230206-aave-rebalanced-linear-pool-v4 | polygon | disable() | 0x06efe7e891755c060de5033e398e2d4d9f1bc713591717209ef84b7e021bd154 | emergency | 0x3c58668054c299bE836a0bBB028Bee3aD4724846 |
| 20230206-erc4626-linear-pool-v3 | polygon | disable() | 0x5ec883ecf16774e6b304f1e06322669694ffb90c13167afeac8ed7b68ab0869e | emergency | 0x3c58668054c299bE836a0bBB028Bee3aD4724846 |
| 20230213-yearn-linear-pool | polygon | disable() | 0x6b623ee459a550297f0b0660446eef4dbf89e9d7e9d29addbbe907763506089b | emergency | 0x3c58668054c299bE836a0bBB028Bee3aD4724846 |
| 20230206-aave-rebalanced-linear-pool-v4 | polygon | setSwapFeePercentage(uint256) | 0x6e1c8947d790e79a7f8b6b195b2ec3231b6b9bd27a74f04b192aacd8e93f3660 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-aave-rebalanced-linear-pool-v4 | polygon | setTargets(uint256,uint256) | 0xb78893595b75c70259cbe387580b752c333e0a52d40fb98d6bcdf4b54b0cef91 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-erc4626-linear-pool-v3 | polygon | setSwapFeePercentage(uint256) | 0x4e369965828f3a76cdcb37d24a69a3ddf1f0bbfa9110f9978e25d804504b279f | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230206-erc4626-linear-pool-v3 | polygon | setTargets(uint256,uint256) | 0x342f10e709ad2a053a4e5035c4b3b703fea94c19f458d3887a6323472f0e42cd | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230213-yearn-linear-pool | polygon | setSwapFeePercentage(uint256) | 0xe2034e57b6e5473c618804022a6b6a56a83df1c39435869038988698f9137b73 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |
| 20230213-yearn-linear-pool | polygon | setTargets(uint256,uint256) | 0x2342e50fb8143fdbef50d38a2b88596172ad4e0c57a39fdbf27bc56c02d3bba3 | feeManager | 0x7c68c42De679ffB0f16216154C996C354cF1161B |

## Risk Assessment

This BIP is routine operation for provisioning a new factory. The new factories are themselves a risk mitigation.

## References

[Directory of Addresses used by script which generated the table and multsig payloads](https://github.com/BalancerMaxis/multisig-ops/blob/main/tools/python/brownie/helpers/addresses.py)

---

<div class="post-metadata">

**Author:** ![solarcurve](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.balancer.fi/solarcurve/32/1487_2.png) [@solarcurve](https://forum.balancer.fi/u/solarcurve)\
**Post date:** [February 16, 2023, 7:43pm UTC](https://forum.balancer.fi/t/bip-192-wire-up-authorizer-permissions-on-new-linear-pool-factories/4417/2 "2023-02-16T19:43:42Z")

</div>

[https://snapshot.org/#/balancer.eth/proposal/0xeefd899b02403811aa053b8895a7fd0e23efd6c834ed50ee50994dc4a9f3fa85](https://snapshot.org/#/balancer.eth/proposal/0xeefd899b02403811aa053b8895a7fd0e23efd6c834ed50ee50994dc4a9f3fa85)
