1
2
3
4
5
6
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
use std::{error::Error, str::FromStr, sync::Arc};
use ethers::{
providers::{Http, Provider},
types::H160,
};
use cfmms::{
dex::{Dex, DexVariant},
sync,
};
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let rpc_endpoint = "";
let provider = Arc::new(Provider::<Http>::try_from(rpc_endpoint).unwrap());
let dexes = vec![
(Dex::new(
H160::from_str("0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f").unwrap(),
DexVariant::UniswapV2,
2638438,
)),
Dex::new(
H160::from_str("0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac").unwrap(),
DexVariant::UniswapV2,
10794229,
),
Dex::new(
H160::from_str("0x1F98431c8aD98523631AE4a59f267346ea31F984").unwrap(),
DexVariant::UniswapV3,
12369621,
),
];
sync::sync_pairs(dexes, provider, false).await?;
Ok(())
}