> For the complete documentation index, see [llms.txt](https://yagensh.gitbook.io/not1inch/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yagensh.gitbook.io/not1inch/documentation/basics/editor.md).

# EVM to SUI Single Fill Swap

For EVM to SUI Single fill Swap <br>

UserEVM- 0x39619C9fe2AF793f847D112123F62c01df0A0025

ResolverEVM - 0x4207ebd97F999F142fFD3696dD76A61193b23e89

UserSUI - 0x7ccd0a41cb630ed3ec4088beb3feebf0507412bf43115a6338915d51632dae00

ResolverSUI - 0x8acfda09209247fd73805b2e2fce19d1400d148ea38bdb9237f15925593eff27

**Step - 1**&#x20;

**User Announces Intent to do cross chain swap for 100 Arbitrum USDC to 0.05 SUI**\
\
**The order is created with the sdk with single secret**

Step - 2

Duch Auction Starts

User Gives Allownce To Resolver contract to spend the funds on behalf of user through Limit order protocol

<figure><img src="/files/eFkhfh8oZfxpOixGnmVn" alt=""><figcaption></figcaption></figure>

Step - 3\
\
Resolver fills Order Through Resolver Contract So user never leaves custody of funds to anyone during the swap.\
\
Step - 4\
\
Source Escrow proxy contract is deployed through limit order protocol and escrow factory contract with user's 100 usd and Resolver's safety deposit with the secret hash.\ <br>

<figure><img src="/files/4ecDYgNNdbBjFFHXOnG0" alt=""><figcaption></figcaption></figure>

### Step - 5

Destination escrow is created by resolver on SUI side with funds + safety deposit (Htlc contract) with the same secret hash.

<figure><img src="/files/u7SRmQqk4sXA7JdjPZr4" alt=""><figcaption></figcaption></figure>

Step - 6<br>

Revealing of the secret by the user after both escrows are created

Step - 7\
\
Claim function is called on the desination side with shared secret which transfers the desination funds to the user and safety deposit to the resolver \ <br>

<figure><img src="/files/QjT1u1TMgNTNmHBMqQpi" alt=""><figcaption></figcaption></figure>

Step - 8

Resolver claims funds on the Source chain with the shared secret\ <br>

<figure><img src="/files/nSIJ1X5H4nXWInMpnqJy" alt=""><figcaption></figcaption></figure>

Step - 9\
\
Resolver Sweeps Funds from the resolver contract\ <br>

<figure><img src="/files/FoiqXVAb7PvYKy88kkNZ" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/uzCQALoFRC6faBNKQBf2" alt=""><figcaption></figcaption></figure>

Step - 10\
\
If the escrows are not created or secret is not shared then both parties gets refunded and also after the timelocks the swaps cancels and refunds happen.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://yagensh.gitbook.io/not1inch/documentation/basics/editor.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
