 I love paying relationship with that word. So I decided, so we have Riaff, Ninja, Riaff, your fast, can you just say it right now? But I'm just basically talking about Riaff to give a why we at 3D shows Riaff, which is a concept of the cap theorem, which basically says you can't have all the things. You can only choose two, or switch between tolerance and availability, giving up consistency. So you might ask why would a company like 3D give up consistency? We deal with payment methods, they would pay with tokens. Why would we give up consistency? Like you just heard from brands, 3D is in an interesting place. We're between the merchant and the payment gateway. So it means we have tons of transactions hitting us all the time, so we need to be available. But people don't get their money, they get very upset. Also, the way that we design our data is very hard for us to not to have consistency data, so we actually don't have to really worry about that too often. We'll key value database with local and multi-custom application. So there are a lot of those people databases out there nowadays, so why is React actually different? React is actually made for big data, and one of the greats that does that is this data type of noxious. That means that when you show anything we want into that value field, it doesn't matter, it doesn't care what that is actually is, or what data type it is. One of the ways we do this also about that is this master's list, which is great. The slavery was so 1800s. Positive elastics. And the way that it does that is that it has several clusters, and the other clusters are exactly the same. And each of the clusters can decide exactly where the data gets stored. So if one cluster goes down, it's not that big of an issue, for in a master's slave relationship that could be a big issue. There's also a lot of responsibility in how we handle conflicts. So by default, there is vector cops, RTTs, but who really knows what those are anyway. There's also last right wins if you want to do the time stamp. But at the end of the day, you can also do application side management. So you can decide exactly how to handle each conflict as it comes up. If there's positive and negative, you always have to give up something. So what are the repercussions of actually choosing to react? One of those repercussions is there's no sequel. So we don't have the same reasons that we're going to see the query, but we'll talk a little bit later about how we actually expect that issue. Also, there's no active record. So some of us that came with additional Rails background can't see through some of those queries that we're used to. And also, if actually we're out of business, the company needs to support react. So that's also a big downside. I'm sure you guys want to know more about it. So we do have an amazing blog on our website that talks about how we transition to react and also how we transition to conflict as well. And actually, Mike was going to talk next about how replication happens on react followed by David who can talk about conflict.