> For the complete documentation index, see [llms.txt](https://docs.liquidapps.io/liquidapps-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.liquidapps.io/liquidapps-documentation/eosio-guides/testnet-creation-guides/creating-jungle-3-account.md).

# Creating Jungle 3 account

## Create Keys

To create a jungle3 account, use cleos or some other tool to create a key for you

```bash
cleos create key --to-console
export OWNER_PRIVATE_KEY= # private key provided
export ACTIVE_PRIVATE_KEY= # private key provided
```

## Create Account

Create account here with public key: <https://monitor.jungletestnet.io/#account>

```bash
export JUNGLE_ACCOUNT=
export JUNGLE_ENDPOINT=https://jungle3.cryptolions.io:443
```

{% hint style="warning" %}
Test accounts can only contain the characters a-z (lowercase), 1-5 and they **must be 12 characters.**
{% endhint %}

## Import Keys

Import private key(s).

{% tabs %}
{% tab title="Zeus" %}

```bash
zeus key import $JUNGLE_ACCOUNT --owner-private-key  --active-private-key $ACTIVE_PRIVATE_KEY --network=jungle3
```

{% endtab %}

{% tab title="Cleos" %}

```bash
cleos wallet import --private-key $ACTIVE_PRIVATE_KEY

# if you do not have a wallet created, create with
cleos wallet create --file wallet_password.pwd
# save wallet password
```

{% endtab %}
{% endtabs %}

{% hint style="warning" %}
Be sure to save your wallet password!
{% endhint %}

## Faucet

Use the faucet to get 100 initial tokens: <https://monitor.jungletestnet.io/#faucet>

## Stake CPU/NET

Now we will stake EOS for CPU/NET so that we can run transactions.

```bash
# below amounts use 100 EOS total
cleos -u $JUNGLE_ENDPOINT system delegatebw $JUNGLE_ACCOUNT $JUNGLE_ACCOUNT "35.0000 EOS" "65.0000 EOS" -p $JUNGLE_ACCOUNT@active
```

{% hint style="warning" %}
Now unfortunately this isn't enough EOS to set the smart contract.  We need to buy RAM, but the faucet only allows 1 use per 6 hours, so what do we do?  We create 3 more accounts, send the faceted EOS to our account, and buy that RAM. Let's go.
{% endhint %}

## Create more accounts

Create 3 more accounts using the same public key as before [here](https://monitor.jungletestnet.io/#account)

Hit the faucet again [here](https://monitor.jungletestnet.io/#faucet) for each account

```bash
# update from to 1,2,3 created account name
# update to to JUNGLE_ACCOUNT
# update actor to from
cleos -u https://api.jungle3.alohaeos.com push transaction '{
  "delay_sec": 0,
  "max_cpu_usage_ms": 0,
  "actions": [
    {
      "account": "eosio.token",
      "name": "transfer",
      "data": {
        "from": "tokenexampl4",
        "to": "tokenexample",
        "quantity": "95.0000 EOS",
        "memo": ""
      },
      "authorization": [
        {
          "actor": "tokenexampl4",
          "permission": "active"
        }
      ]
    }
  ]
}'
# repeat for each account
```

If the trx by some miracle goes through, **skip to** **Buy more resources.**

{% hint style="info" %}
If you get **Error 3080004: Transaction exceeded the current CPU usage limit imposed on the transaction** then you will need to stake some of the CPU first (5 EOS of the 100 you got) then send the remaining CPU (95 from the 5 you're about to stake).
{% endhint %}

```bash
export GENEROUS_JUNGLE_ACCOUNT=
cleos -u $JUNGLE_ENDPOINT system delegatebw $GENEROUS_JUNGLE_ACCOUNT $GENEROUS_JUNGLE_ACCOUNT "0.0000 EOS" "5.0000 EOS" -p $GENEROUS_JUNGLE_ACCOUNT@active  
```

Adjust transfer `amount`, `from`, and `actor` to:

```bash
"quantity": "95.0000 EOS",
"from": "first_account",
"actor": "first_account",
```

## Buy More Resources

Now we will buy 285 EOS worth of RAM.

```bash
cleos -u $JUNGLE_ENDPOINT system buyram $JUNGLE_ACCOUNT $JUNGLE_ACCOUNT "285.0000 EOS" -p $JUNGLE_ACCOUNT@active 
```

## Set eosio.code permission

`eosio.code` allows a smart contract to sign actions itself, we will set this up under the `active` permission level.

```bash
cleos -u $JUNGLE_ENDPOINT set account permission $JUNGLE_ACCOUNT active $JUNGLE_ACCOUNT --add-code
```

## #party

{% hint style="info" %}
If you still don't have enough CPU/NET, repeat the process and delegate more CPU/NET
{% endhint %}
