# Account Abstraction

All operations in the Ambient dex can be undertaken with *account abstraction*, where a user signs an operation off-chain and a third party relayer executes it on their behalf. Relayers can be made in any arbitrary token from a user's balance. There are multiple reasons why a user would want to do this:

* Avoid the inconvenience of managing transactions
* Pay an exact cost with easier to manage tokens (like USDC) instead of worrying about calculating gas fees.
* Save on execution costs by having the relayer bundle their actions with other similar actions to amortize the gas cost.
* Make a pre-signed transaction and save it for later&#x20;

There are two types of account abstraction, one is *immediate* and the other is *conditional*. Immediate account abstraction occurs when a user signs an intention and sends it to a relayer with the hope of imminent and unconditional execution.

Conditional account abstraction is when a user signs a transaction but prefers for it to be executed only after some condition is met, such as a fixed time delay or a certain market condition such as a stop loss. All intentions in Ambient can be gated with a check to an arbitrary oracle contract with arbitrary calldata. E.g. to implement a stop loss, the intention can be signed with a call to an oracle that checks the Chainlink price has exceeded a given threshold.

Intentions in Ambient use a multi-dimensional nonce system, so unlike Ethereum transactions they can be executed with arbitrary dependence and a user doesn't have to wait for one to finish before the next executes.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ambient.finance/concepts/account-abstraction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
