# Key Features

* **Multiple Markets**
  * Create and manage various base-quote pairs with custom tick/lot sizes, fees, and trading status.
* **On-Chain Matching**
  * Trades match against the opposite side of the book entirely on-chain, with price-time priority.
* **Order Types**
  * **IOC (Immediate-Or-Cancel)**: Fills immediately; remainder is canceled. Fails if nothing is executed.
  * **Post (Book-or-Cancel)**: Never crosses on submission; reverts if it would.
  * **Basic**: Fills any crossing portion, then posts the remainder.
* **Claimable Balances**
  * Matched proceeds remain in the contract until the user calls `claim(token, amount)`.
* **Upgradable Contract**
  * The contract can be upgraded by the owner, but note the admin key trust assumption.
