From 9e471c36a2b35363498bec936e80300f17c6d6c4 Mon Sep 17 00:00:00 2001
From: 0xfnzero <0xfnzero@users.noreply.github.com>
Date: Mon, 26 Oct 2026 05:36:59 +0800
Subject: [PATCH] release: solana-streamer 5.0.1
---
.cargo/config.toml | 7 +-
Cargo.toml | 4 +-
README.md | 34 +-
README_CN.md | 34 +-
RELEASE_NOTES.md | 29 +-
docs/STOCK_BRIDGE_SYNC.md | 2 +-
examples/rpc_transaction_replay.rs | 72 +-
.../parser_sdk_bridge/pump_pumpswap.rs | 25 +-
tests/fixtures/pump_create_alt_20261026.json | 1652 +++++++++++++++++
tests/fixtures/pump_multi_hop_20261025.json | 738 ++++++++
tests/pump_execution.rs | 124 ++
11 files changed, 2639 insertions(+), 82 deletions(-)
create mode 100644 tests/fixtures/pump_create_alt_20261026.json
create mode 100644 tests/fixtures/pump_multi_hop_20261025.json
diff --git a/.cargo/config.toml b/.cargo/config.toml
index cc3faa9..55b6949 100644
--- a/.cargo/config.toml
+++ b/.cargo/config.toml
@@ -1,10 +1,9 @@
-# Standard Cargo settings; sccache is optional, and no local path is required.
-# Optional: RUSTC_WRAPPER=sccache SCCACHE_CACHE_SIZE=10G cargo build --release
-# Keep target-dir, release optimization and linker settings project-specific.
-
[build]
incremental = false
+# Standard Cargo settings; sccache is optional, and no local path is required.
+# Optional: RUSTC_WRAPPER=sccache SCCACHE_CACHE_SIZE=10G cargo build --release
+# Keep target-dir, release optimization and linker settings project-specific.
[profile.dev]
debug = 1
diff --git a/Cargo.toml b/Cargo.toml
index 53eb269..48c10a8 100755
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "solana-streamer-sdk"
-version = "5.0.0"
+version = "5.0.1"
edition = "2021"
rust-version = "1.91"
authors = ["William ", "sgxiang ", "wei <1415121722@qq.com>"]
@@ -22,7 +22,7 @@ sdk-perf-stats = ["sol-parser-sdk/perf-stats"]
sdk-ultra-perf = ["sol-parser-sdk/ultra-perf"]
[dependencies]
-sol-parser-sdk = { version = "=0.9.1", default-features = false }
+sol-parser-sdk = { version = "=0.10.0", default-features = false }
solana-sdk = "=4.0.1"
solana-client = "=4.2.2"
solana-transaction-status = { version = "=4.2.2", features = ["agave-unstable-api"] }
diff --git a/README.md b/README.md
index 65a2556..31c29ce 100755
--- a/README.md
+++ b/README.md
@@ -40,7 +40,7 @@
Discord
-Current version: **5.0.0**. Read the [migration notes](RELEASE_NOTES.md) before upgrading; see the [changelog](CHANGELOG.md) for historical changes.
+Current version: **5.0.1**. Read the [migration notes](RELEASE_NOTES.md) before upgrading; see the [changelog](CHANGELOG.md) for historical changes.
## Contents
@@ -63,17 +63,17 @@ Repositories are versioned independently; follow each SDK’s installation guide
| Language | Repository | Purpose | Version |
|----------|------------|-------------|---------|
-| Rust | [sol-parser-sdk](https://github.com/0xfnzero/sol-parser-sdk) | DEX transaction and account event parsing | `v0.9.1` |
-| Node.js | [sol-parser-sdk-nodejs](https://github.com/0xfnzero/sol-parser-sdk-nodejs) | DEX transaction and account event parsing | `v0.9.1` |
-| Python | [sol-parser-sdk-python](https://github.com/0xfnzero/sol-parser-sdk-python) | DEX transaction and account event parsing | `v0.9.1` |
-| Go | [sol-parser-sdk-golang](https://github.com/0xfnzero/sol-parser-sdk-golang) | DEX transaction and account event parsing | `v0.9.1` |
-| Rust | [sol-trade-sdk](https://github.com/0xfnzero/sol-trade-sdk) | Transaction building, signing and multi-channel submission | `v9.0.1` |
-| Node.js | [sol-trade-sdk-nodejs](https://github.com/0xfnzero/sol-trade-sdk-nodejs) | Transaction building, signing and multi-channel submission | `v9.0.1` |
-| Python | [sol-trade-sdk-python](https://github.com/0xfnzero/sol-trade-sdk-python) | Transaction building, signing and multi-channel submission | `v9.0.1` |
-| Go | [sol-trade-sdk-golang](https://github.com/0xfnzero/sol-trade-sdk-golang) | Transaction building, signing and multi-channel submission | `v9.0.1` |
-| Rust | [sol-shred-sdk](https://github.com/0xfnzero/sol-shred-sdk) | Raw shred decoding and ShredStream instruction events | `v6.0.1` |
-| Rust | [solana-streamer](https://github.com/0xfnzero/solana-streamer) | gRPC / ShredStream subscriptions and event streaming | `v5.0.0` |
-| Rust | [sol-trade-router-sdk](https://github.com/0xfnzero/sol-trade-router-sdk) | On-chain multi-hop router and client SDK | `v0.3.0` |
+| Rust | [sol-parser-sdk](https://github.com/0xfnzero/sol-parser-sdk) | DEX transaction and account event parsing | `v0.10.0` |
+| Node.js | [sol-parser-sdk-nodejs](https://github.com/0xfnzero/sol-parser-sdk-nodejs) | DEX transaction and account event parsing | `v0.10.0` |
+| Python | [sol-parser-sdk-python](https://github.com/0xfnzero/sol-parser-sdk-python) | DEX transaction and account event parsing | `v0.10.0` |
+| Go | [sol-parser-sdk-golang](https://github.com/0xfnzero/sol-parser-sdk-golang) | DEX transaction and account event parsing | `v0.10.0` |
+| Rust | [sol-trade-sdk](https://github.com/0xfnzero/sol-trade-sdk) | Transaction building, signing and multi-channel submission | `v10.0.0` |
+| Node.js | [sol-trade-sdk-nodejs](https://github.com/0xfnzero/sol-trade-sdk-nodejs) | Transaction building, signing and multi-channel submission | `v10.0.0` |
+| Python | [sol-trade-sdk-python](https://github.com/0xfnzero/sol-trade-sdk-python) | Transaction building, signing and multi-channel submission | `v10.0.0` |
+| Go | [sol-trade-sdk-golang](https://github.com/0xfnzero/sol-trade-sdk-golang) | Transaction building, signing and multi-channel submission | `v10.0.0` |
+| Rust | [sol-shred-sdk](https://github.com/0xfnzero/sol-shred-sdk) | Raw shred decoding and ShredStream instruction events | `v6.0.2` |
+| Rust | [solana-streamer](https://github.com/0xfnzero/solana-streamer) | gRPC / ShredStream subscriptions and event streaming | `v5.0.1` |
+| Rust | [sol-trade-router-sdk](https://github.com/0xfnzero/sol-trade-router-sdk) | On-chain multi-hop router and client SDK | `v0.4.0` |
@@ -81,17 +81,17 @@ Repositories are versioned independently; follow each SDK’s installation guide
```toml
# Add to your Cargo.toml
-solana-streamer-sdk = "5.0.0"
+solana-streamer-sdk = "5.0.1"
```
Parser backend features:
```toml
# Default: sol-parser-sdk parse-borsh backend
-solana-streamer-sdk = "5.0.0"
+solana-streamer-sdk = "5.0.1"
# Zero-copy parser backend for latency-sensitive bots
-solana-streamer-sdk = { version = "5.0.0", default-features = false, features = ["sdk-parse-zero-copy"] }
+solana-streamer-sdk = { version = "5.0.1", default-features = false, features = ["sdk-parse-zero-copy"] }
```
If both `sdk-parse-borsh` and `sdk-parse-zero-copy` are enabled, `sol-parser-sdk 0.6.1+` uses the zero-copy backend.
@@ -109,7 +109,7 @@ Add the dependency to your `Cargo.toml`:
```toml
# Add to your Cargo.toml
-solana-streamer-sdk = { path = "./solana-streamer", version = "5.0.0" }
+solana-streamer-sdk = { path = "./solana-streamer", version = "5.0.1" }
```
@@ -309,6 +309,8 @@ gRPC/RPC use supplied execution metadata and actual CPI instructions; Shred sees
The parsing hot path performs no RPC. Check `parse_status` before interpreting defaults as amounts. Original account order and instruction bytes remain in `third_program`; transaction position and receive time remain in event metadata. A local Shred index is not confirmed slot-wide execution order. See [wrapped transactions](docs/wrapped-pumpfun.md).
+Known Pump.fun create/trade instructions keep their callbacks with unresolved ALT accounts; unknown addresses stay unknown. The bridge preserves `create_v2`, V2/V3 method names, original creation accounts and official `multi_hop_swap` provenance. Run `cargo run --example rpc_transaction_replay` to compare the reported signed transactions through the static Shred and execution facades offline. Shred route budgets are not per-hop fill amounts; execution metadata supplies actual quote/token amounts.
+
## ⚙️ Configuration System
diff --git a/README_CN.md b/README_CN.md
index 43af07e..fd1182f 100644
--- a/README_CN.md
+++ b/README_CN.md
@@ -40,7 +40,7 @@
Discord
-当前版本:**5.0.0**。升级前请阅读 [迁移说明](RELEASE_NOTES.md);历史变更见 [版本记录](CHANGELOG_CN.md)。
+当前版本:**5.0.1**。升级前请阅读 [迁移说明](RELEASE_NOTES.md);历史变更见 [版本记录](CHANGELOG_CN.md)。
## 目录
@@ -63,17 +63,17 @@
| 语言 | 仓库 | 用途 | 版本 |
|----------|------------|-------------|---------|
-| Rust | [sol-parser-sdk](https://github.com/0xfnzero/sol-parser-sdk) | DEX 交易与账户事件解析 | `v0.9.1` |
-| Node.js | [sol-parser-sdk-nodejs](https://github.com/0xfnzero/sol-parser-sdk-nodejs) | DEX 交易与账户事件解析 | `v0.9.1` |
-| Python | [sol-parser-sdk-python](https://github.com/0xfnzero/sol-parser-sdk-python) | DEX 交易与账户事件解析 | `v0.9.1` |
-| Go | [sol-parser-sdk-golang](https://github.com/0xfnzero/sol-parser-sdk-golang) | DEX 交易与账户事件解析 | `v0.9.1` |
-| Rust | [sol-trade-sdk](https://github.com/0xfnzero/sol-trade-sdk) | 交易构建、签名与多通道提交 | `v9.0.1` |
-| Node.js | [sol-trade-sdk-nodejs](https://github.com/0xfnzero/sol-trade-sdk-nodejs) | 交易构建、签名与多通道提交 | `v9.0.1` |
-| Python | [sol-trade-sdk-python](https://github.com/0xfnzero/sol-trade-sdk-python) | 交易构建、签名与多通道提交 | `v9.0.1` |
-| Go | [sol-trade-sdk-golang](https://github.com/0xfnzero/sol-trade-sdk-golang) | 交易构建、签名与多通道提交 | `v9.0.1` |
-| Rust | [sol-shred-sdk](https://github.com/0xfnzero/sol-shred-sdk) | 原始 Shred 解码与 ShredStream 指令事件 | `v6.0.1` |
-| Rust | [solana-streamer](https://github.com/0xfnzero/solana-streamer) | gRPC / ShredStream 订阅与事件流封装 | `v5.0.0` |
-| Rust | [sol-trade-router-sdk](https://github.com/0xfnzero/sol-trade-router-sdk) | 链上多跳 Router 与客户端 SDK | `v0.3.0` |
+| Rust | [sol-parser-sdk](https://github.com/0xfnzero/sol-parser-sdk) | DEX 交易与账户事件解析 | `v0.10.0` |
+| Node.js | [sol-parser-sdk-nodejs](https://github.com/0xfnzero/sol-parser-sdk-nodejs) | DEX 交易与账户事件解析 | `v0.10.0` |
+| Python | [sol-parser-sdk-python](https://github.com/0xfnzero/sol-parser-sdk-python) | DEX 交易与账户事件解析 | `v0.10.0` |
+| Go | [sol-parser-sdk-golang](https://github.com/0xfnzero/sol-parser-sdk-golang) | DEX 交易与账户事件解析 | `v0.10.0` |
+| Rust | [sol-trade-sdk](https://github.com/0xfnzero/sol-trade-sdk) | 交易构建、签名与多通道提交 | `v10.0.0` |
+| Node.js | [sol-trade-sdk-nodejs](https://github.com/0xfnzero/sol-trade-sdk-nodejs) | 交易构建、签名与多通道提交 | `v10.0.0` |
+| Python | [sol-trade-sdk-python](https://github.com/0xfnzero/sol-trade-sdk-python) | 交易构建、签名与多通道提交 | `v10.0.0` |
+| Go | [sol-trade-sdk-golang](https://github.com/0xfnzero/sol-trade-sdk-golang) | 交易构建、签名与多通道提交 | `v10.0.0` |
+| Rust | [sol-shred-sdk](https://github.com/0xfnzero/sol-shred-sdk) | 原始 Shred 解码与 ShredStream 指令事件 | `v6.0.2` |
+| Rust | [solana-streamer](https://github.com/0xfnzero/solana-streamer) | gRPC / ShredStream 订阅与事件流封装 | `v5.0.1` |
+| Rust | [sol-trade-router-sdk](https://github.com/0xfnzero/sol-trade-router-sdk) | 链上多跳 Router 与客户端 SDK | `v0.4.0` |
@@ -81,17 +81,17 @@
```toml
# 添加到您的 Cargo.toml
-solana-streamer-sdk = "5.0.0"
+solana-streamer-sdk = "5.0.1"
```
解析后端 feature:
```toml
# 默认:sol-parser-sdk parse-borsh 后端
-solana-streamer-sdk = "5.0.0"
+solana-streamer-sdk = "5.0.1"
# 面向低延迟 Bot 的 zero-copy 解析后端
-solana-streamer-sdk = { version = "5.0.0", default-features = false, features = ["sdk-parse-zero-copy"] }
+solana-streamer-sdk = { version = "5.0.1", default-features = false, features = ["sdk-parse-zero-copy"] }
```
如果同时启用 `sdk-parse-borsh` 和 `sdk-parse-zero-copy`,`sol-parser-sdk 0.6.1+` 会优先使用 zero-copy 后端。
@@ -109,7 +109,7 @@ git clone https://github.com/0xfnzero/solana-streamer
```toml
# 添加到您的 Cargo.toml
-solana-streamer-sdk = { path = "./solana-streamer", version = "5.0.0" }
+solana-streamer-sdk = { path = "./solana-streamer", version = "5.0.1" }
```
@@ -289,6 +289,8 @@ gRPC/RPC 使用提供的执行元数据和实际 CPI 指令;Shred 只能看到
解析热路径不调用 RPC。按 `parse_status` 判断证据,缺失字段的默认值不代表实际零成交。账户顺序与原始指令数据保留在 `third_program`;交易序号和接收时间仍在事件元数据中,本地 Shred 序号不等于全 slot 执行顺序。详见 [第三方包装交易](docs/wrapped-pumpfun.md)。
+已知 Pump.fun 创建/交易指令在 ALT 未展开时仍保留回调,未知账户保持未知。适配层保留 `create_v2`、V2/V3 方法名、创建账户和官方 `multi_hop_swap` 来源。运行 `cargo run --example rpc_transaction_replay`,可用已报告的真实签名交易离线比较纯 Shred 与执行解析;Shred 路由预算不是各跳成交金额,实际报价币/代币金额来自执行元数据。
+
## ⚙️ 配置系统
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index 5421903..23cc863 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -1,28 +1,11 @@
-# solana-streamer v5.0.0
+# solana-streamer v5.0.1
-Released 2026-10-22. The Rust, Node.js, Python and Go parser packages use the same family version, 0.9.0. Streamer 5.0.0 and Shred 6.0.1 are separately versioned integrations.
+Released 2026-10-26.
-## Default stock pools / 默认股票代币池子
+Use sol-parser-sdk 0.10.0 and preserve create_v2 method names, unknown quotes and official multi-hop Pump callbacks across the streamer bridge. Update real-transaction replay examples.
-Remove five pools from the default catalog: two have captured single-transaction withdrawals reducing both vault balances by at least 50%; four have less than $500 in USDC/WSOL-side reserves at the 2026-10-22 04:25 UTC+8 snapshot (one meets both criteria). Defaults now contain 58 stock pools across 33 mints; trading adds the SOL/USDC conversion pool for 59 pools total. COPX.US is no longer a default mint. See [the synchronized catalog notes](docs/STOCK_BRIDGE_SYNC.md) for addresses and evidence.
+升级解析核心到 0.10.0,事件桥接保留 create_v2 指令名、未知报价和官方多跳回调,更新真实交易回放示例。
-This is a static catalog refresh, not continuous liquidity monitoring, certified executable depth, or an LP-lock guarantee. Explicit custom catalogs remain supported. No RPC or history scanning was added to parsing or trading hot paths.
+## Validation / 验证
-中文:默认目录剔除 5 个池子,涵盖整池双边储备单笔下降至少 50% 的历史记录,以及快照中 USDC/WSOL 一侧储备不足 500 美元的池子。保留 58 个股票池、33 个 mint;交易侧加 SOL/USDC 共 59 个池子。该目录为静态快照,不保证实时深度或流动性锁定。
-
-## Changes / 更新
-
-- Remove standalone PumpRouteIntent and RawInstruction callbacks and their obsolete decoding helpers/examples. Wrapped Pump.fun callbacks retain the original outer program, ordered accounts and data in third_program.
-- Preserve the distinction between unresolved Shred candidates, decoded instruction inputs and confirmed execution. The parser hot path performs no RPC and does not infer opaque third-party arguments.
-- Synchronize Pump.fun V3 instruction handling, gRPC execution evidence and create-before-trade ordering. Preserve supplied transaction-position and receive-time metadata.
-- Clean up examples and README navigation; maintain the shared stock catalog and native-language validation.
-
-## Migration / 升级
-
-Subscribe to PumpFunTrade and inspect third_program and parse_status. Remove matches/filters for the retired PumpRouteIntent and RawInstruction events. Unresolved is only a possible interaction; defaults are not a proven direction or zero fill. ExecutionConfirmed does not guarantee all amounts are available. Unresolved ALT addresses remain unknown.
-
-中文:独立的路由意图和原始指令回调已删除。第三方包装信息保留在交易事件的 third_program 中;Shred 候选与实际成交必须按 parse_status 区分。SDK 不猜测第三方合约参数,热路径不调用 RPC。
-
-Version alignment does not imply identical APIs across languages. Offline fixtures validate captured cases, not current chain state or production latency. See README and docs/wrapped-pumpfun.md for the supported surface.
-
-Pins sol-parser-sdk =0.9.1 and forwards the simplified callback model. Update exhaustive streamer event matches when upgrading.
+Native-language regression suites and replay/build checks passed for the synchronized changes. Four trade implementations completed curve buy/sell and pool buy/sell unsigned mainnet simulations (16 successful simulations); these small-amount interface checks do not replace fresh production quotes. No transaction was broadcast.
diff --git a/docs/STOCK_BRIDGE_SYNC.md b/docs/STOCK_BRIDGE_SYNC.md
index 9e17cb2..a9da1da 100644
--- a/docs/STOCK_BRIDGE_SYNC.md
+++ b/docs/STOCK_BRIDGE_SYNC.md
@@ -32,7 +32,7 @@ quote/search and preparation perform no RPC; no cache miss triggers a fallback.
Parser SDKs own parsing, stock monitoring and historical identities. Streamer and
Shred transport signals; incomplete Shred observations never become confirmed
prices or executable reserves. Trade SDKs own quoting and transaction preparation.
-The router reuses parser 0.9.1 and trade 9.0.1; its re-exported PumpSwapRouting
+The router reuses parser 0.10.0 and trade 10.0.0; its re-exported PumpSwapRouting
builds trade-sdk direct instructions, not automatic router-program CPI dispatch.
Single-market conversion cannot resolve PumpSwapAutoRoute without a routing cache.
diff --git a/examples/rpc_transaction_replay.rs b/examples/rpc_transaction_replay.rs
index 4efd50b..3b1bd46 100644
--- a/examples/rpc_transaction_replay.rs
+++ b/examples/rpc_transaction_replay.rs
@@ -1,19 +1,39 @@
//! Fetch once or replay an RPC fixture through the public streamer facade.
-//! With no arguments: replay the 2026-10-19 Delta SellV2 transaction offline.
+//! With no arguments: replay the reported ALT creates and official multi-hop offline.
//! cargo run --example rpc_transaction_replay -- --fetch SIGNATURE OUTPUT.json
//! cargo run --example rpc_transaction_replay -- --fixture OUTPUT.json
use anyhow::{bail, ensure, Context, Result};
use solana_client::{rpc_client::RpcClient, rpc_config::RpcTransactionConfig};
use solana_sdk::signature::Signature;
-use solana_streamer_sdk::parse_encoded_rpc_transaction_as_streamer_events;
+use solana_streamer_sdk::{
+ parse_encoded_rpc_transaction_as_streamer_events,
+ streaming::{
+ common::event_processor::process_shred_transaction,
+ event_parser::{DexEvent, Protocol},
+ shred::TransactionWithSlot,
+ },
+};
use solana_transaction_status::{EncodedConfirmedTransactionWithStatusMeta, UiTransactionEncoding};
use std::{fs, str::FromStr, time::Duration};
-fn main() -> Result<()> {
+#[tokio::main]
+async fn main() -> Result<()> {
let args: Vec<_> = std::env::args().skip(1).collect();
- let tx: EncodedConfirmedTransactionWithStatusMeta = match args.as_slice() {
- [] => serde_json::from_str(include_str!("../tests/fixtures/pump_execution_20261019.json"))?,
- [mode, path] if mode == "--fixture" => serde_json::from_slice(&fs::read(path)?)?,
+ let transactions: Vec = match args.as_slice() {
+ [] => {
+ let mut transactions = Vec::new();
+ for source in [
+ include_str!("../tests/fixtures/pump_create_alt_20261026.json"),
+ include_str!("../tests/fixtures/pump_multi_hop_20261025.json"),
+ ] {
+ let fixture: serde_json::Value = serde_json::from_str(source)?;
+ for case in fixture["cases"].as_array().context("Missing cases")? {
+ transactions.push(serde_json::from_value(case["wire_rpc"].clone())?);
+ }
+ }
+ transactions
+ }
+ [mode, path] if mode == "--fixture" => vec![serde_json::from_slice(&fs::read(path)?)?],
[mode, signature, path] if mode == "--fetch" => {
let signature = Signature::from_str(signature)?;
let url = std::env::var("SOLANA_RPC_URL")
@@ -35,16 +55,40 @@ fn main() -> Result<()> {
"RPC returned a different signature"
);
fs::write(path, serde_json::to_vec_pretty(&tx)?)?;
- tx
+ vec![tx]
}
_ => bail!("usage: --fetch SIGNATURE OUTPUT.json | --fixture INPUT.json"),
};
- let events = parse_encoded_rpc_transaction_as_streamer_events(&tx, 0, &[], None)?;
- println!(
- "{{\"slot\":{},\"execution_error\":{},\"events\":{}}}",
- tx.slot,
- serde_json::to_string(&tx.transaction.meta.as_ref().and_then(|meta| meta.err.as_ref()))?,
- serde_json::to_string_pretty(&events)?
- );
+ for tx in transactions {
+ let signed = tx.transaction.transaction.decode().context("Invalid wire transaction")?;
+ let captured = std::sync::Arc::new(std::sync::Mutex::new(Vec::::new()));
+ let output = captured.clone();
+ process_shred_transaction(
+ TransactionWithSlot::new(signed, tx.slot, 123456, Some(888)),
+ &[Protocol::PumpFun],
+ None,
+ std::sync::Arc::new(move |e| output.lock().unwrap().push(e)),
+ None,
+ )
+ .await?;
+ println!(
+ "{}",
+ serde_json::json!({"source":"shred_static", "slot":tx.slot, "events":*captured.lock().unwrap()})
+ );
+ let events = parse_encoded_rpc_transaction_as_streamer_events(
+ &tx,
+ 123456,
+ &[Protocol::PumpFun],
+ None,
+ )?;
+ println!(
+ "{{\"slot\":{},\"execution_error\":{},\"events\":{}}}",
+ tx.slot,
+ serde_json::to_string(
+ &tx.transaction.meta.as_ref().and_then(|meta| meta.err.as_ref())
+ )?,
+ serde_json::to_string_pretty(&events)?
+ );
+ }
Ok(())
}
diff --git a/src/streaming/parser_sdk_bridge/pump_pumpswap.rs b/src/streaming/parser_sdk_bridge/pump_pumpswap.rs
index f0c1b30..490ff03 100644
--- a/src/streaming/parser_sdk_bridge/pump_pumpswap.rs
+++ b/src/streaming/parser_sdk_bridge/pump_pumpswap.rs
@@ -52,14 +52,27 @@ pub(crate) fn pumpfun_create_token_from_parser(
token_program: c.token_program,
is_mayhem_mode: c.is_mayhem_mode,
is_cashback_enabled: c.is_cashback_enabled,
- quote_mint: normalize_pumpfun_quote_mint(c.quote_mint),
+ quote_mint: c.quote_mint,
quote_vault: c.quote_vault,
quote_token_program: c.quote_token_program,
virtual_quote_reserves: c.virtual_quote_reserves,
creator_fee_bps: c.creator_fee_bps,
is_holder_reward: c.is_holder_reward,
depth: c.depth,
- ix_name: "create".to_string(),
+ ix_name: if c.ix_name.is_empty() { "create".into() } else { c.ix_name },
+ mint_authority: c.mint_authority,
+ associated_bonding_curve: c.associated_bonding_curve,
+ global: c.global,
+ system_program: c.system_program,
+ associated_token_program: c.associated_token_program,
+ mayhem_program_id: c.mayhem_program_id,
+ global_params: c.global_params,
+ sol_vault: c.sol_vault,
+ mayhem_state: c.mayhem_state,
+ mayhem_token_vault: c.mayhem_token_vault,
+ event_authority: c.event_authority,
+ program: c.program,
+ observed_fee_recipient: c.observed_fee_recipient,
..Default::default()
}
}
@@ -85,7 +98,7 @@ pub(crate) fn pumpfun_create_token_from_parser_v2(
token_program: c.token_program,
is_mayhem_mode: c.is_mayhem_mode,
is_cashback_enabled: c.is_cashback_enabled,
- quote_mint: normalize_pumpfun_quote_mint(c.quote_mint),
+ quote_mint: c.quote_mint,
quote_vault: c.quote_vault,
quote_token_program: c.quote_token_program,
virtual_quote_reserves: c.virtual_quote_reserves,
@@ -776,7 +789,7 @@ pub(crate) fn pumpfun_trade_from_parser_with_event_type(
buyback_fee_basis_points: t.buyback_fee_basis_points,
buyback_fee: t.buyback_fee,
shareholders: t.shareholders.into_iter().map(pump_fees_shareholder_from_parser).collect(),
- quote_mint: normalize_pumpfun_quote_mint(t.quote_mint),
+ quote_mint: t.quote_mint,
quote_amount: t.quote_amount,
virtual_quote_reserves: t.virtual_quote_reserves,
creator_fee_unclaimed: t.creator_fee_unclaimed,
@@ -896,7 +909,7 @@ mod tests {
use super::*;
#[test]
- fn pumpfun_default_quote_mint_uses_solscan_sol_sentinel() {
+ fn pumpfun_unknown_quote_mint_stays_unknown() {
let ev = pumpfun_trade_from_parser_with_event_type(
sol_parser_sdk::core::events::PumpFunTradeEvent { is_buy: true, ..Default::default() },
None,
@@ -906,7 +919,7 @@ mod tests {
match ev {
DexEvent::PumpFunTradeEvent(t) => {
- assert_eq!(t.quote_mint.to_string(), "So11111111111111111111111111111111111111111");
+ assert_eq!(t.quote_mint, Pubkey::default());
}
_ => panic!("expected PumpFunTradeEvent"),
}
diff --git a/tests/fixtures/pump_create_alt_20261026.json b/tests/fixtures/pump_create_alt_20261026.json
new file mode 100644
index 0000000..b867dde
--- /dev/null
+++ b/tests/fixtures/pump_create_alt_20261026.json
@@ -0,0 +1,1652 @@
+{
+ "source": "Solana mainnet getTransaction (base64), captured 2026-10-26",
+ "cases": [
+ {
+ "signature": "2ydaZvMnQzFi9JbPXHtG8syYdDg3tGsrUqNTDre6ZE6sxxHe4GuL1qPeEqRdTouZaWg6ksuioNaamMqnFh9nJvYG",
+ "wire_rpc": {
+ "blockTime": 1792942614,
+ "meta": {
+ "computeUnitsConsumed": 201800,
+ "costUnits": 212064,
+ "err": null,
+ "fee": 10000,
+ "innerInstructions": [
+ {
+ "index": 2,
+ "instructions": [
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "111157R57fqNzgMjCi7yd8cD1yQhPAwhedzS6uysMaAGbDUZUYiji1TswMPKaASzZW6nQT",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "GC3i2jSx8awwe9xBfbR9LBTrzgFPUE9b56kGnez3cWMeYXQ2cFNKiQUY7EEVH9jcszFqVmnye4NFAHCp5PiUxfbRM8",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "2zt6UCCHp66bJGRS4G7bTsjdxFh6FQ9sBEyRfGyPQKxYisAw",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 3
+ ],
+ "data": "1111cioyWkTQuLPfwxMoT2birGzJRhJTioHPSoXiyqTZ8i2Uit2xjR4zNTmWA8HgNbgfR",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 4,
+ 3,
+ 1,
+ 11,
+ 24
+ ],
+ "data": "1",
+ "programIdIndex": 13,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 4
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 11,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 4
+ ],
+ "data": "P",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 4,
+ 1
+ ],
+ "data": "6PodQZYVbMGuzwHJM1M5ATvw3qgxt7w2D5y7PKtqmAvt2",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "3Bxs4TdjXjKj5fWP",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 22,
+ 1,
+ 22
+ ],
+ "data": "C6sbS3FULsxQaF1VsYpdMpZCwqdkrYm4CM4Hq8YfnHq41cUs1MhNSbgDUvJBqYwkJ81PdibSV8pV1BYeCcgf2z3yWZnvGFSN7r2FTH6b7c3L1WfftFGbeGDGriT3c1",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 22
+ ],
+ "data": "BjBG9fDQbu1raSNbBZQYubkmLijGDjgXJHpedBBGGrFrgSFFPaBAwnF",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 4,
+ 22
+ ],
+ "data": "6ApXSNCamGdm",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 22
+ ],
+ "data": "31tb",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 26
+ ],
+ "data": "H3QSeD5qWuFtwgJDRysCP3rrUTzhm1nsEVyxKF8cFU3HyAACteMeZUa9SwBk5a7kdaKFoe8SMmU8PbVi61CMt4DNMRHYSEgmJudrkHGN13k5a1KKkWjKqhQkDR6ErW3Z4m68CNJbT3WuHBHGvB6EspaURxL6qhN5N3KoWt2RPYFwFFxu7XBo6KegscGZT9RCRRpFWhyH61Qf1QVCkGdTuxArA7X4P2hxSdu9VaRmo9PkoF9rTeF2CzYntDnU1kiqJj8dEHkq7qyMJ9AMatXspy7DSL3msfp7NPDRAbzxB4kwovfEZQbzAbHrooGSBYCHXYjyzhxViNEv6sVfp6K4qmNVegU6a6KFkqSbutDC6Yjxwgk683p6q67pPdDGRGq7jTGJUPYmwkxC2ypcRexGa6DS38yhEJm2DFBD7zgG5twWzygxCi35kS4R3yshsSPM7Hq4jYtcSBVUMxC6CHoEvC4ao7H21k423",
+ "programIdIndex": 12,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 4,
+ "instructions": [
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 8
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 8
+ ],
+ "data": "P",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 8,
+ 1
+ ],
+ "data": "6QUZcAKxfMnQRAU9Bjhw51MMTZXZQBKHHTDoJgVnNFxSE",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 5,
+ "instructions": [
+ {
+ "accounts": [
+ 0,
+ 10
+ ],
+ "data": "11116bYLo9rxSJafavUq2JFtAzXVr9gGTLdp8nq8DtrzRm2TtRqSRrLVYvo86Gbnaa3y3V",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 29,
+ 12
+ ],
+ "data": "KX69VKtJ7u4E8WRrYUqgt3XUX8TcDnzuCpML1U78HbvSY3b6R3Fmk5hZdYT43YMC1VSWpVqHwFfau5",
+ "programIdIndex": 20,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 4,
+ 1,
+ 8,
+ 3
+ ],
+ "data": "j65z4jJa2sgN9",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 9
+ ],
+ "data": "3Bxs411c3MuNu6nj",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 9
+ ],
+ "data": "3Bxs445376bshZxj",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 3
+ ],
+ "data": "3Bxs4WN48ZZhz4Md",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 21
+ ],
+ "data": "3Bxs4TP7ddRnkwSw",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 18
+ ],
+ "data": "3Bxs4TYpJeEcFYiT",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 26
+ ],
+ "data": "3qsuqwaLDbwxk7Vdz3663PEy1huFEFdbRmFirS8ME34wqiDkVNoK2YzQFoXMnPL69iCeXqSLsVPBoBKaJvhES6wikQ4N7ABD1TscjmkEZGGwpLDqf6Vd3BnQ84Ln1UGfdrWfmCvJqMTnabCPWzSJ1ZB61YzNUg9LfM422A3VSaBhAA9LXqBeLtSZyGt2tvjqEXea7JT9zB4aQZ9YYAqJM8RTcR17dx1EZeu7rhzW2k5DEFS99d1B5H4BQUVAmrRwKSPBB9S91UJTRctmdhRw14s4UndA5TPk6UwtEXBV3Fg6Pr1fkjqPgNp6Gk4g68UVaWYBZFrAhPuYbAPTnrR6BGojSaC5jyN4UdQxgjWjXTy1oyxLjjSHjAvCsjTB9N5xVx4yiTSN97ivpwkwsxmR2BxDFEfB9r3qA58WbtjkcjmugsoLwMn6GAWWd7SBoE16LLdWFgcRTEeGqFBtCK48f4FWTFnqXm3QdHd2VKC6x33Ao848pNBah1t8YzQW2Ka43yaQYinpazNEtqacphTRNUubYxWFyUhx1mPGGfhNCQGFr3bjEP",
+ "programIdIndex": 12,
+ "stackHeight": 2
+ }
+ ]
+ }
+ ],
+ "loadedAddresses": {
+ "readonly": [
+ "TSLvdd1pWpHVjahSpsvCXUbgwsL3JAcvokwaKt1eokM",
+ "4wTV1YmiEkRvAtNtsSGPtUrqRYQMe5SKy2uB4Jjaxnjf",
+ "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "13ec7XdrjF3h3YcqBTFDSReRcUFwbCnJaAQspM4j6DDJ",
+ "Ce6TQqeHC9p8KetsN6JsjHK7UTZk7nasjjnr7XxXp9F1",
+ "So11111111111111111111111111111111111111112",
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "8Wf5TiAheLUqBrKXeYg2JtAFFMWtKdG2BSFgqUcPVwTt"
+ ],
+ "writable": [
+ "uxtoRPdPjRekYmxs1uUqVRZWh38iqonc9KgPuZXPeSY",
+ "MAyhSmzXzV1pTf7LsNkrNwkWKTo4ougAJ1PPg47MD4e",
+ "BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s",
+ "62qc2CNXwrYqQScmEdiZFFAnJR262PxWEuNQtxfafNgV",
+ "Hq2wp8uJ9jCPsYgNHex8RtqdvMPfVGoYwjvF1ATiwn2Y",
+ "pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ",
+ "5cjcW9wExnJJiqgLjq7DEG75Pm6JBgE1hNv4B2vHXUW6"
+ ]
+ },
+ "logMessages": [
+ "Program 11111111111111111111111111111111 invoke [1]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [1]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: CreateV2",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: MetadataPointerInstruction::Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1331 of 792724 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeMint2",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2094 of 789730 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [2]",
+ "Program log: Create",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1426 of 769447 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [3]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 763199 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2852 of 760129 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 17807 of 774780 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 4582 of 730694 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: UpdateAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 4924 of 723862 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: MintTo",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2126 of 716746 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: SetAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1477 of 712684 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program data: G3KpTd7rY3YEAAAATHVuYQQAAABMdW5hQAAAAGh0dHBzOi8vbWV0YS51eGVudG8uaW8vZGF0YS9mNTFjODdiMi1hYTZhLTQ2MTEtOTlkZC0xY2U5NGU4ODQyMjbT3Yj3eCDAF0bJceHkg98ri52ec/VM/wdWVnBKAlA4PyewM/CYRh1AxHIt4rUif46MckJH9LZOZ8jeKbeT2AnrMamOyavIP/1iFXe/X3zbd4TlILwSinxmrvdvrDstK5NDaBTwXWs0KVB4ojl7fPnIPewaK6asebf9bxV62zw95RUi3moAAAAAABDYR+PPAwAArCP8BgAAAAB4xftR0QIAAIDGpH6NAwAG3fbh7nWP3hhCXbzkbM3athr8TYO5DSf+vfko2KGL/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArCP8BgAAAAAAAAAAAAAAAQA=",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 704932 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 104581 of 805700 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: ExtendAccount",
+ "Program log: Account already has the correct size",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 3780 of 701119 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [1]",
+ "Program log: CreateIdempotent",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1495 of 692079 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 685762 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3107 of 682695 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 18034 of 697339 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: BuyExactSolIn",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ invoke [2]",
+ "Program log: Instruction: GetFeesWithQuoteMint",
+ "Program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ consumed 3360 of 639424 compute units",
+ "Program return: pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ AAAAAAAAAABfAAAAAAAAAB4AAAAAAAAA",
+ "Program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: TransferChecked",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2977 of 630933 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program data: vdt/007mYe7T3Yj3eCDAF0bJceHkg98ri52ec/VM/wdWVnBKAlA4P7Bo3joAAAAA6oVanxofAAABMamOyavIP/1iFXe/X3zbd4TlILwSinxmrvdvrDstK5MVIt5qAAAAALAUAjcHAAAAFop9qMiwAwCwaN46AAAAABbyalw3sgIASsL40N1cvJfjKJwZfLUGKlTz2Va5zm5RFfllZ6pcs+ZfAAAAAAAAAD0rjwAAAAAAQ2gU8F1rNClQeKI5e3z5yD3sGiumrHm3/W8Vets8PeUeAAAAAAAAABM2LQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAGJ1eV9leGFjdF9zb2xfaW4AAAAAAAAAAAAAAAAAAAAAAIgTAAAAAAAAnpVHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwaN46AAAAALAUAjcHAAAAsGjeOgAAAAAeAAAAAAAAABM2LQAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 608707 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 75105 of 679305 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success"
+ ],
+ "postBalances": [
+ 500818920,
+ 2631440,
+ 3909617008,
+ 989147840,
+ 1513840,
+ 0,
+ 0,
+ 0,
+ 1513840,
+ 3613203,
+ 1346200,
+ 1,
+ 9700912471,
+ 3388612899,
+ 0,
+ 723866076759,
+ 11149834,
+ 64317142011530,
+ 16116617234718,
+ 17016138,
+ 6046721,
+ 6398238,
+ 1020235881,
+ 4089842911,
+ 70228638,
+ 3104160,
+ 168261611,
+ 1857492067281,
+ 230130698,
+ 37292293
+ ],
+ "postTokenBalances": [
+ {
+ "accountIndex": 4,
+ "mint": "FG2x9vQuYR9cFmyKu666LgLsSkKMX2VMLEZfnJTxpump",
+ "owner": "3fvjdLxo4ReAfoCpvBspyxVfLoP4iBkWP3wXqK9wsnT4",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "965800796879382",
+ "decimals": 6,
+ "uiAmount": 965800796.879382,
+ "uiAmountString": "965800796.879382"
+ }
+ },
+ {
+ "accountIndex": 8,
+ "mint": "FG2x9vQuYR9cFmyKu666LgLsSkKMX2VMLEZfnJTxpump",
+ "owner": "4LrwE8Rs4w8atz3feYjjXNv54dyama1akJdTBv6Yxp1G",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "34199203120618",
+ "decimals": 6,
+ "uiAmount": 34199203.120618,
+ "uiAmountString": "34199203.120618"
+ }
+ }
+ ],
+ "preBalances": [
+ 1522978000,
+ 0,
+ 3906617008,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1,
+ 9700912471,
+ 3388612899,
+ 0,
+ 723856076759,
+ 11149834,
+ 64317142011530,
+ 16116612543359,
+ 17016138,
+ 6046721,
+ 1706880,
+ 1020235881,
+ 4089842911,
+ 70228638,
+ 3104160,
+ 168261611,
+ 1857492067281,
+ 230130698,
+ 37292293
+ ],
+ "preTokenBalances": [],
+ "rewards": [],
+ "status": {
+ "Ok": null
+ }
+ },
+ "slot": 461310600,
+ "transaction": [
+ "AmLaZy64v5Di4lKbiwXNuKSFnpIpUo0+hM5amgvIlrXdx8PG8Wv2GfY0LWZ7i3VpF6rmYl6c4yCYXkRjwdpTjwFCY07mm0amcd7Db/KqnFYK6y814e6GJ9GTAyIGdCjV/Qa6lU18HmnR112WjQe578cCxQbYo51vzFRX6QKfjMEDgAIABA8xqY7Jq8g//WIVd79ffNt3hOUgvBKKfGau92+sOy0rk9PdiPd4IMAXRslx4eSD3yuLnZ5z9Uz/B1ZWcEoCUDg/C3p64JtYSIDv2HRsHDwZxm3I1PPhBs4HJGR0gOyOLmMnsDPwmEYdQMRyLeK1In+OjHJCR/S2TmfI3im3k9gJ65a0ZMYhSWbEvklg1JffwGb++DYghdFvhyXCPwn4Et7jD754hjSR8Y8mfITubhvtNifqBioGd/4zEarjzssuN634x/8WjHPKbOlKfi6+Az0ELlpXqT7gnKLHqXaVPa/7ELp3wr3SKuwpawE2KoLtxaP4WINA37YLgDSTAcn2z2P6ULnbRiVka/P6cCtqF3tiboYiKlE8lQAWnCFWimyt4riJqbBmEfVXwRVZbU/GSrUBnTDz0itOQnWeU+ST264UoK8Gr1MaKkNOSPgZ6HfJXKNmbP1dMTdyUptExKVtrfK9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVuD2k2Zaz0TbFWi/F1uqUYnLl/XS/ztlXSu2/W0YsIyXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZhrHAB/wQXhF2JwN803m1aGqKTuDB/4iuzeWPdgHr8/7pVxHQ5Qf3a6U51JEurJ5kVRXk5lQqleKIxGh6gNGXGQYLAgACDAIAAADAxi0AAAAAAAsCAA8MAgAAAICWmAAAAAAADBMBFgMEFwALGA0QGREFBhoMGwcchwHWkEzsX4sxtAQAAABMdW5hBAAAAEx1bmFAAAAAaHR0cHM6Ly9tZXRhLnV4ZW50by5pby9kYXRhL2Y1MWM4N2IyLWFhNmEtNDYxMS05OWRkLTFjZTk0ZTg4NDIyNjGpjsmryD/9YhV3v19823eE5SC8Eop8Zq73b6w7LSuTAAAAAAAAAAAAAAEMBQMACxoMCOpmwsuWSD7lDQYACAABCxgBAQwSFxIBAwQIAAsYCRoMEwodFA4VGTj8dAie381fAMqaOwAAAABKYQHE2R4AAAAB86MJJaK1tQQ9RWP2BnSut2xs8dgsl8Sweg3R3jfPB+kHKgQGKwgKEggWCwEFDBcYCQ==",
+ "base64"
+ ],
+ "transactionIndex": 152,
+ "version": 0
+ }
+ },
+ {
+ "signature": "3x3nv3Ri7F6SmR5dMxUvwKy1ZMnU1HTKV97qPg3zMu2sFUw4KCvnEWf6CND6xDutJtX4gitEjXHzUMgiciWt99WE",
+ "wire_rpc": {
+ "blockTime": 1792942583,
+ "meta": {
+ "computeUnitsConsumed": 268765,
+ "costUnits": 279330,
+ "err": null,
+ "fee": 38221,
+ "innerInstructions": [
+ {
+ "index": 2,
+ "instructions": [
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "111157R57fqNzgMjCi7yd8cD1yQhPAwhedzS6uysMaAGbDUZUYiji1TswMPKaASzZW6nQT",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "GC3i2jSx8awwe9xBfbR9LBTrzgFPUE9b56kGnez3cWMeYXFo7rdd1bC4XjJqBLo6WrMZA44oLtD7131WJ57pfFbRM8",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "2zt6UCCHp66bJGRS4G7bTsjdxFh6FQ9sBEyRfGyPQKxYisAw",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 2
+ ],
+ "data": "1111cioyWkTQuLPfwxMoT2birGzJRhJTioHPSoXiyqTZ8i2Uit2xjR4zNTmWA8HgNbgfR",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 3,
+ 2,
+ 1,
+ 25,
+ 26
+ ],
+ "data": "1",
+ "programIdIndex": 15,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 26,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 3
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 25,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 3
+ ],
+ "data": "P",
+ "programIdIndex": 26,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 3,
+ 1
+ ],
+ "data": "6YcCzwBZipQCmRUoapnYzaKtF2Df1CBdopuqRTamDdEKY",
+ "programIdIndex": 26,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "3Bxs4XdxXNY3raXh",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 23,
+ 1,
+ 23
+ ],
+ "data": "LiXfnnua5xgmuNSDANdhKMYJkMgHaxDT9HcLVrUzSG3nnreWxRUThgN2w5uxSkapxy6yVo3q4q6HA8UzpLeRJxiMCAwn5z3T69gZrzgXwXGbUuyh23tqkj2LEc6LDAttPKyeZ8qXwy978iwmPxxE8xbPNwK6kw3E",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 23
+ ],
+ "data": "BjBG9fDQbu1raSNbBZQYubkmLijGDjgXJHpedBBGGrFrgSFFPaBAwnF",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 27,
+ 23,
+ 18,
+ 1,
+ 5,
+ 4,
+ 25,
+ 26,
+ 15
+ ],
+ "data": "TPGpxKtZ4cc",
+ "programIdIndex": 17,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 5,
+ 18,
+ 1,
+ 25,
+ 26
+ ],
+ "data": "1",
+ "programIdIndex": 15,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 26,
+ "stackHeight": 4
+ },
+ {
+ "accounts": [
+ 0,
+ 5
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 25,
+ "stackHeight": 4
+ },
+ {
+ "accounts": [
+ 5
+ ],
+ "data": "P",
+ "programIdIndex": 26,
+ "stackHeight": 4
+ },
+ {
+ "accounts": [
+ 5,
+ 1
+ ],
+ "data": "6Y5CywK9PapDLSofGZi8LSK3ktu8KPKXMhZ5N6USqvnXq",
+ "programIdIndex": 26,
+ "stackHeight": 4
+ },
+ {
+ "accounts": [
+ 0,
+ 4
+ ],
+ "data": "111157ahBMy1h2Ko3fiGCyAzowWFaCUcNokZWgXLGpnL32Q7yHcf3ZYrAXhkiD3quiLXsG",
+ "programIdIndex": 25,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 1,
+ 3,
+ 23
+ ],
+ "data": "6ApXSNCamGdm",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 5,
+ 23
+ ],
+ "data": "6ApXSNCamGdm",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 23
+ ],
+ "data": "31tb",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 28
+ ],
+ "data": "VVR3SFMUXjgyuXe8dEmRYDeAhCA4pcSoG9dH6hEKx5CcYTztnp8VdvG53QyCXwUx92pqTHT2Q7NV1UhtxF1b3qKiRCzZVddTxoUvaEgsa4xMdyiS86NEFj3fwpit9UgtHrWKSvH6uQdo4mptQvALNLJKCkdjxrFGjGRD1xcxZ919PszUQ35mKr1gc73NwPBMzkynUaJrgmV6mZ4Joo3LiBZwBAwsc41v9X9bhx1BiVi1zvnQi5qdkgntE2C8rvvhYnKW96S4PN71KZ4TVCq3caB3dcsCmrakUXT96v9GsehCjbKbAGEv2fqbFp1rN6G9nW1wx7CmXATUzv7MXHzURnjg2YwhiqTyC7qiGw7TqAgnZuuRtBJvWNYJj2oF2mebHgChw46tDXAS7Jof8kX4TLuiha3y9GrAC8u6CVuv344BiCKPV57MdeTQ2mWGLXnC4yJoTvUg9kNFmKhGmkNNo8nZCs8P17rmcyupFbfLzfareggbLqSTScYuXfuPzsCnvBH",
+ "programIdIndex": 14,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 3,
+ "instructions": [
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 6
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 6
+ ],
+ "data": "P",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 6,
+ 1
+ ],
+ "data": "6a3WQS3h99EDmtEC7w1Xrst9aHS5c1kvTNXuq95uTkK4g",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 4,
+ "instructions": [
+ {
+ "accounts": [
+ 32,
+ 14
+ ],
+ "data": "KX69VKtJ7u4E8WRrYUqgt3XUX8TcDnzuCpML1U78HbvSY3b6R3Fmk5hZdYT43YMC1VSWpVqHwFfau5",
+ "programIdIndex": 33,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 3,
+ 1,
+ 6,
+ 2
+ ],
+ "data": "gkVJ4Mnxf8cXw",
+ "programIdIndex": 26,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 9
+ ],
+ "data": "3Bxs4bpbtfv6H53D",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 2
+ ],
+ "data": "3Bxs4gr3g2qGpZx3",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 19
+ ],
+ "data": "3Bxs4Bfgc9vaoYbH",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 28
+ ],
+ "data": "8jV3ThAnvn3jwQVVxYoxU8RAhs66oSMjgHu7DbgSrXTcqUKk6tdzazt8eHgPFf9pXL95ZCnzc13EaR9JmC1sY3GKseng5LwaBMrYtWTv3hQ6e4X1AneiwDSmXGpCHcT6RAd3qWuiDE1EFAsNTvr9w5yBzf5V14LbM1cy2fwDpLNYat8TD73pntMc41h5PRDfLTuveW8TvxZJ5niwmX6nN9Pmo8jT6eedrHuMcURefC9S5DvneknvXJ8CRbAdsm5TME4UDm9QHWSdvYvoF4y7KcLY8cXDsR43b3XtoGPi9AYJziK9Nkzv8KS7cgBpUxoYkSee8qnhR75dYJYBnC3NCNgh9WPfdD9MTc6KBwP29ChxK57e5VwHAhKiiSRADT9q6xvRTjxuGiF3Y5fSqPk9SbuJaTSbcf7bwqhJhHs4AE9eEYECYSnSMZPJjLhweFqcJwinwaUHobKYe6xeW3rYue51tXJKAQXEtdd3ntu2wbDKkzSLHjD8BbPgYGL4JesrHcfWCZQVqEF4mssAfwPX6eZXhzgQrr2j",
+ "programIdIndex": 14,
+ "stackHeight": 2
+ }
+ ]
+ }
+ ],
+ "loadedAddresses": {
+ "readonly": [
+ "TSLvdd1pWpHVjahSpsvCXUbgwsL3JAcvokwaKt1eokM",
+ "4wTV1YmiEkRvAtNtsSGPtUrqRYQMe5SKy2uB4Jjaxnjf",
+ "11111111111111111111111111111111",
+ "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "13ec7XdrjF3h3YcqBTFDSReRcUFwbCnJaAQspM4j6DDJ",
+ "Ce6TQqeHC9p8KetsN6JsjHK7UTZk7nasjjnr7XxXp9F1",
+ "So11111111111111111111111111111111111111112",
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "Hq2wp8uJ9jCPsYgNHex8RtqdvMPfVGoYwjvF1ATiwn2Y",
+ "8Wf5TiAheLUqBrKXeYg2JtAFFMWtKdG2BSFgqUcPVwTt",
+ "pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ"
+ ],
+ "writable": [
+ "MAyhSmzXzV1pTf7LsNkrNwkWKTo4ougAJ1PPg47MD4e",
+ "BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s",
+ "8sNeir4QsLsJdYpc9RZacohhK1Y5FLU3nC5LXgYB4aa6",
+ "21L1QB6DJ9HBvePgwN6jFuK3UT9mq2SgTq1oJ7D6cNiV",
+ "5cjcW9wExnJJiqgLjq7DEG75Pm6JBgE1hNv4B2vHXUW6",
+ "GYH1Gae1wJytMSvMvw8JVcv7nuAbxi8i9erNVbERnzXd"
+ ]
+ },
+ "logMessages": [
+ "Program ComputeBudget111111111111111111111111111111 invoke [1]",
+ "Program ComputeBudget111111111111111111111111111111 success",
+ "Program ComputeBudget111111111111111111111111111111 invoke [1]",
+ "Program ComputeBudget111111111111111111111111111111 success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: CreateV2",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: MetadataPointerInstruction::Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1331 of 269327 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeMint2",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2094 of 266333 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [2]",
+ "Program log: Create",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1426 of 247550 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [3]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 241302 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2852 of 238232 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 17807 of 252883 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 4874 of 210386 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: UpdateAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 5216 of 203262 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program MAyhSmzXzV1pTf7LsNkrNwkWKTo4ougAJ1PPg47MD4e invoke [2]",
+ "Program log: Instruction: InitializeMayhemState",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [3]",
+ "Program log: Create",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [4]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1495 of 175605 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [4]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [4]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 169288 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [4]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3107 of 166217 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 19633 of 182439 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 11111111111111111111111111111111 invoke [3]",
+ "Program 11111111111111111111111111111111 success",
+ "Program MAyhSmzXzV1pTf7LsNkrNwkWKTo4ougAJ1PPg47MD4e consumed 51975 of 191582 compute units",
+ "Program MAyhSmzXzV1pTf7LsNkrNwkWKTo4ougAJ1PPg47MD4e success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: MintTo",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2126 of 137207 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: MintTo",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2126 of 132931 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: SetAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1477 of 128871 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program data: G3KpTd7rY3YYAAAA8J+SjvCfj6ZUaGUgQm9zc/Cfj6bwn5KOBgAAACRUQk9TU0MAAABodHRwczovL2lwZnMuaW8vaXBmcy9RbVVLTFZXdGIzNXFac1VFRG5QTlFRejNNSlhhQ3MxOWhXa3l1TGc2ZzFZYk1hWYti2x0Mh9pIvEGWYxEAQ3QxoZzdSRnrQ+c7+9WxvJ+qfGYaKio2CgL0Q2OG634L/6tPzNGlbi3VPX3dlQ5wJ7/TSTmgCGnvY0/wTQy9qXxG5u+deZIjXUMBGOwvL081v9NJOaAIae9jT/BNDL2pfEbm7515kiNdQwEY7C8vTzX3Id5qAAAAAAAQ2EfjzwMAAKwj/AYAAAAAeMX7UdECAACAxqR+jQMABt324e51j94YQl285GzN2rYa/E2DuQ0n/r35KNihi/wBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwj/AYAAAAAAAAAAAAAAAAA",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 120894 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 164762 of 281903 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [1]",
+ "Program log: CreateIdempotent",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1495 of 111881 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 105564 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3107 of 102497 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 18034 of 117141 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: BuyV2",
+ "Program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ invoke [2]",
+ "Program log: Instruction: GetFeesWithQuoteMint",
+ "Program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ consumed 3360 of 42314 compute units",
+ "Program return: pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ AAAAAAAAAABfAAAAAAAAAB4AAAAAAAAA",
+ "Program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: TransferChecked",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2977 of 35513 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program data: vdt/007mYe5Zi2LbHQyH2ki8QZZjEQBDdDGhnN1JGetD5zv71bG8n+8UxgsAAAAAMtlyMWIGAAABv9NJOaAIae9jT/BNDL2pfEbm7515kiNdQwEY7C8vTzX3Id5qAAAAAO/A6QcHAAAAzjZlFoHJAwDvFMYLAAAAAM6eUsrvygIAdOlUPz43otBGInrdy06cd0xEJYxD7fJKqKrh8AIUZltfAAAAAAAAAECiHAAAAAAAv9NJOaAIae9jT/BNDL2pfEbm7515kiNdQwEY7C8vTzUeAAAAAAAAANEKCQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAGJ1eQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO8UxgsAAAAA78DpBwcAAADvFMYLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 18823 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 85669 of 99107 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success"
+ ],
+ "postBalances": [
+ 2678299563,
+ 2758440,
+ 199024383,
+ 1513840,
+ 1188720,
+ 1513840,
+ 1513840,
+ 0,
+ 0,
+ 1971612,
+ 0,
+ 1346200,
+ 0,
+ 1,
+ 9700912471,
+ 3388612899,
+ 0,
+ 11149834,
+ 64313594372486,
+ 22270897203,
+ 1181359835,
+ 1753415991,
+ 889527199,
+ 1020235881,
+ 4089842911,
+ 1,
+ 70228638,
+ 3104160,
+ 168261611,
+ 1857492067281,
+ 230130698,
+ 17016138,
+ 37292293,
+ 6046721
+ ],
+ "postTokenBalances": [
+ {
+ "accountIndex": 3,
+ "mint": "72YZRDi6Fwa7L7sWxZixSQ19ia2BMtL78vnMBeAYpump",
+ "owner": "CUWKzz2vXYvw9zi4jdMf6MSrXL5BnSN77zfZy15QL5ta",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "992981193828046",
+ "decimals": 6,
+ "uiAmount": 992981193.828046,
+ "uiAmountString": "992981193.828046"
+ }
+ },
+ {
+ "accountIndex": 5,
+ "mint": "72YZRDi6Fwa7L7sWxZixSQ19ia2BMtL78vnMBeAYpump",
+ "owner": "BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "1000000000000000",
+ "decimals": 6,
+ "uiAmount": 1000000000.0,
+ "uiAmountString": "1000000000"
+ }
+ },
+ {
+ "accountIndex": 6,
+ "mint": "72YZRDi6Fwa7L7sWxZixSQ19ia2BMtL78vnMBeAYpump",
+ "owner": "DuojVrALrNwwck6bqrLXPuiBnYVnc1ekfcjyeWDeTAdi",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "7018806171954",
+ "decimals": 6,
+ "uiAmount": 7018806.171954,
+ "uiAmountString": "7018806.171954"
+ }
+ },
+ {
+ "accountIndex": 20,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "8sNeir4QsLsJdYpc9RZacohhK1Y5FLU3nC5LXgYB4aa6",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "1179320555",
+ "decimals": 9,
+ "uiAmount": 1.179320555,
+ "uiAmountString": "1.179320555"
+ }
+ },
+ {
+ "accountIndex": 22,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "5cjcW9wExnJJiqgLjq7DEG75Pm6JBgE1hNv4B2vHXUW6",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "888038759",
+ "decimals": 9,
+ "uiAmount": 0.888038759,
+ "uiAmountString": "0.888038759"
+ }
+ }
+ ],
+ "preBalances": [
+ 2888319984,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1379019,
+ 0,
+ 1346200,
+ 0,
+ 1,
+ 9700912471,
+ 3388612899,
+ 0,
+ 11149834,
+ 64313594372486,
+ 22269020659,
+ 1181359835,
+ 1753415991,
+ 889527199,
+ 1020235881,
+ 4089842911,
+ 1,
+ 70228638,
+ 3104160,
+ 168261611,
+ 1857492067281,
+ 230130698,
+ 17016138,
+ 37292293,
+ 6046721
+ ],
+ "preTokenBalances": [
+ {
+ "accountIndex": 20,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "8sNeir4QsLsJdYpc9RZacohhK1Y5FLU3nC5LXgYB4aa6",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "1179320555",
+ "decimals": 9,
+ "uiAmount": 1.179320555,
+ "uiAmountString": "1.179320555"
+ }
+ },
+ {
+ "accountIndex": 22,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "5cjcW9wExnJJiqgLjq7DEG75Pm6JBgE1hNv4B2vHXUW6",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "888038759",
+ "decimals": 9,
+ "uiAmount": 0.888038759,
+ "uiAmountString": "0.888038759"
+ }
+ }
+ ],
+ "rewards": [],
+ "status": {
+ "Ok": null
+ }
+ },
+ "slot": 461310455,
+ "transaction": [
+ "ApOBYu7KcbyZG3yJWcztb857w7UztOgbrh9gzO8gLaumnJEQKuK+zZ0r9RtRa9k53QIEcVdW5RWn8ssPSLcLtQ8g1XKKV6pgqdOHmWMW7xbIofiEwzThgawka9vUbI0ZtKqmhjA3HQ8VZt58rdzQm6j0EXZmVFI4VcRKiCbPpZMEgAIABBG/00k5oAhp72NP8E0Mval8RubvnXmSI11DARjsLy9PNVmLYtsdDIfaSLxBlmMRAEN0MaGc3UkZ60PnO/vVsbyfqnxmGioqNgoC9ENjhut+C/+rT8zRpW4t1T193ZUOcCeIjlT2MKm7pJiQ5qiZK0RSIx6/zk636E9A9BR8waDAUylImSAiLqoaLPo/mNPbI5dwzyiUarUCJfI2M1Cy/n8JZtwJXl3P7zjKJyzc10H7fhCEmfSl2uphzXI+QkXhrqC0oGcD1XeXHTsYnbTkQKUBfXe7BhFGnkKZhC8DTF2wrVGwM+OXHwQzqgSBQpNDWYnQ5Ikv27h5fJtC2Zuq4GD0z7rIUq6eA2dT6Oce1TFmb23QqbP3+xsQmbK4KyieMhobPujzXGQXgW6rXFHH4rKSyZA4z0Q/H97bM2agU8MUuwnowM4K4Csk6GzlfM/MXZ9ca7EB2JRLaY69SZ75byHBIUG25IXqe7xTxDat6lxfGTADjom+Md6/kGTPF96faXt6zprGO8bnc8c/rfUEBtJ0ofeFGtIhmx8kZaX4dcJKzgMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAAAVbg9pNmWs9E2xVovxdbqlGJy5f10v87ZV0rtv1tGLCMlyWPTiSJ8bs9ECkUjg2DC1oTmdr/EIQEjnvY2+n4WZi8gH65lUN0uXTq5Q9BCwuzk7NpvdM3AxhmtLgrjl/JotiAG8497vM5mgw9aVeD/Wrw7b+gBeako0tbeoV51BEFDQAFAltOBAANAAkDoIYBAAAAAAAOEAEXAgMYABkaDxEbEgQFHA6fAdaQTOxfizG0GAAAAPCfko7wn4+mVGhlIEJvc3Pwn4+m8J+SjgYAAAAkVEJPU1NDAAAAaHR0cHM6Ly9pcGZzLmlvL2lwZnMvUW1VS0xWV3RiMzVxWnNVRURuUE5RUXozTUpYYUNzMTloV2t5dUxnNmcxWWJNYb/TSTmgCGnvY0/wTQy9qXxG5u+deZIjXUMBGOwvL081AQAAAAAAAAAAAA8GAAYAARkaAQEOGxgBHRoeDxMUFRYCAwcABggJChAfCwwgIRkcDhi4F+5hZ8XTPTLZcjFiBgAAgEYKDAAAAAAB/EKeIF6Hp0DirM2FrbwRsMURgUdUy05+88jCpuXCokoGEBMpaiFSC54BCgsSA3wMBA4P",
+ "base64"
+ ],
+ "transactionIndex": 145,
+ "version": 0
+ }
+ },
+ {
+ "signature": "2uR6R3N1KLk2gDKpb7SbUp6246enm8qmzF6TtVcLTiq1AphTPKkVhnP7XApw6Xi7DqFMTMWRM4R6mLreo2mUA6GT",
+ "wire_rpc": {
+ "blockTime": 1792943276,
+ "meta": {
+ "computeUnitsConsumed": 176607,
+ "costUnits": 185441,
+ "err": null,
+ "fee": 110000,
+ "innerInstructions": [
+ {
+ "index": 3,
+ "instructions": [
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "111157R57fqNzgMjCi7yd8cD1yQhPAwhedzS6uysMaAGbDUZUYiji1TswMPKaASzZW6nQT",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "GC3i2jSx8awwe9xBfbR9LBTrzgFPUE9b56kGnez3cWMeYXPS1yM6mge4Xp1VduEaRdv9ZLAkbP3k5gSwvSUUY9bRM8",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "2zt6UCCHp66bJGRS4G7bTsjdxFh6FQ9sBEyRfGyPQKxYisAw",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 9
+ ],
+ "data": "1111cioyWkTQuLPfwxMoT2birGzJRhJTioHPSoXiyqTZ8i2Uit2xjR4zNTmWA8HgNbgfR",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 4,
+ 9,
+ 1,
+ 11,
+ 22
+ ],
+ "data": "1",
+ "programIdIndex": 14,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 22,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 4
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 11,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 4
+ ],
+ "data": "P",
+ "programIdIndex": 22,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 4,
+ 1
+ ],
+ "data": "6dT8h4sobtbvT9qKUNHeauXpEosJQ1a41b9hrUEnnS1TT",
+ "programIdIndex": 22,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "3Bxs4iQWmNjpUu19",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 20,
+ 1,
+ 20
+ ],
+ "data": "ThwfeqJLQw4J7bCaUkvS8A5UKCvYvGsaFj8FmQNki7hy7YHWqyeGfsMmdZJNFibM1J832FvaHUjrTk5PXKQwwtqckgekdhkQU1p5GpSD3WTJtUo3wxYzfMuQYuoRrnVkCgpVfRUxPfaA3RBRQd1jZ",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 20
+ ],
+ "data": "BjBG9fDQbu1raSNbBZQYubkmLijGDjgXJHpedBBGGrFrgSFFPaBAwnF",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 4,
+ 20
+ ],
+ "data": "6ApXSNCamGdm",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 20
+ ],
+ "data": "31tb",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 25
+ ],
+ "data": "fbF5zar7kCarqTeMRhpbp5ZD8mYY84z4dHKMtLQBd9mSDoTmbhs5F4nJ7vBM6cMGcrBnnamw4DSMWwGT1jDatLNqKXMRdjTnkbPQwVJpggVdpi1jzVo1ksMuARmpzB9B64EvxZgtGRPWY46LGqdQ1BDyhtGV6CEPTHtgDJtkkAPpRjtBahq32HsGpzWujdsD41WXc5bkw1baAKQ1Ca6byF1zqcaKEbc62REKZEDsCUcK3cTZcEEUWXpK9YJY6bmyZTWuxVLGvVVzQbixH6Pnz9FptvtDXaygYVwp2rUec4hJSHBoBhXQzU3GTAJ96FH8acu2PWfNirpCRHZ3mPdScHEtRFb6J3RD4sGcJoknn9RFt2JwunY1jx3LTpmT5NJdj8TN2C7awDQQBmqCMiKND7Byqm2Qo2z2FD3WQ5NxU7yApWictHMJDsNaHQnL7p68FbiN5Mqy9qYwkSEuYZ69eg9NSXryfhjuvWbuFUYesNjXbGP7tciTUa8F",
+ "programIdIndex": 12,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 5,
+ "instructions": [
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 6
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 6
+ ],
+ "data": "P",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 6,
+ 1
+ ],
+ "data": "6bwXvLCdcB1UEj7Zy2uA3vMehQT3S3RMpmc5rvS4XsBd2",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 6,
+ "instructions": [
+ {
+ "accounts": [
+ 0,
+ 2
+ ],
+ "data": "11116bYLo9rxSJafavUq2JFtAzXVr9gGTLdp8nq8DtrzRm2TtRqSRrLVYvo86Gbnaa3y3V",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 4,
+ 1,
+ 6,
+ 9
+ ],
+ "data": "gHnaQDCHSv87P",
+ "programIdIndex": 22,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 9
+ ],
+ "data": "3Bxs49Wh7iD1ZrBR",
+ "programIdIndex": 11,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 25
+ ],
+ "data": "8jV3ThAnvn3jwQVVxYoxU8YDhChvVjpis3zDYBF31DvEHg5wXWbmSzuXGaQYLLovqFegZGmNKrbtRwtG9d66eRR7ZtH6GDFuRiWWcKZsKubrFie4PYTggHLgqhjoRbRWcdgLpU9YpLvKsJAkVHZ5ZjpQaMgt1YGe9wDVm6mR268EH1LvumetkmBWr742TrqVzgDqeA6KHDzNS2Tc4n36mbG5X4aCqBNAq4ct8SKJbaDg4KezTzUehHLmWEKPmyjv9G5vUGrsw79z172aMyXrAozBNgrHJ3GwVZJNBvBaMej7jHppuzggFXf6iUgqRBXMG7QTLnEYBwNX9yGhqg6gNb8qnLVzZ42qLy2VDjCvP8d9DzfmQMNRv5RYZaFUkF3Zku1FUot32rZYWRxCUwKGzuijbQ1q9zUDszHw4ED2sKntJRL7BPqgM9zLPr6tZFNovNDKNPWqyh892Pu5CdHbhnnxpJYgaSSW4zXYf19h5ZtZdHwiUDfMHmX1RhCViaFoNC2qTfiMcRWte6J7t3EjA2a8YReP369m",
+ "programIdIndex": 12,
+ "stackHeight": 2
+ }
+ ]
+ }
+ ],
+ "loadedAddresses": {
+ "readonly": [
+ "13ec7XdrjF3h3YcqBTFDSReRcUFwbCnJaAQspM4j6DDJ",
+ "So11111111111111111111111111111111111111112",
+ "TSLvdd1pWpHVjahSpsvCXUbgwsL3JAcvokwaKt1eokM",
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "4wTV1YmiEkRvAtNtsSGPtUrqRYQMe5SKy2uB4Jjaxnjf",
+ "8Wf5TiAheLUqBrKXeYg2JtAFFMWtKdG2BSFgqUcPVwTt",
+ "Ce6TQqeHC9p8KetsN6JsjHK7UTZk7nasjjnr7XxXp9F1"
+ ],
+ "writable": [
+ "MAyhSmzXzV1pTf7LsNkrNwkWKTo4ougAJ1PPg47MD4e",
+ "5YxQFdt3Tr9zJLvkFccqXVUwhdTWJQc1fFg2YPbxvxeD",
+ "BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s"
+ ]
+ },
+ "logMessages": [
+ "Program 11111111111111111111111111111111 invoke [1]",
+ "Program 11111111111111111111111111111111 success",
+ "Program ComputeBudget111111111111111111111111111111 invoke [1]",
+ "Program ComputeBudget111111111111111111111111111111 success",
+ "Program ComputeBudget111111111111111111111111111111 invoke [1]",
+ "Program ComputeBudget111111111111111111111111111111 success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: CreateV2",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: MetadataPointerInstruction::Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1331 of 487147 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeMint2",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2094 of 484153 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [2]",
+ "Program log: Create",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1426 of 465370 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [3]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 459122 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2852 of 456052 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 17807 of 470703 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 4747 of 428251 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: UpdateAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 5089 of 421254 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: MintTo",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2126 of 413973 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: SetAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1477 of 409911 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program data: G3KpTd7rY3YHAAAAVW5pV2lzZQIAAABVV1AAAABodHRwczovL2lwZnMuaW8vaXBmcy9iYWZrcmVpY2ZjN3g2bTN5MzRyNGx1NmZqZmZjejJ3YXVnbGlwZ2o3NDVmNGdhampsaHZmeTd6YnZlNMsBCAEFzNTXQOeyJTkoysWAlBez5Ub6FXtJMwR1X49f8nO8LEOkVvpCj6ZaSXI8ROu+HGbghPhRLrDthjQHqpbcAuN8i/Nt/6S/2ho6nxeYBm4wkw9EL1p1bPq6AOnN4dwC43yL823/pL/aGjqfF5gGbjCTD0QvWnVs+roA6c3hrCTeagAAAAAAENhH488DAACsI/wGAAAAAHjF+1HRAgAAgMakfo0DAAbd9uHudY/eGEJdvORszdq2GvxNg7kNJ/69+SjYoYv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsI/wGAAAAAAAAAAAAAAAAAA==",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 402006 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 101297 of 499550 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: ExtendAccount",
+ "Program log: Account already has the correct size",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 3780 of 398253 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [1]",
+ "Program log: CreateIdempotent",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1495 of 389213 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 382896 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3107 of 379829 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 18034 of 394473 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: BuyV3",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: TransferChecked",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2977 of 340682 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program data: vdt/007mYe7LAQgBBczU10DnsiU5KMrFgJQXs+VG+hV7STMEdV+PXwEPx1EAAAAADq5Dw60qAAAB3ALjfIvzbf+kv9oaOp8XmAZuMJMPRC9adWz6ugDpzeGsJN5qAAAAAAG76k0HAAAA8mGUhDWlAwABD8dRAAAAAPLJgTikpgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABfAAAAAAAAABHixgAAAAAA3ALjfIvzbf+kv9oaOp8XmAZuMJMPRC9adWz6ugDpzeEeAAAAAAAAACHOPgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAGJ1eQAAAAAAAAAAAAAAAAAAAAAAiBMAAAAAAAAIcWMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEPx1EAAAAAAbvqTQcAAAABD8dRAAAAAAAAAAAAAAAAAAAAAAAAAAAhzj4AAAAAAAAAAAAAAAAA",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 327877 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 53046 of 376439 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success"
+ ],
+ "postBalances": [
+ 99954797,
+ 2717800,
+ 1346200,
+ 0,
+ 1513840,
+ 0,
+ 1513840,
+ 7871099,
+ 0,
+ 1384126523,
+ 0,
+ 1,
+ 9700912471,
+ 1,
+ 3388612899,
+ 11149834,
+ 658254713,
+ 64284172293739,
+ 3104160,
+ 1857492067281,
+ 1020235881,
+ 230130698,
+ 70228638,
+ 4089842911,
+ 37292293,
+ 168261611
+ ],
+ "postTokenBalances": [
+ {
+ "accountIndex": 4,
+ "mint": "EfSg8hUBhwaC2nL5Q3djzzQRpXGgCXQkaNQiYJ3Spump",
+ "owner": "HKS28gGobkectMDxH8TFRZNrJyiabpnJtEXzyf6y8s2V",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "953074206298610",
+ "decimals": 6,
+ "uiAmount": 953074206.29861,
+ "uiAmountString": "953074206.29861"
+ }
+ },
+ {
+ "accountIndex": 6,
+ "mint": "EfSg8hUBhwaC2nL5Q3djzzQRpXGgCXQkaNQiYJ3Spump",
+ "owner": "FoqFQ16otACQTdUSwjxiSPDJuZTcdg684gv1RrNia3C4",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "46925793701390",
+ "decimals": 6,
+ "uiAmount": 46925793.70139,
+ "uiAmountString": "46925793.70139"
+ }
+ }
+ ],
+ "preBalances": [
+ 1499000000,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 6671099,
+ 0,
+ 0,
+ 0,
+ 1,
+ 9700912471,
+ 1,
+ 3388612899,
+ 11149834,
+ 651737713,
+ 64284172293739,
+ 3104160,
+ 1857492067281,
+ 1020235881,
+ 230130698,
+ 70228638,
+ 4089842911,
+ 37292293,
+ 168261611
+ ],
+ "preTokenBalances": [],
+ "rewards": [],
+ "status": {
+ "Ok": null
+ }
+ },
+ "slot": 461313715,
+ "transaction": [
+ "Al830kFip5oFWq64i4FyQQtRrlj/eej4nlVqVhwHQm/6lXDFH1kkJKJkA1ZfFNhmsPneYpaSNT87Q2k769Z1DQyZsFRXsslEPM0f1N6ToKl4w4Lw6JPT90V55zkVGMBngUnDx9JkNZn0ya+6SU2tWoNj4L6yKcwvrPySzcupdvcPgAIABA/cAuN8i/Nt/6S/2ho6nxeYBm4wkw9EL1p1bPq6AOnN4csBCAEFzNTXQOeyJTkoysWAlBez5Ub6FXtJMwR1X49fHUncrF8vnvsvgCls5xeEW7l+JW/oTfQ2OMM+wViVkg0ppt9/UV7O2iBgCegF4hxFJr/BrHNhCznsqTI8bOxxN3PL8KZmDMgHsxqlQLKzUEg9eDTGLmdtPthLHc+gtoqKd4B2M97wplx9NySw1buqyLHiW4VEpd8TRiKCLcQ62uipJGOnf6OD++X0MC0Vkdy5/VQH65zXsw8p8u+85YbmC7wrVwZe8d1mVDC+YGumWWwClTAbre+LWvxBAUFQ9BJ038dEn7hCdn1vAe4xqObtni/0NHue2niWgsJWtd02lDryc7wsQ6RW+kKPplpJcjxE674cZuCE+FEusO2GNAeqlv1CBnAg5/ha2rogsnuQx/tZpyqiWXqe9XpFGoyIu+18AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVuD2k2Zaz0TbFWi/F1uqUYnLl/XS/ztlXSu2/W0YsAMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAAjJclj04kifG7PRApFI4NgwtaE5na/xCEBI572Nvp+Fn705OSvgzrXwnnI2jYp1yjd7Dr2yNAZrlpZEXWNamQAAcLAgAHDAIAAACATxIAAAAAAA0ABQIgoQcADQAJA0ANAwAAAAAADBABFAkEFwALFg4PEhEKCBkMjgHWkEzsX4sxtAcAAABVbmlXaXNlAgAAAFVXUAAAAGh0dHBzOi8vaXBmcy5pby9pcGZzL2JhZmtyZWljZmM3eDZtM3kzNHI0bHU2ZmpmZmN6MndhdWdsaXBnajc0NWY0Z2FqamxodmZ5N3pidmU03ALjfIvzbf+kv9oaOp8XmAZuMJMPRC9adWz6ugDpzeEADAUJAAsZDAjqZsLLlkg+5Q4GAAYAAQsWAQEMERcBExYVCQQDAAYFAhgQCxkMGQcFHcT1F2VQDq5Dw60qAAAATnJTAAAAAAABG6DngEJJzfc2bPejKeKBMlAqmMPYkUywgxbjHFbC/IoDPU1ACD8UbggHDzUW",
+ "base64"
+ ],
+ "transactionIndex": 234,
+ "version": 0
+ }
+ }
+ ]
+}
diff --git a/tests/fixtures/pump_multi_hop_20261025.json b/tests/fixtures/pump_multi_hop_20261025.json
new file mode 100644
index 0000000..7306712
--- /dev/null
+++ b/tests/fixtures/pump_multi_hop_20261025.json
@@ -0,0 +1,738 @@
+{
+ "cases": [
+ {
+ "name": "official_pool_then_curve_multi_hop",
+ "signature": "g1fC9wYKdndDZAyMCWkfFAqUNBCzj1brvNb3aAnRjxkrVhaSzsvELXFXz11U3DdmbM2AeFbwcaSgG86BqxApvFZ",
+ "wire_rpc": {
+ "blockTime": 1792857598,
+ "meta": {
+ "computeUnitsConsumed": 330408,
+ "costUnits": 342704,
+ "err": null,
+ "fee": 110000,
+ "innerInstructions": [
+ {
+ "index": 0,
+ "instructions": [
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "111157R57fqNzgMjCi7yd8cD1yQhPAwhedzS6uysMaAGbDUZUYiji1TswMPKaASzZW6nQT",
+ "programIdIndex": 17,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "GC3i2jSx8awwe9xBfbR9LBTrzgFPUE9b56kGnez3cWMeYXKVKFy48aGGgCCFsnW7KNcwSK5HwFW1oqdg5mpGRhbRM8",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "2zt6UCCHp66bJGRS4G7bTsjdxFh6FQ9sBEyRfGyPQKxYisAw",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 8
+ ],
+ "data": "1111cioyWkTQuLPfwxMoT2birGzJRhJTioHPSoXiyqTZ8i2Uit2xjR4zNTmWA8HgNbgfR",
+ "programIdIndex": 17,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 9,
+ 8,
+ 1,
+ 17,
+ 24
+ ],
+ "data": "1",
+ "programIdIndex": 32,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 9
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 17,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 9
+ ],
+ "data": "P",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 9,
+ 1
+ ],
+ "data": "6RqEKvU6HozdvNpvqsqC7pKHvLDaGf7W6JEGUaMKFsupm",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 14,
+ 8,
+ 28,
+ 17,
+ 24
+ ],
+ "data": "1",
+ "programIdIndex": 32,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 28
+ ],
+ "data": "84eT",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 14
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 17,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 14
+ ],
+ "data": "P",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 14,
+ 28
+ ],
+ "data": "6RqEKvU6HozdvNpvqsqC7pKHvLDaGf7W6JEGUaMKFsupm",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 0,
+ 1
+ ],
+ "data": "3Bxs4eQHmjXVhyyq",
+ "programIdIndex": 17,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 22,
+ 1,
+ 22
+ ],
+ "data": "G39KkjFmSSvsp9rL284N1x1o4GjqWfwgpvFBSUyPhnZotWbkk6er13bxKpwQRfVRsk4NNhjsdoKWXds2z4gefCtmt3AdM1nHXMr2rPTjE2SPEwx3N7u",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 22
+ ],
+ "data": "BjBG9fDQbu1raSNbBZQYubkmLijGDjgXJHpedBBGGrFrgSFFPaBAwnF",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 9,
+ 22
+ ],
+ "data": "6ApXSNCamGdm",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 1,
+ 22
+ ],
+ "data": "31tb",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 33
+ ],
+ "data": "NjG2ksDpCjg2vBAkvbNwNzbTBtkyZDQb88PDWQjMroYL6grYWjrj4qLgzhHuLuc7Vm88sE96VnmXfwWimEfoC2eFN6MSJNpCVQNoGExjPJsr9JdRbHckX5qgaozExVPbhPq6o5JF9FvJhHN9Ta7Jyg6VDzJx5PXFwNoMQPo2WHwRXSD8QguNLYwZZsykDCu1k2AxxBBY66AMJtN7qBn29s21EvXHZEYWgUsfZqiZPuWQ9yZsom7rUg5JsvGXgEoUq46TCnLSWX3Sa4njfBXQyUbNXFUHtcUNxHxWNYVJrQve34oY9MitHB3oWYYJ6bKPPLbBzynMFvZTmYUxDugS5SaVcKUwno1GtXMskmxQ77ezBXGxjjeoTLwrDavNA5pC59Q1LveSyxSrpmtDgzn3ou7FTn6hkyG7isHW6JhuakuXTMgG6TdDCDg2tFNcpEBCuVy5DKNCb5cjryaKW3dMBE",
+ "programIdIndex": 19,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 1,
+ "instructions": [
+ {
+ "accounts": [
+ 1
+ ],
+ "data": "84eT",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 3
+ ],
+ "data": "111157Vt9WuCLrLm8Bv7v3tbuxTXo5Bq7vv6Fb1ngBYUyZPEU62jGZ4xnkMV46KCckXWDq",
+ "programIdIndex": 17,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 3
+ ],
+ "data": "P",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 3,
+ 1
+ ],
+ "data": "6MeUrS32FsZaaMBU7i6ndCe6ozfwT4krHfHdvoL8eDRLZ",
+ "programIdIndex": 24,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 2,
+ "instructions": [
+ {
+ "accounts": [
+ 20
+ ],
+ "data": "84eT",
+ "programIdIndex": 23,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 0,
+ 10
+ ],
+ "data": "111135fAZn8PZBEU8J8iUmUTdbmBE6po1LhhgEJXngDjhxmUTshDA8EHdXaMJUsXdMg3PE",
+ "programIdIndex": 17,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 10
+ ],
+ "data": "P",
+ "programIdIndex": 23,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 10,
+ 20
+ ],
+ "data": "6MeUrS32FsZaaMBU7i6ndCe6ozfwT4krHfHdvoL8eDRLZ",
+ "programIdIndex": 23,
+ "stackHeight": 2
+ }
+ ]
+ },
+ {
+ "index": 5,
+ "instructions": [
+ {
+ "accounts": [
+ 10,
+ 20,
+ 13,
+ 0
+ ],
+ "data": "g7eSRZwiTurnL",
+ "programIdIndex": 23,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 13,
+ 20,
+ 16,
+ 7
+ ],
+ "data": "hdAm9QA8DyPL4",
+ "programIdIndex": 23,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 35
+ ],
+ "data": "F5sjDwsY6unG7Vuxump49QEE6GPqsKRRjbYtvmBf93sHQrJjyd2SWsqYMsC3jRbZjYqC6TpPoCa9YVFFmTuM7KrrgBEzsecRKsWW35TGCY4PvSRsecK9Ak5Gi6n7Xb5FtXSL29LVpz4CkRq6ZMxBDnLaPbb2BYNhRo4jvfZBQjpUFnpcu2QHfJa2j3ZG6PjnRHiVCQekDEZn3sGBUdV9fPHCr9Y1fzEwmSFyjXhVCBJkrpTRKhN8DHJxno5haENhinpsftYV6NaT9FkfK2y5pnCYjTAFzJdNM7Me4TZ8bzh4U8krcd8qvJRz6Ss3WAogEpjGzhXf12zeX1TN7rbPpLBqfHYF71b93BUXryppLsTC6WTcqJzANfCjPSGNQLTkP2cPmL8VQvMVT1drnzAdUoz2nUgLy7P7v3EBVNhyLVSd1zwEvweMGwjRAyUx4MUe3kYtoWiXPrrYno2w3Mro8TrHBTJVrnjbfRBtTgacu1zQdFjmUhyDxnKp4LaJKFctnmn6m9978PAAXXdxvzKUwf58EXBpZrcBuei5g5f1c73J5324DB9BbQpC45nFXR1MZZDwn4qD82SQPdqd5AsanLm45tE2AHm7cQPjowZ7MpPbKNKHAJv82WCQ6ytDFhxyjCL24pU9owU2dVUG2qJyatgRxXoAaLLKmKsMpaDKUPCAR5CZfXjxTKpCBa13it2t7",
+ "programIdIndex": 25,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 26,
+ 30,
+ 31,
+ 0,
+ 7,
+ 5,
+ 3,
+ 16,
+ 23,
+ 24,
+ 17,
+ 33,
+ 19,
+ 1,
+ 28,
+ 8,
+ 9,
+ 14
+ ],
+ "data": "EscmTVC6NvfETrL1otmWhREDggH7X",
+ "programIdIndex": 19,
+ "stackHeight": 2
+ },
+ {
+ "accounts": [
+ 5,
+ 28,
+ 14,
+ 7
+ ],
+ "data": "h1WdvkWkwUXW5",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 9,
+ 1,
+ 3,
+ 8
+ ],
+ "data": "gFVNA6XUw8Kcy",
+ "programIdIndex": 24,
+ "stackHeight": 3
+ },
+ {
+ "accounts": [
+ 33
+ ],
+ "data": "9TsSUqX1EufA2BpJyqWH324DfDhMu3qhRmuFSiJDzmVAyjhGyzbzB7vDVNKPSd8wv7F9VXMHiMSuqHhBsvriTrsEesvVmoJuzggcLmx6fdffKmsRrrAA3k1wPSyj8G98SkSNkrrgyu85SV5C5ibBFiVDQGPfPDakxFieYV2cxxdDDf2nUr8g9dTcy8FaDQ3kRpWzwxWo5GCooa9S6ryid1WMTbwYY5pMyr1xNGDgVFdihtQzD2qGXWCbuA4LNVyJnW9PLLVACpRxpcmza4wGubuG43yHBzBMZVkZ69fpCbnUWD3qxr7gCC1FM3swX5znzBbESLoGmBmaRhknJXfzR638oFDpGeD2tt9w24qRH6m9oFkCFqBxEZ8Qu8Td1Hv6cnu5aFGSKAzaEx3gpkfPJjH2fVgMbEEngsQt8s6mLy6k5q7coyn1HzM1ZSzquEmp49ZKiPEBCVj1CDLx95nR8CuhPJ6gDneVrewJTC5tmZBaYMaA92NDJZwkHb91cQdEHhpRMBeyN9J5ebWwzHbFqzFFhaeVpQt2fyDUXJw1xUF192f",
+ "programIdIndex": 19,
+ "stackHeight": 3
+ }
+ ]
+ }
+ ],
+ "loadedAddresses": {
+ "readonly": [],
+ "writable": []
+ },
+ "logMessages": [
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [1]",
+ "Program log: Instruction: CreateV2",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: MetadataPointerInstruction::Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1331 of 485765 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeMint2",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2094 of 482771 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [2]",
+ "Program log: Create",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1426 of 460988 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [3]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 454740 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2852 of 451670 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 19307 of 467821 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [2]",
+ "Program log: Create",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1495 of 385015 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [3]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 378698 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3107 of 375627 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 18133 of 390349 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: Initialize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 4824 of 365854 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: TokenMetadataInstruction: UpdateAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 5166 of 358780 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: MintTo",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2126 of 351422 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: SetAuthority",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1477 of 347360 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program data: G3KpTd7rY3YPAAAARnJhbmNlIFZzIEphcGFuBwAAAE1lbWVXYXIqAAAAaHR0cHM6Ly9tZXRhZGF0YS5qN3RyYWNrZXIuaW8vbS9pUzFwWm5Tc1dEkGqSa3DQn5YpeAiT6kbIRpBHxziDiuRYGDjQPuonhf9F0KRI1oF1euQgDdX5W46C3mF00T8f9NRaFTpiLCbSkgeg7gUvefDJd46H38wlFS5JA8z2pDw6r2Q+fbLY0XseLfwX+3v045LhBSq17mBDRvgnGFoLrCT2EWoiOsuFdrr+1dxqAAAAAAAQ2EfjzwMAujSNABgiAAAAeMX7UdECAACAxqR+jQMABt324e51j94YQl285GzN2rYa/E2DuQ0n/r35KNihi/wAAFGnXo45VriLt1LFro/0CFI9JysLTPoCRaoGsZ5zE4bPujSNABgiAAAAAAAAAAAAAAEB",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 339678 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 164228 of 500000 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [1]",
+ "Program log: CreateIdempotent",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: GetAccountDataSize",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 1495 of 325865 compute units",
+ "Program return: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb qgAAAAAAAAA=",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeImmutableOwner",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 734 of 319548 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [2]",
+ "Program log: Instruction: InitializeAccount3",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3107 of 316481 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 22715 of 335772 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL invoke [1]",
+ "Program log: CreateIdempotent",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [2]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 179 of 304559 compute units",
+ "Program return: TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA pQAAAAAAAAA=",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program 11111111111111111111111111111111 invoke [2]",
+ "Program 11111111111111111111111111111111 success",
+ "Program log: Initialize the associated token account",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [2]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 37 of 299470 compute units",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [2]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 229 of 297009 compute units",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL consumed 16594 of 313057 compute units",
+ "Program ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL success",
+ "Program 11111111111111111111111111111111 invoke [1]",
+ "Program 11111111111111111111111111111111 success",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [1]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 201 of 296313 compute units",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA invoke [1]",
+ "Program log: Instruction: MultiHopSwap",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [2]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 112 of 261523 compute units",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [2]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 112 of 248861 compute units",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program data: Z/RSHyz1d3f+1dxqAAAAAEcy3OayCgAAAPIFKgEAAAAAAAAAAAAAAADyBSoBAAAAb+BrAQXAAACVr417DwAAAADyBSoBAAAAAAAAAAAAAAAAAAAAAAAAAF0AAAAAAAAA7/6+AgAAAAAR80YnAQAAABHzRicBAAAAE/CTjcQkdFWIXilfKn8jXLG4GFA1iQxStgvX0ermnTwHoO4FL3nwyXeOh9/MJRUuSQPM9qQ8Oq9kPn2y2NF7HgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjqBnU1qOxwDQqX2cSlDp976NZXsciQaj4vjZ1Ja6ZIsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH6PSSVbHelkGfZnq/cNN0PUojdpY4Dn486kXNTq3lIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAbXVsdGlfaG9wX3N3YXAAAAAAAAAAAAAAAAAAAAAAiBMAAAAAAAB3f18BAAAAAOCJtxAEAAAAAAAAAAAAAAABya43amJbAwAAAAAAAAAAAAAAAAAAAAAAPAa8AgAAAAAAAAAAAAAAAA==",
+ "Program pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA invoke [2]",
+ "Program pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA consumed 2116 of 240383 compute units",
+ "Program pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [2]",
+ "Program log: Instruction: MultiHopCurveSwap",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: TransferChecked",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2977 of 192860 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [3]",
+ "Program log: Instruction: TransferChecked",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2977 of 187370 compute units",
+ "Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success",
+ "Program data: vdt/007mYe6QapJrcNCflil4CJPqRshGkEfHOIOK5FgYONA+6ieF/wAAAAAAAAAAC5HY/Y/oAAABB6DuBS958Ml3joffzCUVLkkDzPakPDqvZD59stjRex7+1dxqAAAAAAAAAAAAAAAA9X7/SVPnAgAAAAAAAAAAAPXm7P3B6AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALfwX+3v045LhBSq17mBDRvgnGFoLrCT2EWoiOsuFdroeAAAAAAAAANNdLzEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAG11bHRpX2hvcF9zd2FwAAAAAAAAAAAAAAAAAAAAAACIEwAAAAAAAAAAAAAAAAAAAAAAAFGnXo45VriLt1LFro/0CFI9JysLTPoCRaoGsZ5zE4bPdNSstaoKAAAuCTq2wiwAAHTUrLWqCgAAHgAAAAAAAADTXS8xCAAAANNdLzEIAAAAAAAAAAAAAAA=",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P invoke [3]",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 2170 of 176900 compute units",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P consumed 51919 of 224564 compute units",
+ "Program return: 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P C5HY/Y/oAAAAAAAAAAAAAA==",
+ "Program 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P success",
+ "Program pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA consumed 126252 of 296112 compute units",
+ "Program return: pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA C5HY/Y/oAAAAAAAAAAAAAA==",
+ "Program pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA success",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [1]",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 118 of 169860 compute units",
+ "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
+ "Program 11111111111111111111111111111111 invoke [1]",
+ "Program 11111111111111111111111111111111 success"
+ ],
+ "postBalances": [
+ 29512904014,
+ 2590800,
+ 11149834,
+ 1513840,
+ 7702527344,
+ 1513840,
+ 0,
+ 2179320,
+ 1493520,
+ 1513840,
+ 0,
+ 64321466186961,
+ 0,
+ 71475845206,
+ 1513840,
+ 1346200,
+ 1721866966,
+ 1,
+ 3104160,
+ 9700912471,
+ 1856043097572,
+ 1009200,
+ 1020235881,
+ 230130698,
+ 70228638,
+ 1260746836,
+ 4089842911,
+ 33103977,
+ 2626360,
+ 46715680,
+ 37292293,
+ 9272823,
+ 3388612899,
+ 168261611,
+ 1493520,
+ 4641093
+ ],
+ "postTokenBalances": [
+ {
+ "accountIndex": 3,
+ "mint": "Aijxkeq5L9iaDYZxfaXUhnHQj4cYeo8um6a3t5vzpump",
+ "owner": "WnBVqVTaiJk5hNbcwbHiffRVnMdf1aaxNU5JkSpvGub",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "255705136795915",
+ "decimals": 6,
+ "uiAmount": 255705136.795915,
+ "uiAmountString": "255705136.795915"
+ }
+ },
+ {
+ "accountIndex": 5,
+ "mint": "6Vk3fAQWYEot6JbQb8Nx8j5wZeDnMhzk8FajjHhZpump",
+ "owner": "2LqWmWBNPr1Jm17ovm7GmUf9qbL4Z7sh6kJvfbRpj8FM",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "199364237569576",
+ "decimals": 6,
+ "uiAmount": 199364237.569576,
+ "uiAmountString": "199364237.569576"
+ }
+ },
+ {
+ "accountIndex": 9,
+ "mint": "Aijxkeq5L9iaDYZxfaXUhnHQj4cYeo8um6a3t5vzpump",
+ "owner": "5hXezGZVX9N67LqKnfznLLrXqKzTFNEPbK6d5mdSamPo",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "744294863204085",
+ "decimals": 6,
+ "uiAmount": 744294863.204085,
+ "uiAmountString": "744294863.204085"
+ }
+ },
+ {
+ "accountIndex": 13,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "2LqWmWBNPr1Jm17ovm7GmUf9qbL4Z7sh6kJvfbRpj8FM",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "71474356766",
+ "decimals": 9,
+ "uiAmount": 71.474356766,
+ "uiAmountString": "71.474356766"
+ }
+ },
+ {
+ "accountIndex": 14,
+ "mint": "6Vk3fAQWYEot6JbQb8Nx8j5wZeDnMhzk8FajjHhZpump",
+ "owner": "5hXezGZVX9N67LqKnfznLLrXqKzTFNEPbK6d5mdSamPo",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "11763493646919",
+ "decimals": 6,
+ "uiAmount": 11763493.646919,
+ "uiAmountString": "11763493.646919"
+ }
+ },
+ {
+ "accountIndex": 16,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "5YxQFdt3Tr9zJLvkFccqXVUwhdTWJQc1fFg2YPbxvxeD",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "1720378526",
+ "decimals": 9,
+ "uiAmount": 1.720378526,
+ "uiAmountString": "1.720378526"
+ }
+ }
+ ],
+ "preBalances": [
+ 34524139854,
+ 0,
+ 11149834,
+ 0,
+ 7700027344,
+ 1513840,
+ 0,
+ 2179320,
+ 0,
+ 0,
+ 0,
+ 64321466186961,
+ 0,
+ 66498880973,
+ 0,
+ 1346200,
+ 1698831199,
+ 1,
+ 3104160,
+ 9700912471,
+ 1856043097572,
+ 1009200,
+ 1020235881,
+ 230130698,
+ 70228638,
+ 1260746836,
+ 4089842911,
+ 33103977,
+ 2626360,
+ 46715680,
+ 37292293,
+ 9272823,
+ 3388612899,
+ 168261611,
+ 1493520,
+ 4641093
+ ],
+ "preTokenBalances": [
+ {
+ "accountIndex": 5,
+ "mint": "6Vk3fAQWYEot6JbQb8Nx8j5wZeDnMhzk8FajjHhZpump",
+ "owner": "2LqWmWBNPr1Jm17ovm7GmUf9qbL4Z7sh6kJvfbRpj8FM",
+ "programId": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
+ "uiTokenAmount": {
+ "amount": "211127731216495",
+ "decimals": 6,
+ "uiAmount": 211127731.216495,
+ "uiAmountString": "211127731.216495"
+ }
+ },
+ {
+ "accountIndex": 13,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "2LqWmWBNPr1Jm17ovm7GmUf9qbL4Z7sh6kJvfbRpj8FM",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "66497392533",
+ "decimals": 9,
+ "uiAmount": 66.497392533,
+ "uiAmountString": "66.497392533"
+ }
+ },
+ {
+ "accountIndex": 16,
+ "mint": "So11111111111111111111111111111111111111112",
+ "owner": "5YxQFdt3Tr9zJLvkFccqXVUwhdTWJQc1fFg2YPbxvxeD",
+ "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
+ "uiTokenAmount": {
+ "amount": "1697342759",
+ "decimals": 9,
+ "uiAmount": 1.697342759,
+ "uiAmountString": "1.697342759"
+ }
+ }
+ ],
+ "rewards": [],
+ "status": {
+ "Ok": null
+ }
+ },
+ "slot": 460910106,
+ "transaction": [
+ "gQIAEw8AAADuplIcfoI5+NM+JsLRez/F4rPA3kDylJb82Vk9KDyiJAgkB6DuBS958Ml3joffzCUVLkkDzPakPDqvZD59stjRex6QapJrcNCflil4CJPqRshGkEfHOIOK5FgYONA+6ieF/wUq5den2qckpuqwpylUkYVa1KBnFmBnTE4DRVmAPWWjCLDxIpfBlHqo+hB8J8jBGWGjKr85tO6jmJ6F7BHSIzILenraVjsKcbQjbq96PNHHSzM4E8nhxnuDjJJD/LB5Ag5kEENds7PaqvY/r7TFmfsriA8CuQCUKk2gkRgBP/ugDw+AxLHokm3P8/Iuqu9Za+28sb5Pkzq/zvnNz/0SE+ET8JONxCR0VYheKV8qfyNcsbgYUDWJDFK2C9fR6uadPEXQpEjWgXV65CAN1flbjoLeYXTRPx/01FoVOmIsJtKSS9Sfo7G+q/kmSSDli65dBWcCj1SkqVfN5b8qLkWB6xeOoGdTWo7HANCpfZxKUOn3vo1lexyJBqPi+NnUlrpki6KLX9JqtHmmqcxsv2sLI+thiFo3HgEgrKkTvu89E4p4sLzLJxNLg3KurmvU76Ujt4LBz4XWJEPV3ghUoLSBYve0DoeojgT4YH71L6OoQsTUyujGi9d/LzRdxRzrh+3S1sxo3SrPopt+z8bNClx7MHrXlsw1WQ0UX9pfxe5yZoiy8TChts8jrPEe6Ry4uXPVdHZ0XrK7K84CS8RL7zApWZT4mDmhy33pWV3Nd9HChdVqdsj1K33kLk8feNqCH2xK2wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK2uon2zxvPQTlzwogKfA+M5jwhTle/v7xcfxkr4F0EBVuD2k2Zaz0TbFWi/F1uqUYnLl/XS/ztlXSu2/W0YsAabiFf+q4GE+2h/Y0YYwDXaxDncGus7VZig8AAAAAABBqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAAAGxcHOY40lZ9JkaLBeuVHRoo3MbhI0grXGdRSXcOYr8gbd9uHXZaGT2cvhRs7reawctIXtX1s3kTqM9YV+/wCpBt324e51j94YQl285GzN2rYa/E2DuQ0n/r35KNihi/wMFN78gl7GdpQlCBi7ZUBl9CmNMVbVcbTU+AkMGOmoYzqGXmnuD1SAyrz2Y1fk3C8Y1Y1Fwep0ifs3I9l5PHKmQSRuzH14/oHkF3OkaWVBmTeSOgdkR5ffbz61FEJgEMtRp16OOVa4i7dSxa6P9AhSPScrC0z6AkWqBrGecxOGz1jqfa4Amr8lmfXvlZydKTkUO3LQ/9RH7GB12vl/nRAib5q0pPGVjcCpyUw/tywHmVhD7aSF46JPEMaTmfgZlA+JC6ZE/h9VqhnxHNLS7BTTIztuCkvq7vcraYWOIeFw1oyXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZrPE26wH8HE6IPSPItYRKtZo39mrdV8XprDtT4FnTXGTeQFkkftcYf6bSoHih4E35NyUX7aTiV4YWj1rLSreDquVKcJUog59hwLm4YHmJHBOSFuR6cbYvtzvschaUWHReoIYBAAAAAAAgoQcAAAAABBMYfwAgBwEAIAcBABECDAAXAQEAGRoYABcDAQARAgwAARYICRoAERggAhILBgwhExwOGB0iBwUN1pBM7F+LMbQPAAAARnJhbmNlIFZzIEphcGFuBwAAAE1lbWVXYXIqAAAAaHR0cHM6Ly9tZXRhZGF0YS5qN3RyYWNrZXIuaW8vbS9pUzFwWm5Tc1dEB6DuBS958Ml3joffzCUVLkkDzPakPDqvZD59stjRex4AAAAAAAAAAAAAAQADAAERGBUBAAoAFBEXFQEACgIAAAAA8gUqAQAAAAoRAAoDHxsPEBcYESMZExoeIRwUBwUNARwICQ4rZEkT6fZvlADyBSoBAAAAAQAAAAAAAAAKAAAJAAQCAAAAoCUmAAAAAAAhpFQ6PMMcXxvIz9bL0gxRYSqpBeUdN+2XL69G0mX++TEu6uN11L0o4eDDjcMoCQtZbP+iMvsijNwDCdkKMzgIKZMd9ctr5ClvtKTUCmDp3vp+SDiyExdlHzB7YgmCH5mmOmn7Blloe4XTnj+OEMOI51EUDkgxI1jg4iLfforiAQ==",
+ "base64"
+ ],
+ "transactionIndex": 126,
+ "version": 1
+ }
+ }
+ ]
+}
diff --git a/tests/pump_execution.rs b/tests/pump_execution.rs
index 3896839..5a6876b 100644
--- a/tests/pump_execution.rs
+++ b/tests/pump_execution.rs
@@ -3,6 +3,130 @@ use solana_streamer_sdk::{
};
use solana_transaction_status::EncodedConfirmedTransactionWithStatusMeta;
+#[tokio::test]
+async fn reported_alt_creates_and_multi_hop_survive_the_streamer_facade() {
+ use solana_sdk::pubkey::Pubkey;
+ use solana_streamer_sdk::streaming::{
+ common::event_processor::process_shred_transaction,
+ event_parser::{
+ common::{filter::EventTypeFilter, types::EventType},
+ Protocol,
+ },
+ shred::TransactionWithSlot,
+ };
+ use std::sync::{Arc, Mutex};
+ let filter =
+ EventTypeFilter::include_only(vec![EventType::PumpFunCreateToken, EventType::PumpFunTrade]);
+ for source in [
+ include_str!("fixtures/pump_create_alt_20261026.json"),
+ include_str!("fixtures/pump_multi_hop_20261025.json"),
+ ] {
+ let fixture: serde_json::Value = serde_json::from_str(source).unwrap();
+ for case in fixture["cases"].as_array().unwrap() {
+ let rpc: EncodedConfirmedTransactionWithStatusMeta =
+ serde_json::from_value(case["wire_rpc"].clone()).unwrap();
+ let signed = rpc.transaction.transaction.decode().unwrap();
+ signed.verify_and_hash_message().unwrap();
+ let captured = Arc::new(Mutex::new(Vec::new()));
+ let output = captured.clone();
+ process_shred_transaction(
+ TransactionWithSlot::new(signed, rpc.slot, 123456, Some(888)),
+ &[Protocol::PumpFun],
+ Some(&filter),
+ Arc::new(move |e| output.lock().unwrap().push(e)),
+ None,
+ )
+ .await
+ .unwrap();
+ let events = captured.lock().unwrap();
+ assert_eq!(events.len(), 2, "{}", case["signature"]);
+ let DexEvent::PumpFunCreateTokenEvent(create) = &events[0] else {
+ panic!("create must be first")
+ };
+ let DexEvent::PumpFunTradeEvent(trade) = &events[1] else { panic!("trade missing") };
+ assert_eq!(create.ix_name, "create_v2");
+ assert_eq!(create.mint, trade.mint);
+ assert!(trade.is_created_buy && trade.is_buy);
+ for event in &*events {
+ assert_eq!(event.metadata().tx_index, Some(888));
+ assert_eq!(event.metadata().recv_us, 123456);
+ }
+ let multi_hop = trade.ix_name == "multi_hop_swap";
+ if multi_hop {
+ assert!(trade.third_program.is_some());
+ assert_eq!((trade.sol_amount, trade.token_amount, trade.quote_amount), (0, 0, 0));
+ } else {
+ assert_eq!(trade.token_program, Pubkey::default());
+ if trade.ix_name != "buy_exact_sol_in" {
+ assert_eq!(
+ trade.quote_mint,
+ Pubkey::default(),
+ "unknown quote must stay unknown"
+ );
+ }
+ }
+ for mode in 0..3 {
+ let mut rpc = rpc.clone();
+ if let Some(meta) = rpc.transaction.meta.as_mut() {
+ if let solana_transaction_status::option_serializer::OptionSerializer::Some(
+ logs,
+ ) = &mut meta.log_messages
+ {
+ if mode == 1 {
+ logs.clear();
+ }
+ if mode == 2 {
+ logs.truncate(logs.len() / 2);
+ }
+ }
+ }
+ let rpc_events = parse_encoded_rpc_transaction_as_streamer_events(
+ &rpc,
+ 123456,
+ &[Protocol::PumpFun],
+ Some(&filter),
+ )
+ .unwrap();
+ let (meta, transaction) =
+ solana_streamer_sdk::parser_sdk::convert_rpc_to_grpc(&rpc).unwrap();
+ let signature = transaction.signatures[0].clone();
+ let grpc_events = solana_streamer_sdk::streaming::common::event_processor::parse_grpc_transaction_events(
+ solana_streamer_sdk::streaming::grpc::TransactionPretty {
+ slot: rpc.slot, tx_index: Some(888), recv_us: 123456,
+ grpc_tx: yellowstone_grpc_proto::prelude::SubscribeUpdateTransactionInfo {
+ signature, transaction: Some(transaction), meta: Some(meta), index: 888,
+ ..Default::default()
+ },
+ ..Default::default()
+ }, &[Protocol::PumpFun], Some(&filter), None);
+ for executed in [rpc_events, grpc_events] {
+ assert!(
+ matches!(&executed[0], DexEvent::PumpFunCreateTokenEvent(c) if c.ix_name == "create_v2"),
+ "{} mode {mode}: {:?}",
+ case["signature"],
+ executed[0]
+ );
+ let fill = executed
+ .iter()
+ .find_map(|e| match e {
+ DexEvent::PumpFunTradeEvent(t) if t.mint == trade.mint => Some(t),
+ _ => None,
+ })
+ .unwrap();
+ assert_eq!(fill.ix_name, trade.ix_name);
+ if multi_hop {
+ assert!(fill.third_program.is_some());
+ assert_eq!(
+ (fill.sol_amount, fill.token_amount, fill.quote_amount),
+ (0, 255705136795915, 11728308720756)
+ );
+ }
+ }
+ }
+ }
+ }
+}
+
#[test]
fn delta_sell_execution_survives_truncated_logs() {
let fixture: serde_json::Value =