Execute a flash-loan arbitrage (permissionless).
All struct params (flash loan, requests, ops, sub-auths) are passed as
opaque Val to avoid embedding their type definitions in this WASM —
they are forwarded as-is to the target contracts which own the types.
a — Parallax contract addressb — ops (Vec<Op>, opaque passthrough → parallax.a)c — Blend pool addressd — flash loan params (FlashLoan struct, opaque passthrough → pool.flash_loan)e — Blend requests (Vec<Request>, opaque passthrough → pool.flash_loan)f — asset address (the token being traded, needed for approval + sweep)g — minimum profit (remaining balance after flash loan must be ≥ this)h — sub-auth entries (opaque passthrough → parallax.a)Returns profit sent to payout address.
Panics if final balance is less than g.
fn a(
env: soroban_sdk::Env,
a: soroban_sdk::Address,
b: soroban_sdk::Val,
c: soroban_sdk::Address,
d: soroban_sdk::Val,
e: soroban_sdk::Val,
f: soroban_sdk::Address,
g: i128,
h: soroban_sdk::Val,
) -> i128
Set the payout address at deploy time.
fn __constructor(env: soroban_sdk::Env, a: soroban_sdk::Address)