1use serde::{Deserialize, Serialize};
2use solana_pubkey::Pubkey;
3
4#[derive(Debug, Serialize, Deserialize)]
5pub struct Traded {
6 pub whirlpool: Pubkey,
7 pub a_to_b: bool,
8 pub pre_sqrt_price: u128,
9 pub post_sqrt_price: u128,
10 pub input_amount: u64,
11 pub output_amount: u64,
12 pub input_transfer_fee: u64,
13 pub output_transfer_fee: u64,
14 pub lp_fee: u64,
15 pub protocol_fee: u64,
16}
17
18pub fn decode_trade_log(log: &str) {
19 let bytes = base64::decode_config(log, base64::STANDARD).unwrap();
20 let log: Traded = bincode::deserialize(&bytes[8..]).unwrap();
21 println!("{:?}", log);
22}