# Iyanadonte
## Step 1: Create and deploy a smart contract
Installing Rust
![](https://i.imgur.com/5FwQtnx.png)
Test the Contract
![](https://i.imgur.com/Nu2Xy1k.png)
Compile to WASM
![](https://i.imgur.com/o4x4klE.png)
**Local Network Testing**
![](https://i.imgur.com/1LHE8Wi.png)
**Check the Client Version**
![](https://i.imgur.com/z6R8lwu.png)
**Deploy the Contract**
![](https://i.imgur.com/0Q7sZav.png)
**Check Deploy Status**
![](https://i.imgur.com/49exXk7.png)
## Step 2: Complete one of the existing tutorials for writing smart contracts
**Multi-Signature Tutorial**
Building the Smart Contract
![](https://i.imgur.com/HimEhCP.png)
Faucet account details
![](https://i.imgur.com/rsOBcyJ.png)
Setting up the Client
![](https://i.imgur.com/zPgKo6e.png)
Testing the Client
![](https://i.imgur.com/VadCFz0.png)
## Step 3: Demonstrate key management concepts
**Scenario 3: signing transactions with multiple keys**
Create a JS code with name *iyanadonte_3.js* at ../client/src
![](https://i.imgur.com/Wgw8vV5.png)
Modify package.json
![](https://i.imgur.com/Zha6GuU.png)
Run the Script
![](https://i.imgur.com/bvtYX7g.png)
Result of the Script
![](https://i.imgur.com/xej1rhA.png)
## Step 4: Transfer tokens to an account on the Casper Testnet
Transfer token CSPR on testnet
![](https://i.imgur.com/76ZlZTG.png)
Deploy the Transfer
![](https://i.imgur.com/I7BMENO.png)
Transfer completed successfully
![](https://i.imgur.com/bLdqsrM.png)
## Step 5: Learn to Delegate and Undelegate
Learn to Delegate
![](https://i.imgur.com/wspQFUf.png)
Learn to Undelegate
![](https://i.imgur.com/UYukFN8.png)