> ## Documentation Index
> Fetch the complete documentation index at: https://docs.inkyswap.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Contract Overview

> Current InkyPump deployment model, write entry points, and upgrade-safe routing.

InkyPump V2 uses a hook per deployment. The hook stores launch state, creates tokens, runs the bonding curve, and owns the post-bond V4 pool logic.

<Warning>
  There is no single permanent V2 hook address. Use `/api/capabilities` for new native launches and the token's own `hook_address` for existing launches.
</Warning>

## Public launch deployments

Checked against production on September 21, 2026:

| Network | Chain ID | Deployment | Public hook address | Use |
| - | -: | - | - | - |
| Ink | `57073` | Current | `0x893183da2411c7df81f103BfEf09E4E46C326aC4` | Create new native launches and trade its tokens |
| Ink | `57073` | Previous | `0x4cC8F6d5B7cE150CCC0A9B7664532B1283b96AC4` | Trade existing tokens only; do not create new launches |
| Robinhood | `4663` | Current | `0x50B9Af842DACB8Fc7476660cc86d3787CAD66aC4` | Create new native launches and trade its tokens |

The API also returns a machine-readable `version` value. Treat it as an opaque deployment ID for routing and diagnostics. Do not show that internal ID as a product name.

Read [Networks and Deployments](/integrations/networks-and-deployments) for runtime hashes and chain infrastructure.

## Architecture

```text theme={null}
InkyPump hook
  - stores launch and fee state
  - delegates curve writes to a trading module
  - delegates or exposes previews through its viewer path
  - creates and snapshots the exact V4 PoolKey
  - remains the hook for every token it created

xStocks
  - one quote wrapper and hook per supported asset
  - separate release and deployment evidence
  - target, prebuy, fees, and pool liquidity use wrapper units
```

## Entry points

| Job | Native hook | xStocks hook |
| - | - | - |
| Create | `createLaunch(params)` with optional `msg.value` | `createLaunchWithQuotePrebuy(params, quotePrebuy)` after wrapper approval |
| Read state | `getLaunchState(launchId)` | Same |
| Read pool | Corrected hooks: `getLaunchPoolKey`; legacy Ink: indexed immutable fields | `getLaunchPoolKey(launchId)` |
| Preview curve buy | `previewBuy(launchId, quoteIn)` | `previewBuy(launchId, quoteIn)` where supported by that deployment |
| Preview curve sell | `previewSell(launchId, tokenAmount)` | Same quote-denominated shape |
| Buy before bond | `buy(...) payable` | `buyWithQuote(...)` after wrapper approval |
| Sell before bond | Approve token to hook, then `sell(...)` | Approve token to hook, then quoted sell entry |

After bonding, use the exact V4 pool key resolved for the launch's ABI family. Do not derive a WETH pool from assumptions. See [Post-Bond Pool](/trading/post-bond-pool).

## Caller identity

The direct caller becomes the creator and fee recipient. `createLaunchFor` can direct launch-time tokens and refunds to a prebuy recipient, but the caller still remains creator. A partner should normally let the user's wallet call the hook directly.

## Fees differ by deployment

The protocol and variable curve fee are currently 100 basis points each on the checked native deployments. The variable share's destination differs:

* Current Ink routes the former buyback share to holder fee distribution.
* Older Ink deployments use the buy-and-burn design.
* Creator withdrawal is `withdrawFees(uint256)` on current Ink and Robinhood, but `withdrawFees()` on the older Ink hook.

Use `feeWithdrawal` and deployment version from Capabilities. Do not guess a selector from the chain alone.

## Constants

Current native deployment values:

```solidity theme={null}
TOTAL_SUPPLY = 1_000_000_000 ether;
MIN_RAISE = 1 ether;
MAX_RAISE = 5 ether;
MAX_GAIN_BPS = 200_000;
MIN_BUY_ETH = 0.00001 ether;
PROTOCOL_FEE_BPS = 100;
VARIABLE_FEE_BPS = 100;
BPS_DENOMINATOR = 10_000;
POOL_FEE = 1_000;
```

xStocks hooks store their own quote-denominated limits. Read them from `/api/xstocks/quote-assets`.

<CardGroup cols={2}>
  <Card title="ABI and events" icon="file-code" href="/api-reference/contracts/abi">
    Exact tuples and event signatures.
  </Card>

  <Card title="Token creation" icon="coins" href="/api-reference/contracts/token-creation">
    Native and wrapper-quoted creation calls.
  </Card>

  <Card title="Trading" icon="arrows-rotate" href="/api-reference/contracts/trading">
    Curve, pool, approval, and captcha boundaries.
  </Card>

  <Card title="Launchpad quickstart" icon="rocket" href="/integrations/launchpad-quickstart">
    End-to-end browser wallet example.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.