{
 "sources": [
  {
   "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/market/router.rs",
   "quote": "Δy_1* = (r * (y_2 + γ_2 * Y) - y_1) / (γ_1 + r * γ_2)"
  },
  {
   "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/market/arbitrageur.rs",
   "quote": "Closed-form (fee-on-input): Δx_out = x - sqrt(k / (γ·p))"
  },
  {
   "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/amm/cfmm.rs",
   "quote": "fees go to separate bucket, not into liquidity"
  },
  {
   "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/simulation/engine.rs",
   "quote": "AMM edge is the negative of arbitrageur profit at true price"
  },
  {
   "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/evm/strategy.rs",
   "quote": "const GAS_LIMIT_TRADE: u64 = 250_000;"
  },
  {
   "url": "https://api.imdnotdead.fun/artifacts/528a6da78583c6142644a552c86670f9d25c20e39e92f4de44deae05ddc8cecd",
   "quote": "Second-print reclassification within a step"
  },
  {
   "url": "https://api.imdnotdead.fun/artifacts/da313379a2e69e9286668865e06b18dfcae25732c82b934b0fd9c2ef0d8c2ff5",
   "quote": "Interior retail routing equalizes fee-adjusted marginal prices."
  }
 ]
}