blockchain, where users swap tokens directly from their own wallets without handing custody of their funds to a company.">Swap $1 million of USDC for USDT against $20 million of liquidity. In a plain constant-product smart contract holding reserves of two or more tokens, supplied by users, that a decentralized exchange uses to execute trades automatically at a price set by a formula.">pool, the trade loses about 9% to price impact. In a Curve Finance pool with an amplification setting of 1,000, the same trade loses about 0.01%. Those are our own example numbers, before fees, but the gap is real: same money, same pair, and a gap of about 900 times that comes from one line of maths.
That line of maths is why specialised AMMs exist. Curve flattened the pricing curve around a peg. Balancer let a pool hold several assets at any weights. Maverick made liquidity follow the price. The Solana DEXs paired concentrated liquidity with very cheap transactions, and pump.fun used a bonding curve to price a token that has no market yet.
One of those names now carries a date. Balancer’s token holders voted to wind the protocol down, and the published schedule sets 30 October 2026 as the day its pausable pools move to withdrawals only. If you have ever held a Balancer position, go first to the section on the winddown below.
This lesson continues from Uniswap v3 and v4 concentrated liquidity. A quick reminder of the base case: a two-token pool keeps x·y=k, the price is the ratio of reserves, and larger trades move it further, as derived in our lesson on AMM maths. wallet. It becomes permanent when the provider withdraws.">Impermanent loss is covered in the liquidity pools lesson; here we only compare how each design changes it.
One formula per job: what an invariant decides
Every AMM in this lesson answers the same question: which combinations of balances does the pool accept? The rule is the invariant. Plot it and you get a curve, and that curve is the price list: its slope at the current balances is the marginal price, and the distance you travel along it is your price impact.
Change the rule and you change who the pool suits. Constant product works for any pair but spreads liquidity from zero to infinity, so most of it sits at prices that never trade. Each design below moves liquidity to where one kind of asset actually trades, then accepts a specific weakness in return. Keep asking what the weakness is. The two largest incidents in this lesson came from below the pool design itself: one from a compiler, one from a rounding step.
How Curve Finance works: a curve that stays flat near the peg
One paper started Curve Finance. Michael Egorov’s StableSwap whitepaper, dated 10 November 2019, describes a design for stablecoins that he says “could be called ‘Uniswap with leverage'”. Its token, CRV, followed in August 2020, according to Curve’s documentation.
StableSwap sits between constant sum and constant product
Start from two extremes. A constant-sum pool, x+y=D, always pays 1:1. No slippage at all, until an arbitrageur empties one side after the first depeg. A constant-product pool can never be emptied, but it charges slippage on every trade. Egorov blends the two with a weight, the coefficient χ, that is large when the pool is balanced and collapses when it is not.
χ·Dⁿ⁻¹·Σxᵢ + Πxᵢ = χ·Dⁿ + (D/n)ⁿ
χ = A·Πxᵢ / (D/n)ⁿ
A·nⁿ·Σxᵢ + D = A·D·nⁿ + Dⁿ⁺¹ / (nⁿ·Πxᵢ)
Here xᵢ are the balances, n is the number of coins, and D is the total value of the pool when all coins are at equal price. In a balanced pool, Πxᵢ equals (D/n)ⁿ, so χ equals A and the constant-sum term dominates. As the pool tilts, the product shrinks, χ falls toward zero, and the formula slides back to constant product. That is the whole trick: flat where the coins should trade, safe where they should not.
A is the amplification coefficient. The paper says of it that “the lower it is, the closer the invariant is to the constant product”. It used a practical value of 100 for its slippage charts. Its backtest on DAI, USDC and USDT from May to October 2019, on $30,000 of liquidity, found an optimum of A = 85 and a fee of 0.06%. The 312% APR in that simulation came from one thin 2019 backtest and says nothing about today’s pools.
The table applies the invariant to a two-coin pool holding 10 million of each stablecoin, with no fee. We calculated it ourselves with the routines of Curve’s 3pool contract, where Ann = A·n takes the place of the paper’s A·nⁿ. So in a two-coin pool the contract’s A is twice the paper’s A, and the figures below use the contract’s.
| Swap in (example) | Constant product | A = 10 | A = 100 | A = 1,000 |
|---|---|---|---|---|
| $100,000 | 0.99% | 0.091% | 0.0099% | 0.0010% |
| $1,000,000 | 9.09% | 0.908% | 0.0999% | 0.0101% |
| $5,000,000 | 33.33% | 5.32% | 0.649% | 0.0665% |
| $9,000,000 | 47.37% | 14.38% | 3.37% | 0.451% |
Curve’s own documentation gives a matching order of magnitude: in a healthy $20 million USDC/USDT pool, a $1 million swap would likely incur less than 0.01% slippage. Notice the last row, though. A $9 million swap into a $20 million pool costs 0.45% even at A = 1,000, because the trade pushes the pool far from balance and the curve starts to bend.

What the flat curve costs LPs when a peg breaks
A high A hides stress. Take the same example pool after it has tilted to 18 million of one coin and 2 million of the other. Selling the abundant coin at A = 1,000 still returns 0.988 of the scarce coin per unit, so the price looks almost normal. At A = 100 it returns 0.894, so the abundant coin trades 10.6% below the scarce one. The lower setting signals the imbalance sooner, and that is our calculation on an example, not a rule for choosing pools.
LPs in a StableSwap pool are fully passive: they set no range, and the pool holds liquidity across all prices. The price of that comfort is written in Curve’s docs: if an asset permanently depegs or is exploited, LPs “can incur significant losses”, because arbitrageurs sell them the failing coin and leave them holding it. The same docs warn against using Stableswap for a forex pair such as USDC and EURC, whose rate is not fixed. Curve’s own stablecoin, crvUSD, is a separate system covered in our lesson on CDP stablecoins.
CryptoSwap, Tricrypto and FXSwap follow a moving price
“Curve v2” is a name you will meet everywhere, and Curve’s technical docs call it misleading. The official name is CryptoSwap, from Egorov’s paper of 9 June 2021, “Automatic market-making with dynamic peg”. Pools hold 2 or 3 volatile assets, Tricrypto being the three-asset family. The paper claims 5 to 10 times higher liquidity than the Uniswap invariant, which is the author’s own simulation result.
The idea is to keep a StableSwap-like shape around an internal reference price, the price_scale, and to move that reference as the market moves. Two parameters set the shape: A concentrates liquidity around the centre, and gamma sets how wide it spreads. A higher gamma gives a wider curve.
Moving the centre has a cost. The docs put it in four words: “rebalancing realizes impermanent loss”. So the pool re-centres only when the price has moved beyond an adjustment step and the cost is below 50% of the fees earned. If fees run short, the liquidity stays behind the market. That is the weakness: passive for the LP, but stranded in a fast trend.
FXSwap, which Curve’s January 2026 recap presents as launched that month, is the newest branch. Its documentation describes two-asset markets whose price discovery happens outside the pool, such as forex pairs, with a finite “refuel” budget that helps pay for re-centring.
July 2023: the compiler was the vulnerability
On 30 July 2023, several Curve pools were drained through a flaw that was not in Curve’s code as written. The Vyper post-mortem shows that compiler versions 0.2.15, 0.2.16 and 0.3.0 gave each reentrancy lock its own storage slot, so functions meant to share a lock did not block each other. Totals vary by source and by how returned funds are counted: DefiLlama lists about $62 million, while CertiK counts about $69.3 million taken and $16.7 million returned, a net loss of about $52 million. Our composability lesson covers how the damage spread to CRV-backed loans.
Balancer pools: weights instead of a 50/50 split
The Balancer whitepaper by Fernando Martinelli and Nikolai Mushegian, dated 19 September 2019, turned the index fund around. Its pitch: “you collect fees from traders, who rebalance your portfolio by following arbitrage opportunities”. A pool can hold several tokens, each with a fixed weight, and the invariant is a weighted product.
V = Π Bₜ^Wₜ (the weights Wₜ sum to 1)
spot price = (B_in / W_in) / (B_out / W_out)
out = B_out · (1 − (B_in / (B_in + Δ))^(W_in / W_out))
Set two weights to 0.5 and you are back at x·y=k. Take instead an example pool of 80% TOKEN and 20% USDC holding 8,000,000 TOKEN and 200,000 USDC. The spot price is (200,000 / 0.2) / (8,000,000 / 0.8), or 0.10 USDC per TOKEN. The table shows buys without fees.
| USDC paid in (example) | TOKEN received | Average price | Price impact |
|---|---|---|---|
| 1,000 | 9,968.9 | 0.10031 | 0.31% |
| 10,000 | 96,987.6 | 0.10311 | 3.11% |
| 50,000 | 434,067.1 | 0.11519 | 15.19% |
The weights also change what an LP gives up. The value of a pool against simply holding is rw / (w·r + 1 − w), where w is the weight of the volatile token and r is its price ratio. The 50/50 column matches our impermanent loss lesson.
| Volatile token’s price | 50/50 pool vs holding | 80/20 pool vs holding |
|---|---|---|
| Halves (r = 0.5) | −5.72% | −4.28% |
| Doubles (r = 2) | −5.72% | −3.27% |
| Rises 4 times (r = 4) | −20.0% | −10.84% |
| Rises 10 times (r = 10) | −42.5% | −23.05% |
An 80/20 pool sells less of the volatile token on the way up, so it loses less to holding. It also gives thinner depth on the 20% side, which is what the price impact table shows.
From the v2 Vault to v3: boosted pools, hooks and LBPs
Later versions moved token custody into a shared Vault. Balancer v3 reached DefiLlama’s listings in December 2024, and its docs name three additions: native support for yield-bearing tokens, 100% boosted pools, and a hooks system for custom pool logic. Boosted pools keep part or all of their tokens in yield-bearing form. AutoRange Pools add fungible concentrated liquidity using virtual balances, and liquidity bootstrapping pools, or LBPs, change weights over time to run a token launch or sale.
3 November 2025: a rounding error in stable pools
On 3 November 2025, an attacker drained Balancer v2 Composable Stable Pools across several networks. Check Point Research traced it to balances pushed down to a few wei, where a rounding-down step in the scaling code understated the invariant D and so the price of the pool token. Repeated micro-swaps inside a single batch did the rest. Trail of Bits called it “a rounding direction issue that had been present in the code for many years” and independently confirmed that v3 was not affected.
Reported totals run from about $110 million (CoinDesk) to about $128 million (Check Point, DefiLlama), and Trail of Bits says “more than $100M”. The sources do not reconcile those figures, and they differ even on the number of networks, six or nine. According to BIP-892, whitehats and internal rescue work recovered about $8 million of user funds, with about $19.7 million more in osETH and osGNO handled separately by StakeWise.
| Date | Protocol | Flaw | Amount, by source |
|---|---|---|---|
| 30 July 2023 | Curve pools | Vyper compiler reentrancy lock | About $62M (DefiLlama) to $69.3M taken (CertiK), about $52M net of returns (CertiK) |
| 3 November 2025 | Balancer v2 Composable Stable Pools | Rounding direction | About $110M (CoinDesk) to $128M (Check Point) |
| 31 August 2026 | Balancer V1 pools | Rounding in single-sided joins | $1.39M (BIP-930) |
The third line came ten months later. V1 pools, deployed in 2020 with immutable code and no pause switch, were hit on 31 August 2026 through a fixed-point rounding weakness, then by copycats, while whitehats raced them with block-builder payments, according to BIP-930, which counts 120 affected pools.
Balancer is winding down: what the vote decided
On 23 March 2026, Martinelli announced the closure of Balancer Labs, the company behind the protocol, writing that it “has become a liability rather than an asset” and citing legal exposure from the exploit and a lack of revenue. Token holders then backed a restructuring. It did not produce the growth it needed, according to the proposal that followed: most revenue still came from v2.
That proposal, BIP-928, was posted on 14 September 2026. After a voting-power error was fixed and the Snapshot vote reset, it closed on 29 September with about 17.1 million BAL-weighted votes in favour across two Yes options and about 140,000 against. Only 42 voters took part. The published schedule says:
- On 30 October 2026, pools that can be paused move to withdrawals only. Where a pool’s contracts require it, recovery mode is enabled so that withdrawals stay open.
- Pools that cannot be paused keep working, with the protocol fee set to zero where the contracts allow it.
- Some v3 pools stay live until 30 November 2026 at their partners’ request. BIP-936 names nine partners, including Rocket Pool and StakeWise. The v3 Vault is then paused.
- Bug bounty coverage ends on 30 October for every pool.
- The treasury, at least $9 million at the token prices of September, goes to BAL holders who burn their tokens, in a first round opening at the end of May 2027. BIP-936 ends DAO governance on 1 June 2027.
This lesson was written on 30 October itself: we verified the votes and the published schedule, not whether each step has been executed on-chain. BIP-936 also limits the pause to pools still inside their pausable window. BIP-928 says the contracts are non-custodial, so withdrawing does not depend on anyone continuing to operate them. It also says that pools differ, so the treatment of your own pool is the one to look up. BIP-936 adds a detail for the long term: the v3 Vault unpauses by itself on 12 May 2029, which its authors call unavoidable.
Forgotten positions are the practical risk. A forum post of 23 October reports more than $500,000 of assets found in v3 buffer shares and legacy rewards, which portfolio dashboards can miss. It points to the legacy interface and a manual exit guide. Reach those from the official forum post, because a shutdown is an easy cover for fake “claim” and “migration” sites. None of this is advice on what to do with a position.
As of 30 October 2026, DefiLlama shows $16.6 million in Balancer V2, $14.1 million in V3 and $5.2 million in V1. An official, grant-funded fork, BIP-929, was rejected. BIP-932, a blessing for an independent fork without a grant, passed with nine voters, and we found no launch.
Maverick moves liquidity for the LP
Concentrated positions fall out of range and must be moved, by the LP or by a manager. Maverick builds the move into the contract. Its documentation offers four modes. Mode Right follows the price up, Mode Left follows it down, Mode Both follows it either way, and Mode Static stays put. Liquidity shifts according to a time-weighted average price, and the LP pays no gas for the shift.
A trailing position has its own cost, and Maverick’s docs have a page on “permanent loss”. When a position follows the price, it no longer waits for a return to the entry price, so the loss that is only “impermanent” in a fixed range can stop being temporary.
Maverick is active but small. On 30 October 2026, DefiLlama shows $0.97 million of staking or liquidity, measured at current market prices. It is the main size metric in DeFi.">TVL for Maverick V2 across four chains, against $134.8 million of volume in 30 days and $5,800 of fees. We could not establish why usage stayed this low.
Raydium, Orca and Meteora: Solana DEXs built on cheap transactions
Concentrated liquidity asks LPs to adjust often. On Ethereum mainnet that means gas every time. On Solana, Orca’s docs put a typical transaction at about 0.000005 to 0.00001 SOL, plus a refundable position rent of 0.0088 SOL. Frequent rebalancing stops being a cost that decides the strategy, and that shapes everything these venues build. Over the 30 days to 30 October 2026, DefiLlama counts $59.3 billion of DEX volume on Solana against $39.6 billion on Ethereum.
| Protocol (DefiLlama name) | TVL | 24h volume | 30d volume | 30d fees |
|---|---|---|---|---|
| Curve DEX | $1,117M | $1,074M | $3,221M | $4.12M |
| Balancer V2 | $16.6M | $3.0M | $62.1M | $75,600 |
| Balancer V3 | $14.1M | $1.71M | $71.5M | $43,400 |
| Maverick V2 | $0.97M | $4.6M | $134.8M | $5,800 |
| Raydium (AMM listing) | $1,090M | $213.4M | $5,236M | $11.86M |
| Orca DEX | $290.7M | $448.8M | $7,477M | $7.06M |
| Meteora DLMM | $147.6M | $130.3M | $3,708M | $24.3M |
| PumpSwap | $328.0M | $118.7M | $8,952M | $105.9M |
| pump.fun (bonding curve) | n/a | $122.7M | $4,541M | $61.9M |
All figures are from DefiLlama, retrieved on 30 October 2026, and they are reported volume, which says nothing about how many distinct traders stand behind it. Fees are what traders paid, not what LPs kept. Curve’s line covers all its chains. On Ethereum alone DefiLlama counts $3.03 billion, which by our calculation is about 7.7% of that chain’s DEX volume over 30 days. PumpSwap took about 15% of Solana’s.
Raydium went live in February 2021, according to its docs, as a hybrid AMM tied to Serum’s on-chain order book. Today it offers constant-product pools and concentrated pools in the Uniswap v3 style, plus LaunchLab, a bonding-curve launchpad that competes with pump.fun.
Orca centres on Whirlpools, its concentrated liquidity protocol. Its docs list fee tiers from 0.01% to 2.00%, adaptive fees that rise with volatility, and a split of each trade’s fee: 87% to LPs, 12% to the Orca DAO treasury and 1% to a climate fund.
Meteora’s DLMM takes another route. Liquidity sits in discrete price bins, a ladder in which each step is one “bin step” away from the next. Its formulas show a constant-sum rule inside each bin, L = P·x + y, so a trade has zero price impact until it uses up the active bin. With a bin step of 25 basis points, neighbouring prices sit about 0.25% apart. Curve stayed flat around one peg; DLMM builds a staircase of small flat steps wherever the LP places them.
Meteora and the LIBRA case: what a court did and did not decide
The LIBRA token launched on Solana on 14 February 2025. Trading surged after a post by Argentina’s president, Javier Milei, and the price collapsed within hours. Investors sued in New York, alleging fraud and racketeering around LIBRA and an earlier token, M3M3. They alleged that Meteora and former chief executive Benjamin Chow took part, including through help with liquidity infrastructure.
On 29 September 2026, Judge Jennifer Rochon of the Southern District of New York dismissed the amended complaint with prejudice and closed the case, in an opinion and order in Hurlock v. Kelsier Labs. She found no pattern of racketeering, because the conduct alleged was too short and showed no continuing threat, no adequately pleaded fraudulent intent by Chow, and no pleading that Meteora is capable of being sued. Non-RICO claims against the Kelsier defendants fell for lack of personal jurisdiction, which is no ruling on their substance. She also refused a second amended complaint as futile. It was a decision on the pleadings, not a finding that the launches were clean. Crypto.news reported on 2 October that separate proceedings continue in Argentina, and we found no report of an appeal.
Bonding curves: how pump.fun prices a token before it has a market
A bonding curve is a price formula with one seller: the contract itself. It needs no LPs and no starting liquidity, because the curve quotes a price for every token sold. For a brand-new coin, that solves the problem an AMM cannot: nobody has to fund a pool first.
Pump.fun uses a familiar shape. Its public documentation says the curve “is based on Uniswap V2 and uses synthetic x and y reserves”. That is the x·y=k of our AMM maths lesson, seeded with virtual balances that nobody deposited.
The 85 SOL figure is a result of the parameters
The program’s settings read 1,073,000,000 virtual tokens, 30 virtual SOL, 793,100,000 tokens for sale and a supply of 1 billion. The rest is arithmetic, and we ignore fees here. k is 1.073 billion times 30, or 32.19 billion. The first price is 30 / 1.073 billion, about 0.000000028 SOL per token. Selling all 793.1 million tokens leaves 279.9 million virtual tokens, which forces virtual SOL to 115.0. Subtract the virtual 30 and the buyers have paid in 85 SOL.
So the “85 SOL graduation” often quoted is no setting. It follows from those reserve parameters, and it would change if they did. The last price on the curve is about 14.7 times the first. The remaining 206.9 million tokens and the 85 SOL then seed the AMM pool at about the same price, 410.8 against 410.9 SOL of implied full value, so the market continues without a jump.

The curve rewards being early by a wide margin, as these fee-free amounts show.
| SOL paid at the start | Tokens received | Share of supply |
|---|---|---|
| 1 SOL | 34.6 million | 3.46% |
| 10 SOL | 268.3 million | 26.8% |
| 50 SOL | 670.6 million | 67.1% |
One buyer with 50 SOL would hold two thirds of the supply. A bot that buys in the first block pays the first price. Everyone else buys higher, and the only exit before graduation is selling back into the same curve.
Graduation to PumpSwap, and how few tokens get there
Tokens used to move to Raydium for a 6 SOL fee. On 20 March 2025, The Block reported that pump.fun had launched PumpSwap, its own constant-product AMM, with no migration fee and a 0.25% trade fee: 0.20% to LPs and 0.05% to the protocol. The program notes say the LP tokens received at migration are burned. Fees have since become dynamic and depend on market cap, so check the current schedule rather than rely on those launch figures. In July 2026, The Block described a mechanism called BOOST, which uses part of the migration liquidity for automatic buys in the five minutes after graduation and burns what it buys.
Few tokens reach that stage. Reports from mid-June 2026 put the seven-day average graduation rate at 0.26%, a figure KuCoin relayed from Odaily. The Block wrote on 29 July that the rate had reached 6.7% the previous Friday, about eight times June’s average, and linked the jump to BOOST, which acts only after a token has bonded and so works by making traders bid harder. One is a weekly average and the other a single day, so they cannot be compared directly. A widely repeated claim that 98% of pump.fun tokens lose their value has no study behind it that we could find; it seems to come from graduation rates, and failing to graduate is not the same as losing value, even if the trader’s result may be similar. Our guide to how rug pulls work covers what to look at on a new token, and this lesson gives no opinion on buying one.
Are meme coin launchpads legal? One lawsuit and two regulators
In the United States, the Division of Corporation Finance at the SEC said on 27 February 2025 that transactions in the meme coins it described “do not involve the offer and sale of securities under the federal securities laws”. That is a staff view with no legal force, it does not settle any specific coin, and it leaves fraud open to other authorities.
The class action against Baton Corporation, the company behind pump.fun, went further than a statement. In an opinion of 31 August 2026 in Aguilar v. Baton (S.D.N.Y.), Judge Colleen McMahon granted the motions to dismiss in part. RICO claims by two of the three named plaintiffs continue against Baton and three co-founders: she held wire fraud and unlicensed money transmission adequately pleaded as predicate acts, and rejected the illegal gambling theory. She dismissed all claims against Solana Labs, the Solana Foundation and the five Solana executives named, the third plaintiff’s claims, the unjust enrichment count and the Securities Act counts: for the FRED and GRIFFAIN tokens, with prejudice, because no common enterprise was pleaded, and for 18 other tokens, without prejudice, for lack of class standing. What remains against Baton and the co-founders are allegations. Surviving a motion to dismiss is not a finding of liability, and we found no later ruling.
EU law takes another route: a public offer of crypto-assets generally needs a compliant white paper under MiCA. Italy gave a concrete case: Consob decision 23815 of 8 January 2026 found that Fabrizio Corona’s offer of the $CORONA memecoin breached the regulation, with no compliant white paper. Consob’s public notice gives no amount; Italian press citing the decision reported a fine of €200,000.
Choosing between AMM designs, and reading the next one
| Design | Built for | Who adjusts the position | Main weakness |
|---|---|---|---|
| Constant product | Any pair | Nobody | Thin depth near the price |
| StableSwap | Pegged assets | Nobody | A permanent depeg leaves LPs with the failing asset |
| CryptoSwap, FXSwap | Volatile or externally priced pairs | The algorithm, within limits | Liquidity can be left behind in a fast move |
| Weighted pools | Portfolios, uneven exposure | Nobody; arbitrage rebalances | Thinner depth on the small side |
| Concentrated ranges | Active LPs | The LP or a manager | Out-of-range time and amplified loss |
| Directional modes | LPs with a directional view | The contract | Loss may not reverse |
| Bins (DLMM) | Tailored liquidity shapes | The LP | Upkeep; the active bin can drain quickly |
| Bonding curve | Launching a token | Nobody | Late buyers pay the top of the curve |
Before trusting any new curve, whichever chain it runs on, a short list catches most of what this lesson has shown:
- Check who audited which version, and when. A 2021 audit says little about a 2026 deployment.
- Find the compiler and its version. Curve’s pools were hit through theirs.
- Ask what happens at extreme balances. Balancer’s bugs appeared near dust amounts, far from normal use.
- See whether the contract can be paused or upgraded, and by whom. V1’s immutable pools could not be stopped.
- Separate what traders paid from what LPs kept: DefiLlama’s fee figures show the first.
- Read the protocol’s governance forum. Balancer’s schedule was public there for six weeks.
Tax and rules for US and UK readers
The IRS digital assets page, last reviewed on 2 September 2026, lists exchanging one digital asset for another as a disposition, so a USDC to USDT swap on Curve counts, even at almost no gain. Non-custodial brokers fall outside the final Form 1099-DA rules, so expect no form from a DEX. Liquidity provider transactions are among those brokers need not report for now under Notice 2024-57, but the page does not say how adding liquidity is taxed. Our US crypto tax guide has the general rules.
For UK readers, HMRC’s Cryptoassets Manual has a DeFi section focused on lending and staking. Its chargeable gains page briefly mentions liquidity providers and liquidity tokens without defining how pools work, so a specific pool may need specific analysis.
The next lesson moves up one layer, to the aggregators that split a single order across all of these pools.



