 Okay, guys. Hello. I'll try to be fast. Hopefully everyone can hear me, see my screen, otherwise manifest something. Okay, cool. So I'll start by giving a quick intro to the project. Probably you've heard it if you were there at the last demo, but maybe you've forgotten. So basically this project, Project Pikachu, the aim of this project is to checkpoint the state of the Filecoin blockchain into the Bitcoin blockchain. We want to do this periodically and the motivation for doing this is that proof of work gives security guarantees that blockchains such as Filecoin or blockchains such as proof of stake do not give. So basically there are two main components in our protocol that does this checkpointing. The first one is the distributed key generation. So what we want to have is to have all of the Filecoin miners create an aggregated key and then basically this will be the key that they will use to sign checkpoints onto the Bitcoin blockchain. And so basically the second step of the algorithm once this key is created is the sign. So they do this aggregated key. They use threshold signatures, so only a threshold of them needs to be honest in order for the checkpoint to happen and then they will be like signing this checkpoint. And then the idea is that if we use the data that is inside the checkpoint, we can use some storage system, for example like PFS or Filecoin in order to retrieve some information about the Filecoin blockchain. So that's kind of like the very, very high level description of the protocol. So next let me tell you what's for those of you who were at the last demo. If you remember at the last demo, because we are still in a proof of concept slash testing mode, we were using Minio instead of using a decentralized storage provider. Again it was mostly for testing purposes, but the good news is that for this demo, we have removed this and instead we are using a Filecoin KVS. And when I say Filecoin, we are for again for testing, we are not using the actual Filecoin blockchain. We are using Udiko, which is a fork of Lotus and basically is kind of like a tested ground for the Filecoin blockchain. In addition to this, in the last demo, we were using one distributed key generation that came from the frost paper and since then we have changed our distributed key generation and we've kind of like upgraded it and now we can tolerate failure. In the previous demo, we had like if there was one malicious participant, the DKG would like abort and would not complete. Now the DKG will complete even with the malicious participants and basically I'm going to show you that in today's demo. So let's get to it. I'm going to start by launching everything. So again, we are using Udiko. So this is the kind of like playground for Filecoin. So what I'm going to do first is I'm going to add the initial miners. So here what's going to happen is that these miners, basically again, as in the previous demo, we use like fake power. We don't use like real storage. So we are just simulating like miners and the first step of the protocol that they do is that they do the distributed key generation and then they have their keys and now that they have their keys, they can check and they're going to do that every 25 blocks. So here we have one checkpoint that has just happened. So let's and we're going to soon have another one. So let's wait for this in a few seconds. Okay, so now that's another checkpoint. So now what we're going to do is that we are going to add another node and as I have hinted to you, we are going to add another node that is malicious. So okay, so first we let this node sink with the rest of the player. And now again, we are going to do as we did before, we're just going to like add the fake power of our malicious miner. So now here you see that basically you see that complaints here. So what this shows is that the miners, they have spotted that Dom was malicious. So they have sent each other complaining being like, wait, this guy is doing something wrong. We don't want to keep going with him. So we are just going to finish the protocol on our own. And basically that's what they do. And so here you see that they just like continue signing. But however, Dom will not be included in the rest of the checkpoints. So let's wait for another checkpoint. Here we go. And here we see that Dom didn't do anything because he's not part of the new set of mine. Okay, so now again, what we're going to do is we're going to go and check the checkpoints on the Bitcoin testnet network. So we can see what's happening. Okay, so here let's copy. So that's basically the transaction idea of the checkpoints that Dom has retrieved when he joined the protocol. So I'm going to go on a Bitcoin testnet explorer. I'm going to put this idea in. And then basically we see like the checkpoint transaction. And from here what we can do is we can just follow the chain of transaction and see like every checkpoint that has happened. They are linked like this way. So that's pretty cool. We can just like follow the state of the fine coin chain using Bitcoin. And we see that all the transactions are unconfirmed because we've just made them right. And here we arrive to the end. And now you know what? Let me look more closely at the transaction. And here we see that we have some data. So like the checkpoint. And this data can be used to retrieve information about the fine coin chain. And here you can see here that unlike last time where we were using Minio, now we are using a KVS that is like integrated with this fine coin. So we can see that here Dom when he joined, he could get the data from the KVS basically using this. So that's it for me. I don't think we have time for a question, but feel free to ask them on Slack on our consensus lab channel or in the chat here. We'll be staying. And I think she may...