Skip to content

Commit 1f73f5c

Browse files
Merge pull request #103 from euler-xyz/deployment-addresses
feat: deployment addresses
2 parents d92aa32 + 795bafc commit 1f73f5c

File tree

2 files changed

+96
-11
lines changed

2 files changed

+96
-11
lines changed

README.md

Lines changed: 91 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,21 +48,103 @@ forge coverage
4848
forge doc --serve --port 4000
4949
```
5050

51-
## Deployments
51+
## Deployment Addresses
5252

53-
### Mainnet
53+
On networks where Uniswap v4 is deployed, EulerSwap is deployed using a factory variant that creates Uniswap v4 hook compatible instances. Elsewhere, the original 'OG' version of EulerSwap factory is deployed.
5454

55-
Uniswap4 Hook Compatible:
55+
## With Uniswap v4 Hook
5656

57-
- EulerSwapFactory: `0xb013be1D0D380C13B58e889f412895970A2Cf228`
58-
- EulerSwapPeriphery: `0x208fF5Eb543814789321DaA1B5Eb551881D16b06`
57+
### Mainnet (id: 1)
5958

60-
### Unichain
59+
```javascript
60+
{
61+
"eulerSwapV1Factory": "0xb013be1D0D380C13B58e889f412895970A2Cf228",
62+
"eulerSwapV1Implementation": "0xc35a0FDA69e9D71e68C0d9CBb541Adfd21D6B117",
63+
"eulerSwapV1Periphery": "0x208fF5Eb543814789321DaA1B5Eb551881D16b06"
64+
}
65+
```
66+
67+
### Unichain (id: 130)
68+
69+
```javascript
70+
{
71+
"eulerSwapV1Factory": "0x45b146BC07c9985589B52df651310e75C6BE066A",
72+
"eulerSwapV1Implementation": "0xd91B0bfACA4691E6Aca7E0E83D9B7F8917989a03",
73+
"eulerSwapV1Periphery": "0xdAAF468d84DD8945521Ea40297ce6c5EEfc7003a"
74+
}
75+
```
76+
77+
### Avalanche C-Chain (id: 43114)
78+
79+
```javascript
80+
{
81+
"eulerSwapV1Factory": "0x8A1D3a4850ed7deeC9003680Cf41b8E75D27e440",
82+
"eulerSwapV1Implementation": "0x4F4FDeE3568aC31C46634fb2Df3FF44A156Be351",
83+
"eulerSwapV1Periphery": "0x31F34124a37f94efd17201A1B88d5008cD444c72"
84+
}
85+
```
86+
87+
### BNB Smart Chain (id: 56)
88+
89+
```javascript
90+
{
91+
"eulerSwapV1Factory": "0x3e378e5E339DF5e0Da32964F9EEC2CDb90D28Cc7",
92+
"eulerSwapV1Implementation": "0x16BCa43290b77409e6D1c92B929f7A09C0E4EE86",
93+
"eulerSwapV1Periphery": "0xa8826Bb29f875Db4c4b482463961776390774525"
94+
}
95+
```
96+
97+
### Base (id: 8453)
98+
99+
```javascript
100+
{
101+
"eulerSwapV1Factory": "0xf0CFe22d23699ff1B2CFe6B8f706A6DB63911262",
102+
"eulerSwapV1Implementation": "0x3Ce63C16CB719a0c755DA25cd5dD35170A00424f",
103+
"eulerSwapV1Periphery": "0x18e5F5C1ff5e905b32CE860576031AE90E1d1336"
104+
}
105+
```
106+
107+
## Without Uniswap v4 Hook
108+
109+
### Sonic (id: 146)
110+
111+
```javascript
112+
{
113+
"eulerSwapV1Factory": "0x94041db6deC15f79666B07846c13e6F7341b4a80",
114+
"eulerSwapV1Implementation": "0x4D57F54582b333E4184A3cF40d1D61FE6D70c35D",
115+
"eulerSwapV1Periphery": "0xb2237DC86B184e50Fc2F8b028B2b7AE192ef2566"
116+
}
117+
```
118+
119+
### Swellchain (id: 1923)
61120

62-
Uniswap4 Hook Compatible:
121+
```javascript
122+
{
123+
"eulerSwapV1Factory": "0x976dd85654B3b2f9fb66280ACE30Cab7C81a2130",
124+
"eulerSwapV1Implementation": "0x3620dAb0DB5595479a4D5408595D48FbE48CeA2A",
125+
"eulerSwapV1Periphery": "0x34932C04c3d27c2BD7aCd0B5d203bfd65a17f481"
126+
}
127+
```
128+
129+
### Berachain (id: 80094)
130+
131+
```javascript
132+
{
133+
"eulerSwapV1Factory": "0xD14c95dc228E8851F63d9b83A0001F4D021B5DFf",
134+
"eulerSwapV1Implementation": "0x0e05d236cb6c350935751A73e834A13111998e3c",
135+
"eulerSwapV1Periphery": "0x46F951278f52f4798542C51BfB8Df1c165199150"
136+
}
137+
```
138+
139+
### BOB (id: 60808)
63140

64-
- EulerSwapFactory: `0x45b146BC07c9985589B52df651310e75C6BE066A`
65-
- EulerSwapPeriphery: `0xdAAF468d84DD8945521Ea40297ce6c5EEfc7003a`
141+
```javascript
142+
{
143+
"eulerSwapV1Factory": "0xE25B3cdA6fccAcbD794aEA64eE1B496d7b441644",
144+
"eulerSwapV1Implementation": "0x334eac29ffAc27E6BC3484A738DAf520359698F0",
145+
"eulerSwapV1Periphery": "0x199cC7C8606088bc22D82CDae2D7EE7F5F99ec9F"
146+
}
147+
```
66148

67149
## Getting Started
68150

script/DeployPool.s.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ contract DeployPool is ScriptUtil {
2222
EulerSwapFactory factory = EulerSwapFactory(vm.parseJsonAddress(json, ".factory"));
2323

2424
address pool = factory.poolByEulerAccount(eulerAccount);
25-
require(pool == address(0), "EulerSwap pool is already installed for this account. Run the uninstall script first.");
25+
require(
26+
pool == address(0), "EulerSwap pool is already installed for this account. Run the uninstall script first."
27+
);
2628

2729
IEulerSwap.Params memory poolParams = IEulerSwap.Params({
2830
vault0: vm.parseJsonAddress(json, ".vault0"),
@@ -43,7 +45,8 @@ contract DeployPool is ScriptUtil {
4345
currReserve1: uint112(vm.parseJsonUint(json, ".currReserve1"))
4446
});
4547

46-
bytes memory creationCode = MetaProxyDeployer.creationCodeMetaProxy(factory.eulerSwapImpl(), abi.encode(poolParams));
48+
bytes memory creationCode =
49+
MetaProxyDeployer.creationCodeMetaProxy(factory.eulerSwapImpl(), abi.encode(poolParams));
4750
(address predictedPoolAddress, bytes32 salt) = HookMiner.find(
4851
address(address(factory)),
4952
uint160(

0 commit comments

Comments
 (0)