 Thank you so much Dennis, right? We have next from Veldav Zak. Hey everyone, my name is Zak Ayush. I'm a developer advocate with the FVM team specifically. And so today we're going to be deploying a actor or if you're from like the Ethereum ecosystem, smart contract, to the Wallaby Testnet, where we have the FEVM active, right? So we have the Filecoin Virtual Machine, the FEVM, and we have the FEVM, the Filecoin Ethereum Virtual Machine, which is essentially the EVM virtualized on top of the FEVM. Now why do we want to do that instead of just deploying actors straight to the FEVM? Well, you know, the EVM is widely adopted across many different blockchains and there's a ton of robust tooling around that, including the tool we're going to be using today, Hardhat. So this allows us to take advantage of all that tooling and allow existing Web3 developers to easily come over and excuse me, my cough. I think the allergies are hitting me. Okay, let me just show you real quick. So just an introduction to Hardhat. It's essentially a development environment that allows devs to easily from their computer just write smart contracts in Solidity, test those smart contracts, deploy them to a chain, automate it. We can create tasks to automate our interactions with those smart contracts. And overall, just a very useful tool. There's a couple of other tools, Brownie. If you're like to program in Python, Hardhat specifically is in JavaScript. Truffle is another JavaScript, one that a lot of people know from consensus. And we have Foundry, which is kind of the newcomer, but seems to be gaining some steam. You know, I'll switch over to my VS code. So here's what I, on the left here, you kind of see what a Hardhat project looks like. Just a quick overview. We have our contracts directory where we'll write any of our smart contracts in Solidity, deploy. So we're to use Hardhat and deploy to a chain. You need to write a specific deploy script to tell it which contracts you want to point to and where you want to deploy them. And so here we have a simple JavaScript deploy script. We'll go over it in a bit. Deployments, which just gives you some metadata on where your contracts that have already been deployed are deployed. Node modules, if you're familiar with that, you know, pretty self-explanatory, MPM, RER node modules, and scripts and tasks. So these are where we can write things that we want to automate. Tasks are a little bit more built in with Hardhat. So we can just call, we can commit, type in the command Hardhat and then put whatever tasks we want in and it'll automatically run. Scripts are just like anything else that might not work super well with Hardhat. Right now, we do not have any. We just got this demo done yesterday and the FEVM is still a work in progress. So, you know, you can find the release schedules for that online. But for now, we'll be interacting with our contract using Curl and just contacting the RPC directly. And the other important file I want to point out is the Hardhat config.js. So this is where we can customize our Hardhat and tell what we want out of it and where we want to point it to. So you'll see here, we're pointing it to the Wallaby testnet where we have the FEVM deployed. And we've defined the RPC URL for Wallaby and a private key that we're going to be working with. Of course, I always like to tell this. I know people here probably already know. Never show your private key. Probably keep it hidden in an environment variable somewhere. Make sure you don't check it in to get just to be safe. I always like to put that disclaimer in. Okay, so yeah, we have it all pointed to already to Wallaby. If we come here and we look at the Deploy script, it has some requirements for some built-in, some Hardhat requirements, and a couple of Filecoin things. So it understands Filecoin language. And essentially, it's just going to call this RPC and send a post request to say, hey, we have this contract. Let's send over the bytecode and deploy it. And so what I'm going to do is I'm going to go ahead and deploy that. So I'm going to type in npx hardhat deploy. And this is going to take a little bit of time while the deployment interacts with Wallaby and Wallaby confirms it. So we'll use that and I'll look at the Solidity code and explain it real quick. You'll see, I'll try to give this a little bit bigger. There we go. We have what our Ethereum address would be if we were acting on the EVM, but underneath that, since this is on the EVM, we have the Filecoin addresses associated. Particularly, we're going to be looking at this F0 address later. So it's deploying. Let's look at simplecoin.sol. So essentially, this is just a Solidity contract. It's like a very basic version of what an ERC-20 token may be very dumbed down, just for demo purposes. And you'll see we just have a simple mapping here for balances, a transfer event that gets submitted, and a constructor that assigns us 10,000 simple coins when we deploy it. And then we have a function to send coins and two other functions to check balances at addresses. We are going to be using the getBalanceInEase function in a bit to see what our balance is. Okay, so it is deployed. And we have an address right here. This is going to be important in a second. We're going to need that. So yeah, we're going to go ahead and interact with it. Go to my terminal here. So this should give you some more views. You'll see where I was already messing with this earlier. And we're going to get this curl script here. So we're going to actually just testing to make sure it worked. You'll see it came back with nothing here. And that's because we need to point it at our contract that where it's deployed. And we're going to need to tell it our account, right, that F0 account. So if we come here in the to field, this is where we're going to put our deployed contract address, the 432. And in our data, our from is coming from our address, our deployer address. And in the data field here, you want to make sure that this is also the deployer address, which it is. And all this other data is like the function selector, which is essentially like taking some of the hashes of the function signature and putting it together. This is like all EVM standards, right? So now if we send it, awesome. So in the results, you'll see this 2710. And that's just hex. If you can vote it to decimal, that's 10,000. So we've deployed that contract, the constructor went through and it showed us that we have 10,000 simple coin in our account. And you'll see that like this is a very simple demo for now. But the the FEM is really coming to life. Like this is what's so exciting about this. And a lot more features will be coming online. I hope to put this starter kit up and make it available for everyone to mess around with and hopefully have some more tasks and stuff on there. So you won't have to be using curl to interact with the JSON RPC directly. So yeah, I think that puts us right to time. Thanks so much.