 Hello, before we start, I have an idea on who here has the right to work to get open for you. Ok, not that many people, so you might learn something today. The magic of each year are my dresses. So, my name is Anthony Acoubois, I work for EXEC as a protocol designer and smart contract expert, but I'm also trying to be a simpler yet useful tool for these communities. This might be one of those. So, who has the dresses? Wallets and smart contracts. You might know both of those, they look very similar. They are actually the same thing from an Indian point of view, but they are completely different. The address of a wallet is basically the hash of the public key, the end of the hash of the public key. So it comes from the private key. So if you have a private key, you've got your address. And this address is very ordinary. This means that you can use your address on next day and main it seamlessly. But the smart contract is different. When you deploy a smart contract, you've got basically the hash of the creator's address and the creator's address. So if the creator is a wallet, then just the norm is important. But if the norm is not the same between different production, then the address is different. Also, the actual code is not part of the address, so if you have a wallet and a norm, you could deploy any contract regardless of the code the address can credit. And knowing this can save your day. So this guy was a hero just because he wrote a yellow paper. Tokens were sent to an address that was a loss of contract on the testnet, but using main net assets. And knowing that he was able to put a contract to recover the phone at the right address. Because you can send tokens or value to an address that doesn't exist. This is how you interpret the different. So how to have the same address on all the network? You could use ENS and stuff like that. But if you want at an exact same level to the same address, you need to deploy using the same wallet. And make sure everything is in sync between the network. And so you have to do everything very carefully. And if the creator is like a factory smart contract, this is very dangerous because if users try to create accounts and they're doing one network but not on the other, then the network goes out of sync. And there is no way they're going to have the same address for the wallet account on another network. So hopefully there is a new thing. There is more. There is create2. And create2 is an app code that allows smart contracts to deploy older smart contracts. A wallet cannot use create2, but a smart contract can use create2. And how create2 works is that the address is not computed using the nodes. We can get out of sync between chain, but using the creator's address, the deployed code and the sort. And the sort is useful if you want to deploy the same code twice but at different addresses. And this is very interesting because it can be predicted like previously. But the address basically contains a code. So if you're deploying another smart contract, another code, you're never going to get the same address. Also, it doesn't consider the nodes. So if you were to deploy the same deployed code with the same sort on multiple blockchain, you will have the same address in the end provided that the contract that does the deployment has the same address in the first place. And we know that we can do that using the previous technique, which is kind of difficult, but we don't only have to do it once. So basically that's what I did. I built a very generic creative factory. It's a smart contract. The only thing it does is call create2. So you can use it to deploy any smart contract. And if you give it the same bytecode and the same sort on all the blockchain, you will end up with the same smart contract on all the blockchain. We just have to deploy this factory to as many blockchains as possible with the same address. And that's what I did. So this is the address right here. It's live on Mainnet, on Robson, on Ringby, on Cova, on Gordy, on Luxo. And I'm going to give away to everybody sign transaction for all the chain IDs from 1 to 16K or 64K so that you just have to find the wallet that uploads that. You run that transaction, and this will deploy the factory to any sidechain you want. And that way, this factory can act as the root of a multiple tree of smart contracts between all of the same address. That way, we never have to worry about sending tokens to a contract that has the wrong address because we can make sure that our current contract has the same address on all the network. So thank you for Isaac and Dimosex for financing that. And if you want to know more, just contact me.