 Hey guys. Hello. I'll try to be fast because we're late. 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 so basically this project project to catch you the aim of this project is to checkpoint the state of the phycoin 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 phycoin or blockchains such as proof of stake do not key. 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 phycoin miners create an aggregated key and then basically this will be the key that they will use to find 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 special signatures so only a special of them needs to be honest in order for the checkpoint to happen and then they will be like signing this body. These checkpoints. 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 phycoin in order to retrieve some information about the phycoin 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 phycoin KVS. And when I say phycoin we are for again for testing we are not using the actual phycoin blockchain. We are using Udiko which is the fork of Lotus and basically is kind of like a tested ground for the phycoin 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 which would like abort and would not complete. Now the DKG will complete even with a malicious participant 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 phycoin. 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 real storage. So we are 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 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 Don 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 Don 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 Don didn't didn't do anything because he's not part of the 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 on the Bitcoin testnet network so we can see we can see what's happening. Okay so here let's me let's copy so that's basically the transaction idea of the of the checkpoints that Don has retrieved when he joined the protocol so I'm going to go on the Bitcoin testnet explorer I'm going to put this idea 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 there are links 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 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 you can see here that unlike last time where we were using minile now we are using a KVS that is like integrated with this fine coin so we can see that here Don when he joined he could get the data from the KVS basically using this so that's it for me I feel 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 on this day