# Manta Acala Integration Experiment
Below is the experimental Manta-Acala XCM messaging test:
## Setup
* Install Manta
```bash=
git clone https://github.com/Manta-Network/Manta.git
git checkout b24402f
cd Manta
cargo build --release --features manta-pc
```
* Install Acala (manta's fork, with minor changes on paying XCM fee using MA)
```bash=
git clone https://github.com/Manta-Network/Acala.git
git checkout e65b57a
cd Acala
cargo build --release --features with-karura-runtime
```
* Install Manta-PC-Launch (Manta's fork of Polkadot Launch, with manta-acala configuration), and start the cluster
```bash=
git clone https://github.com/Manta-Network/manta-pc-launch.git
cd manta-pc-launch
yarn install
yarn start ./manta-acala.json
```
## Experiment
1. **Wait until two parachains start to produce blocks (Acala's Id 2000, Manta's Id is 2084)**

2. **Transfer Token from Acala to Manta**:
Open Acala client (https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9999), in Developer -> Extrinsics:
a. choose `xTokens` -> transfer
b. choose `KAR` as TokenSymbol
c. In destination, should X3 -> [Parent, Parachain(2084), AccountId32(<desination-id>)]
d. set `dest_weight` to `1`

Sign and send the transaction, then you can see it succeed in Manta client (https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9988)

3. **Transfer Token from Manta to Acala**:
Open Manta client (https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9988)
a. copy and paste the following to `settings`->`developer`:
```javascript
{
"TokenSymbol": {
"_enum": {
"MA": 5,
"KMA": 1,
"ACA": 0,
"KAR": 128,
"SDN": 50
}
},
"CurrencyId": {
"_enum": {
"Token": "TokenSymbol"
}
}
}
```

b. `extrinsics` -> `mantaXassets` do the following

c. you can see it succeed on Acala client (https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9999):
