 So, in the early days of Cardano, we had one client, and this was the Haskell client. And the concept there was really this series of iterations and experiments about learning how to launch a cryptocurrency and learning how to launch a client and actually have customers, so have a QA process, a release cycle, a help desk, and to actually work with different stakeholders, whether they be consensus nodes or exchanges and so forth. And in the process of doing that, we learned kind of a broad spectrum of lessons, some good things, some bad things, and some ugly things. But one of the things that came up was that there's a strong desire within the community for a truly open source experience and in almost like an expert mode, like a battery is not included type of experience, where we could take something very lightweight, very modular, whether you're in exchange or you're building your own Explorer or you want to deploy a mobile wallet, you just want to have a toolkit so you can plug and play, you can put all the modules in that you need for core crypto or core consensus or core networking. So, we decided to launch a proof of concept. This came out of something called the Icarus project. And the basic idea was, let's just write a bunch of Rust code and let's try to replicate the lessons that we'd learned with the Cardano protocol with some significant improvements with a very small agile team, let's let them just work throughout the whole summer and let's see what they can come up with. So the output of that was really two products of the Prometheus project. The first was Icarus, where we said let's construct something that is ideal for mobile clients and let's construct something that's ideal for Chrome so we can get to the one-click install experience and the mobile experiences that people have really been looking for and also have a much easier time getting hardware wallet integration for ledger devices and treasure devices and so forth. But then the other output was actually the realization that if we continued the thread we could build a completely alternative Cardano client. So now Cardano Rust is getting the point within the next month or two months it should reach parity with the Haskell client. And so these are completely separate teams, they follow different processes. One moves a little faster than the other, one's a little bit more academic than the other, one's a bit more pragmatic. I think you need to have both of those factors for us to enjoy a vibrant ecosystem. All cryptocurrencies at the end of the day require diversity and all cryptocurrencies at the end of the day require competition. So the Rust Cardano client is really about trying to push the boundaries of how fast we can move and to also introduce the concept of competition to the ecosystem. Furthermore it's about onboarding a different class of user so we can go above and beyond just people who hold ADA and move into people who want to do forensics, people who want to build their own experiences and applications and also have much more granular and fine-tuned control over transaction creation, account creation and eventually features and functionality like the deployment of smart contracts and the primitives for side chains and these types of things. So it's quite a fun project, it's quite a fast moving project and it's an artifact of the lessons we've learned and also some victories we've had over product management and project management. So my hope over an arc of time that the Cardano Rust project can truly become something that the community itself maintains. So when we look at the Haskell side of things and we look at the development process that we're constructing there that's really about hard specifications and formal verification and this notion of a kind of a reference client so something that's really enterprise grade and it's a good standard bearer to kind of showcase how the protocol ought to work and be constructed but for this to be a successful ecosystem we have to have diversity. So it's very important to see clients written in imperative languages like JavaScript and Ruby or Python and it's really important to see them written in more systems languages like Rust and C++ and so forth. So our hope is that with the lessons we're learning from managing the Rust project as it grows out eventually it can become something that eventually gets taken over by the community as a whole. This is especially important when Cardano launches its treasury and then competing teams can actually submit grants for funding from the treasury to maintain that client and this is kind of our first four way in a way that doesn't slow down protocol development it doesn't slow down a lot of the very dense roadmap that we have with Cardano that will give us the ability to still play around on the open source world.