Welcome to Pure Dog Tuck. I am your host, Laura Reeves, and you guys, some of our early listeners will remember that once upon a time, Alyssa and Alexander and I used to get together at least once a week for a tip of the week. So Alyssa and I saw each other at the garden and said, hey girl, let's do that again because it was really fun. But now we're going to make it a full podcast. So look forward to many conversations with Allison. Going forward, we're going to be talking about all kinds of stuff, lots and lots of grooming stuff because I love what Allison brings to that and all kinds of handling stuff and everything we can think of. So welcome back, Allison. I am thrilled. So I am so happy to be back, Laura. Like I said, seeing you at the garden and we were both like, hey, how come we don't talk more? And we're like, yeah, we just kind of both got really busy and it fell off. But I'm so glad to be back. I think it's perfect. It's a great conversation that we have every single time. And I think that's kind of what matters. And it's great information for our listeners. So I love that. Today, I have a fabulous topic for us to talk about. As many of you remember, I grew up with clumber spaniels and long white coats is something that has been the bane of my existence for many years. So we thought we would do a deep, deep dive on just white coats and how we keep them up, how we condition them, how we clean them, how we fix the staining, how we prevent the staining and all of the pieces in between. So let's go, Allison, let's start with prevention. Prevention is 90% of the cure, right? Yeah, I don't know. This is very true. Yeah, so I think that's a good place to start with prevention. Because one of the things I'll say about white dogs is, even if you haven't prevented it, and you need your dog to be whiter, you need to follow some of the prevention protocols in order to keep them white. In my experience, often once you start whitening a coat, even with something you might think is gentle, our dogs do tend to restain a little bit quicker. So let's talk about that just for half a second. Sorry to interrupt, but I think it's important that people understand why, right? Because our whitening products strip the hair shaft, yeah? And it makes it more porous. This is my understanding, correct me if I'm wrong, and then staining stuff, whatever the stuff is, whether it's urine or spit or dirt or grass or whatever, gets into that open hair shaft, yes? Correct. So basically, there are kind of three of the more popular ways to keep our dogs white once they're stained, right? So they are using a bluing shampoo, something that has some bluing in it. When I started, we used to just use bluing, right? And so that does work, but what that is doing, it's really just changing the spectrum. You probably see that TikTok new toothpaste viral toothpaste that's out there. That's exactly what these kind of shampoos do. They take something yellow, they put a purple filter over it, and then our eye sees that as white. And so problem A with that is you do that too often, and then you're actually, then your eye starts to see the purple or gray or something in between there. I made a Smurf clumber once. Yes. Yes, I've had many lavender lipidists in my day. And then the other popular one is an enzyme cleaner, right? So those are super popular, and but what those actually do is the enzyme is actually eating the stain, therefore eating some of the keratin that's in the hair. And then that makes the hair actually quite weak after a while, and that it can not only go dingy, turn a different color, it can actually snap off, right? So that's kind of scary. Same with bleach, right? Bleach is doing the same thing. So all of these things like they, this is why prevention is so important, because as much as we like to whiten our dogs, you kind of want to do it as delicately or as less often as possible, right? The more often you're doing it, kind of the more damage you're doing, right? So yeah, so prevent, so for me, it starts with prevention. So prevention is sometimes a little bit easier than you might think, right? Is your dog running around on the lawn? Are they getting grass stained, right? Are they just getting dirty?  Your crate, we all love these aluminum crates, but sometimes, you know, if they're not freshly painted or you haven't kept up what's inside the crate, that can wear off onto your dog's coat, blankets, bedding, there can be dye transfer from that. And it might, you might not even notice it day to day, but after a week or so, that buildup is on our dog's coat. Water buckets are another big one.  Then of course, there is different foods, different ways our dogs metabolize food and or water. It could be the quality even of your water.  And, you know, that is more, you know, that's easier to do for some of these smaller breeds than if you have St. Bernard's that you're trying to keep, you know, weight in the bottle. Yeah, exactly. So thinking of prevention, like how is my dog getting stained? You know, is it eye staining? How can I can I clear that up myself by going to my veterinarian and seeing what the underlying issue is chewing in their feet? Is it a food allergy? There's all these, there's the thing is, is that our dogs aren't white for so many different reasons that finding that and then figuring out how much of that can I control, right? And then we have other things, urine, right?   Right, like, you know, so there's like all these different ways that our dogs are staining in different parts of their coat, and what can we do for those things to help up? So my number one tip is always, and I'm really excited to hear your thoughts on this, conditioning, conditioning, conditioning, conditioning, keep them clean, bath them regularly, and condition the coat, seal the hair so that nothing can get into it. Yeah, absolutely positively, right? So I am, everything gets bathed once a week, like that's how it is. But if that is staining from urine, it is staining from drinking out of a bucket, then yeah, you need to maybe be spot cleaning those areas during the week, right, to really keep it up. Oftentimes it takes way less time than we think, but conditioning, sealing that cuticle back up. Because as we said, a lot of these shampoos, how they work is they blow, think of a hair cuticle like scales on a fish, right? And we want those scales to be super tight and waterproof.  Very few products seal it, right? So we want products that seal it so it doesn't restain as quickly. And to me, that's just part of the game. Wash, condition, prevent. And dry, because the damp part, right, is causing all the problems also. So wet beards, I think about spinoni, obviously, white wire hairs, West Island white terriers, you know, anything with a beard that they get spit or they drink a lot or whatever it is, that's the moisture is what's causing the bacteria that's causing the staining. Absolutely. The other thing about that is most of the products that are designed to seal the hair shaft will only seal it with heat, right? So if you're not drying them to your point, those products aren't going to work. When it does come to those bearded breeds, so anything wire coated, you know, we'll often see that little crease in the bottom lip. And I'm just going to pull those hairs out, right?  Anything that is soft or coated, so like a Vichon, a Maltese, a Havanese, anything like that, I like to trim the upper and lower lip line, like just very, very carefully with like small, like snub nose scissors. And that way that hair doesn't get sucked into the mouth and stained. And it's that hair that acts on both the wire and the softener coated, it acts as a wick, right? So that wicks the water into the rest of the beard and causes more and more staining, right? Absolutely. And like you said, and then that's the bacteria, and then the bacteria just keeps breeding more and more. Lovely red staining that we call making a mess. And so I personally, and speak to me, you have lots more product knowledge than I do. That's your absolute strength. I just tend to rely on what I know. But when I'm washing and I'm spot washing, right? So a lot of my dogs are wire coated dogs, they're not getting a jacket bath every week or daily. But my bearded dogs, that beard gets washed when I'm showing it, I'm campaigning at whatever that beard is washed daily, washed, conditioned, dried every single day. What's your favorite product for that? So I'll use a couple of different things. If I'm on the road, I'm traveling, and I still want to keep that beard really clean, I'll actually use baby wipes, right? So baby wipes are kind of my go to, I'm on the road, and I want to keep that beard clean. So especially after they've eaten, which is a big one for me, and, or, you know, if I can, if they're out for a big walk and then drink before they go in their crate, and I continue on my journey, I'm going to use a baby wipe because a lot of them do have a gentle cleaner in it, and that cleaner will help kind of automatically dry that beard. So I'm going to really scrub it with probably three baby wipes, if it's a Spanoni, maybe one, if it's a West, and follow towel and towel it dry, right? So that's my on the road thing. At home, I'm going to use, typically I don't like to use something with blowing in it every day, right? So I might use a self rinsing shampoo, like OC magic foam or something like that, that's clear, because I don't want to be adding color to it. They also speed the drying process, right? A lot of those rinseless shampoos do help speed the drying process, and let's face it, when you're drying that beard once or twice a day, you know, saving five minutes helps you out. INV actually makes a fantastic beard spray that, so when we also talk about staining and white dogs, I would like to also think about staining on our blue dogs, right? So coming my mom had Sky Terriers, I showed some of them, and they would get that brown staining that you could see, even though they were blue, but I found that using that INV beard spray, so same thing, I'd wipe it with a baby wipe and kind of air dry brush it and spray the beard spray in it, and again, it helped clear the bacteria, kill the bacteria that was in there, that's causing that kind of red staining. You know, at home, I'm going to just use shampoo. Right, just a pretty easy shampoo, and then what's your go-to conditioner? Well, I like something that seals the cuticle and speeds up my drying time, so I use typically 95% of the time I use Chris Christensen after you bathe, it seals the cuticle, it cuts down your drying time by like 30%, and I dilute it 8 to 1, it doesn't say that on the bottle, but I dilute it 8 to 1, and I find that I get really good results from that. Okay, great. I know this may make everybody's head spin off their body, but having had enough spinonies that I had to salvage a beard, right, like go get that beard back, I have found that I can use the hydrogen peroxide, like we use the higher, not the wound kind, but the haircare kind, put that in a spray bottle, spray after bath before condition, and that will help dry it and then put your conditioner, and that, for me, has been very successful in trying to maintain that kind of thing. We are at the Kentucky Anna cluster of dog shows, and I'm talking to Dr. Karen Potter. She is a German wire hair pointer breeder, a Trupanian breeder, and she's also a veterinarian, and Karen's going to talk about what Trupanian means to her as a breeder, and also what it means for her as a veterinarian. When I became a Trupanian breeder, and I sent my letters out, I knew that they were going with 30 days of coverage, had one of my owners have an emergency with them. That's comforting to me as a breeder to know that they can get help. As a veterinarian, there are many cases where we have to make decisions on how to treat things based on financial restraints. And when the financial restraints come into play, we can't always do absolutely everything for that pet. So if my puppies are covered, at least for those first 30 days, I know that if they get sick, they can get the best possible care. Interesting.  And he had just lived in a big kennel on cement and had sat down, and you know, Sammy's have a more porous coat. And I got him in like November. I was specialing in the next year. He ended up winning like 30 best in shows. What I did is I used milk, a very old like English recipe. So I used milk of magnesia, the 3% hydrogen peroxide. So the first need kind, not the air kind, and basically enough cornstarch to bind the two together like a loose toothpaste. And I would literally smother him in it every and I did it. And I if I use that formula, we'll say now, I still do it the same way. Last X, right, they've been from last X and I smother them in it. And then I just put them to bed. If they're living in your house, they should sleep in a crate last that night, because it's messy, right? And I let it dry. And it's like the milk of magnesia and like helps draw the staining out naturally.  But it also didn't damage the coat, right? And I just kept reapplying and reapplying and reapplying. And, you know, some of those things do really work, right? And that I have seen that used a lot, the clumbers, the eye stains, the bib stains particularly, but the eye stains and clumbers that can be real problematic. That particular recipe works great. Yeah, it does work. The, I like the just straight peroxide and then condition, condition, condition, like super heavy conditioner in the beard, because if it gets a little bit in their mouth, it's not going to hurt them, right? Right. We use peroxide to make them throw up. Right. So I've got to work around here where I'm really concerned about them ingesting it. And I don't really want to leave anything, the, the milk of magnesia recipe on their beard, because then they're going to eat it. Yeah, exactly. So, so that was, that was my trade off. Talk to us about, because there's some really great solutions. And I know you are going to have a good insight on this for different things that we can give them internally. And, and I think this is such an important part of the prevention, right? We start with the diet and, and the, and the supplements that we need to give them to keep the hair white to start with. Right. So, you know, a lot of our dogs have food allergies. And a lot of those allergies show up as reddish coat between the toes. Typically, it starts around the ears. It can be around the mouth. It can be, you know, a drooling dog that has more red wherever that drool is, is hitting the hair, right? The mouth, the beard, the bib, etc. So, Tums, right? So a lot of people will use something like Tums because they feel that it levels out the, the enzymes in the body, right? So that the drool isn't the stomach, fluids, etc. aren't as acidic. And I know a lot of people that have had a lot of success with that. I don't know personally, whenever I've tried it, that I've had a lot of success with that. I'm what I have had success with is buttermilk powder. So a lot of nasty people that I talked to, especially in the UK, they just buy like bulk buttermilk powder, like you would do to make up your own milk from like baking supply store. And they just put about a teaspoon on their food morning and night or every time that they feed them. They've had a lot of, I personally had a lot of success using that. There are people that will use a low dose antibiotic, right? Island powder, tetracycline, doxycycline, and putting their dogs on it for 30 days on, two days, two weeks off, 30 days on kind of thing. So that's something that you'd need to talk to your veterinarian about and how they feel about it. But people do have that work. I did have somebody recently reach out to me about white dog food. So dog food that especially formulated to help our dogs stay white. And I know I saw it on Amazon, but I know you can get it in the UK. And it's called nature's protection superior care white dog formula. So nature's protection is the brown name, then superior care for white dogs is like their formula, kind of like preenup, preenland, right? So yeah, I mean, I haven't used that, but like I read a lot about it. And I've talked to a couple people that have used it, particularly with Bichon's and they they've had great success with it. And they kind of showed dogs that pre that food, then post that food and their hair, not only isn't stained, but actually does look whiter, like the new growth that's coming in. That's kind of cool. So I'd like to get more kind of into that and understand how that really works. But I think, you know, really watching for allergies and understanding that our dogs can be allergic to food, watching out for foods that do have a lot of dye in them, like they do say that that is one of the things. And not only watching out what they're eating, but what are we giving them for treats, right? And, you know, as I've stopped showing other people's dogs and I only have my own dogs now, I've noticed that I'm like, pretty generous with the treats. And maybe I'm not always paying attention. I'll pay attention to what they're eating, like their food. But then, you know, I'm thinking, huh, they're actually eating quite a bit of treats that maybe I'm not paying attention to. So I think that there's lots of things, you know, watching your water, what is the pH in your water? Do you have hard water? Is distilled water an option for you?  And I actually had a really interesting conversation with Tara Martin about Maltese and she said that genetically, like there's there's good white hair and that good white hair, which I thought was super interesting. I know that in clumbers, I had one special that could not eat any food that had beet pulp in it. I mean, I literally changed his food from one with beet pulp to one without and within a, I don't know, four to six weeks staining gone. Huge difference. So there's that one. The only other one that I've used and had intermediate success with and I think it has to go to the pH balance in your water.  So again, I think it's back to the pH balance and I had one white Akita that I use that with and it was, I mean, she didn't have any eye stains. So I'm going to go with it was good. Yeah. And actually, I meant to mention apple cider vinegar earlier because when we showed a lot of English setters, bitches that were quite heavily coated and it was the urine staining, right? It wasn't so much. They didn't really have tear staining or a lot of drool staining, but the boys, you know, had big white kind of furnishings that would they pee on their loin hair and their front legs. The girls would sometimes get their pants in it. And I've, I swear by apple cider vinegar for reducing the acidity of the urine. So it doesn't smell as much, which is kind of a bonus. It doesn't stain the coat as yellow. It just doesn't get as yellow. So obviously there's something there with the enzyme of that. And I've had great success using that, right? And also they weren't tear stained, but I never really thought of that before. But, you know, it really helped. Right. So that was that was that was the only other one that I've that I personally have used that I thought had some success. The one that did actually completely blow me away was the was the beet pulp one. And I had to, you know, it's like go in this dog food store and read every label and try to find something that, you know, doesn't have beet pulp. But it worked. So, okay, different kinds of white hair, I think, and different ways we treat from the wire coat to the poodle coat to the old English sheepdog coat, right, the bearded cowley coat.  So let's talk a little bit about different ways we would treat those different coat types. Definitely conditioner is going to be your best friend across the board, right, for any of those white coat types. I will say that the harder the coat is, the more I would stay away from bleach, right. So typically if you take like a West Highland light terrier and you want to bleach some of that biscuit out, most likely you're just going to turn up bright orange, right. So not the desired effect where if you use a softer coat, a poodle coat, a Maltese coat, you can get away with using more of a bleach type product. If you were at that point where you needed to use bleach, and it's going, in my experience, be more successful for you, right. In all cases, you must use conditioner all the time. I will say whenever you are using some kind of bleaching product, once you have decided to either go with bleach or an enzyme cleaner, you, from then on, should bathe your dog in something white, right.  You can't use a cleaner then, right, because you are going to turn them bright purple, bright blue, did I mention smurf the clumber, yes. Smurf the clumber. There's lots of different things you can do. There are some, you know, now that we're getting better and better toners in the hair world. So this is something where you need to go to a beauty supply store and talk to somebody that is experienced.  So if once you bleach the hair, the hair is going to have a yellow cast, right, because, you know, we've pulled so much protein out of the hair that that's what's left.  And that is what's going to put that white pigment back into the hair. I don't really like bleaching the hair to that point, even though on the odd poodle, I've had to do that, that was very, very creepy. But like I said, you can't do it on a Westie, something harder coated, even, you know, our bearded collies, Folding the Sheepdogs, I'm more going to use like a milk of Magnesia type recipe, rather than a bleaching type recipe, right.  And so the one thing we haven't really talked about is short white coats, dalmatians, or smooth fox carriers, or, you know, in that, any of those kind of guys. So again, here's where I think food and water is so important, because, you know, I've always said short coated dogs need twice as much grooming as long coated dogs, because you don't have any other you can't hide it, there is no way to hide it, it is there for the world to see. So that's the same if they're not going to be bright white. So actually, my favorite tried and true whitener that I use for my smooth coated dogs, I will even use it on, like I do use it on poodles and other things as well. But for short haired dogs that has never let me down, I've been using it for 25 years, I think it's one of the most undersold products at dog shows. And it's crown royal whitener. Yes. So crown royal whitener comes in a tub, it's a white powder. Now do not get it confused with crown royal grooming powder or crown royal chalk, which is also confusingly sold in the same tub. The other thing is that it needs to be used with 20 volume cream developer, so 20 volume peroxide like that you mentioned earlier. And they don't sell the two together, right? You have to go to like selling what we call those secret under the counter things that you just have to know. So that's why we have our podcast today. So that we can know are under the counter ways to do things. It's the in and out burger menu, right? This is what we're doing right now. This is our secret burger menu. So for whatever reason crown royal decided not to sell the two things together, which is like mind blown for me. And so like even if you can find the whitener at the dog show, it's still two days till you can use it because you have to find a beauty supply store that's open for best in show and get there and buy it, right? So again, I like to do it last thing at night. After last X, I'm going to mix up the crown royal whitener and the 20 volume, I like to use cream developer, you can use clear developer, but I just find cream has the conditioner in it already, right? Okay, right. I make mix it into for a short haired dog, like just about toothpaste consistency and I smear it on there and put them in a crate overnight, right? And maybe they will look it and maybe they would vomit if they did. I have again, used it for 25 years.  It makes them absolutely positively white sparkly, sparkly white. I use it no more than once a month. The next morning, how I like to do it is they go out. So like, you know, this is a plan, right? It's not like, you don't do this willy nilly. Last X, they come in, you do it the next morning you have plan, that's the first dog getting a bath, right?  Yeah, right? So I immediately can apply the conditioner, I leave it on for three minutes, then I just shampoo and condition as normal, even on their short haired dogs, I put conditioner on them, right? And it does make them absolutely sparkly white. And like I said, I've used it on poodles, I've used it on American cockers, I've used it on bearded colleagues, old English sheep dogs, I've used it on beards, I've used it, you know, on everything. It's not expensive, which is fantastic. I will say it can be hard to find crown royal, you may have to online shop it. Out here on the west coast, it's hard for me to find crown royal products anymore, unfortunately. I will agree. Their wire coat shampoo is the best wire coat shampoo I've ever used bar none. And the other thing is even places that do carry crown royal don't often carry the whitener because they think it's another chalk, right? And it's not a big seller. But I think it's because it's on the secret burger menu, right? I mean, I think that that's why. And I think if they sold it with like, this is how you use it, like it doesn't even yet like put the peroxide with it, right? In the interest of full disclosure, I think that Chris Christensen is going to be taking over some of the distribution of crown royal. And then I am very hopeful that I will be able to market this properly. This with some cream developer, but you know, that's next year. Right. Just FYI, maybe that could help more people get it off the secret burger menu. And get it on the main stage menu, right? And I just find it's easy to use. It's easier to use than bleach. It works every time. It's cheap, too, right? The only other one that I have had some success with is I think it's a Chris product, isn't it? The whitening gel? I think that's number one. All systems. Oh, yeah, all systems. Yeah, you're right. It is all systems. And I was trying to see the picture in my head. Yeah. And I like like heat in clumbers, right? Like I'm not going to use it in a bib sort of thing, but in the short hair, clumber feet are notorious. They lay their heads on their feet and spit on them. It's just a thing. And for that, you know, if I got a dog in that was gungy and I had to get it ready to go right now, that you put that whitening gel on, hat dry it in, and then wash and condition magic. That is one I have had good success with. I've had really good success with that as well. And where I've used it, not only have I used it on feet, I've also used it showing a lot of like white poodles or Bichons where people have used your medication, and it's left a bit of staining. I've just like put the gel on again, hot dried it in, and by the time you bath it out, it's crystal white. It is truly amazing what I've seen it do. I used to buy it by the carton. And it is. It's another one that's a little bit harder to find too, right? So it's like, why are you doing these good things hard for us to find? But anyway. They make our lives difficult. Okay.  Um, so for me, it's when you're using these products, use them as little as possible. Right? So you don't want to, it's often it's not a case of more is better, right? So if you're using, if you're using a bluing shampoo, and it's working for you, use it sparingly because otherwise your dog is going to turn gray, or blue, or purple, or smurf, right? If you're using an enzyme at cleaner, remember that the enzyme is actually eating the hair as well as the stain. There's no two ways about it. It is. And you need to use it with the hottest water you and your dog can take, but make sure your dog is well, not just you, and use it as sparingly as possible, or you're going to get a lot of coat damage, right? If you're bleaching or using a whitener or white lightning or white, whatever it might be, use it as sparingly as possible, which is why the prevention part of this is also so important. That's why finding the internal part. Is it your water? Is it the food? Do they need to not eat beet pulp? Right? Whatever that is, find that out because you don't want to be making a problem. The other thing that I see is people either over diluting or under diluting product, right? So if you over dilute a product, if they tell you to use it eight to one, and you're mixing it 12 to one, it's not going to do the job that it's made to do. If it's telling you to dilute it and you're not, maybe you are going to stain that hair, right? Also, leave it on. Don't put it on for two minutes. If it says to leave it on for five minutes, and just actually one thing that I will say about using especially a bluing type product is pre-clean. Oh my God, yes. So here's the thing is that our dogs have environmental debris on their coat, right? They have fabric softener from laying on their dog bed. They have styling products we've put into them from the dog show. Maybe they have just natural coat oils, right? Natural oils in their hair. They have everything. And so a lot of times some of these products can't do the job that we want them to do because they're trying to fight through the environmental debris or natural oil or whatever styling product that's on their coat. So pre-wash with typically a good clarifying shampoo. But remember that a clarifying shampoo can be a little harsh as well. Then use your whitening product. Then use your conditioner. And please to help yourself out, say the shampoo is supposed to be left on for five minutes and you did it for three. And the whitening shampoo is supposed to be left on for five minutes and you did it for three. If the conditioner says five minutes, please do it for six. That's the one. Exactly. Like if you are tight for time, the extra time goes to the conditioner every single time when you're whitening, not only to seal in what the goodness that you've done, but to seal out the next round of. To me, that's it, right? It's to keep it from because once you strip that, you've got to protect it. And I think of the conditioner as like a raincoat, right? Like it's the little wrapper that goes around every single hair to keep more gook from getting on there. Exactly. Exactly. Totally. No gook on our white hair. I think that's an official term. Okay. I think it is official. All right. Well, Allison, it is phenomenal to have you back. I've missed you madly. Well, thank you so much. I really do appreciate being back on Pure Dog Talk. I've missed our Pure Dog Talk, so hopefully we can do this again. And we will have some lengths. You'll drop me a couple of links, some Leading Edge Dog Show Academy links that we can drop in the show notes. And you guys be looking forward to more of these, all right? All right. Thanks, everyone.


I've just entered my salad bowl. You can just go for it. At some point, a dog has peed on this. So no grocery stores, no restaurants. Not even eating from gardens. Everything that I'm eating, I have to find growing. Whether it's city parks, abandoned lots, or being out deeper in nature. Just in this little tiny patch, there are four edible and medicinal foods. We've got, of course, dandelion. Everybody knows dandelion. We've got plantago, which is another really great food and medicine. And then just a little ways up here, one of my personal favorites, lamb's quarter. Similar to spinach, this is growing in pretty much every major city across what we call the United States and a lot of the world as well. Oh, we've got, of course, raspberries here. You can make raspberry leaf tea from this.  Absolutely. Subsisting of largely wild rice, venison, or fish, and different herbs and spices, and all sorts of different greens, plus different berries. Some people call this a roadkill deer.  This is not a survival project. For me, this is about enjoying life, and it's about thriving, and it's about feeling great. I've eaten over 100 different foods from nature over the last month, and by opening up my eyes, I realized I had barely even tapped into what there is. I definitely feel more present and more deeply connected to the earth. For the last 10 years, I've been rethinking our global industrial food system in all the ways in which it causes so much destruction, and I want to eat in a way where I can find food growing that has no harm to the earth. Foraging can be legal or illegal depending on where you are. Yeah, some days I'm out breaking the law, but for me, foraging is actually one of the ways in which I choose to purposely go against the system, go against societal norms, and say, yeah, I don't need these corporations to provide for me in a way that's destroying the earth. Most people, they go to the grocery store and they buy their food, and they just assume it's safe because it comes in a package or because it's got some great advertising. The truth is that a lot of that food there isn't safe. Right here is oxalis or wood sorrel, and this is often one of the first plants that people try because it's got a real nice flavor, the lemony flavor. You can get oxalis, blend it up into your salad dressing, and have a nice lemony salad dressing. What if everybody started foraging? Wouldn't we destroy nature overnight? That couldn't be further from the truth. If every human being wanted to start foraging and wanted to stop going to the grocery store, you know what that would mean? It would mean people are thinking about the world in a different way. It would mean our broken societal structures would crumble and we would replace them with regenerative, equitable, just ways of living that are connected to the earth. My recommendation for new foragers is to learn one plant at a time. And if you just learn one plant a month for a year, you'll know 12 plants. Now, if you really want to go faster, you could learn one plant per week for a year. That's 52 plants and you will go from a beginner to a plant wizard. My goal is to break free from the grocery store and to maintain that largely for the next decades ahead. The world needs more foragers and maybe that is you.


My dearest B, where do I even begin? Our love affair started 10 years ago when you were just a glimmer in Satoshi's eye and I've been hooked ever since. The ups and downs of our relationship have been wild, but I wouldn't have had it any other way. You've given me so much and I want to show you how much I love you.  Together we've been through wag me, hodling on through thick and thin and nothing can shake the bond that we share. I'll always be here, diamond hand strong, to support you no matter what the market throws our way. I love the way you change and evolve, always keeping me on my toes. I love how you've introduced me to a world beyond fiat and traditional finance. I love how you've given me the opportunity to be a part of something truly revolutionary. My darling Bitcoin, I promise to always be here for you through bear markets and bull runs. I'll always believe in you and I'll always hodl tight to our love. Forever and always, your devoted love, Cointelegraph.


News update. Good afternoon, folks. Steve Rhodes coming to you live from the shores of sunny Delray Beach, Florida. This year, 1 p.m. Update. And currently we have a slightly mixed bag out here. That mix is coming from the semis, which are up 35 bucks are traded 3062. But they generated a cell signal on Friday. The other indices are trading the downside. Dow's off 70. S and P 13. NASDAQ 78. Russell's off 16. Tranners off 83. Got gold trading up 15 bucks at 1990. Silver's trading up 52 cents. 2622 is the print there. Light speed crew. Let's change this to the June contract. Two more days left with April or May, I should say. June contract trading out at 108.78. That's up $2.40. Natural gas up 72 pennies. That's a 10% move to the upside and will continue to move higher. 30 year treasury. Back nearly one point. Trading out at 140.06. Let's look at our nine panel. Market update chart in the upper left. You've got the ES mini. Key level to be watching here today, tomorrow, the next day, 43.75. 50. We're trading at 43.73. Close below 43.75. That suggests we head to lower ground. That lower ground might take us to 41.89. Now, if that's going to take place, then we should see the spot follow to next trade above its 50 day expense moving average. The 50 days at 24.03. The spot is trading at 23.08. So we've got a kind of a mixed signal here. We don't have a unanimous signal, I should say. But we'll want to watch end of day. Those two key levels. The NQ testing a very key level of support, 13.893.75. A close below that suggests lower price. That could be 13.405. We've got the US dollar index moving higher should continue to move higher as well. Gold should be targeting the 2022 level. That's the top of its weekly profile. Silver 26.95 is where it's targeted. That's the top of its weekly profile as well. Lights recruit to mention the June contract 1.1022 is its target. A close above that, which is a TD9 breakdown level would suggest a run back to its prior highs out there. So watch the 1.1022 level we're trading at 10906. 30 year, I'm not 30 year. The natural gas is only in bar number seven of a TD9 count. Nice wide ranging bar out here. That says we have higher price coming at us for at least the next day, but perhaps the next three days out there before it generates a TD9 count top. And the third year treasury is trading lower. Today is bar number nine of a TD9 count. That says it should complete that pattern. That means move lower by tomorrow with a bounce up to the 142 or 143 level. Folks, stay tuned for the Trader Zed show. But if you're off to start your Monday, have a magnificent one. Thanks much for joining us and we'll look forward to seeing you again soon. Hopefully just a few moves.


Bond refund requests are made to the Residential Tenancies Authority using the Form 4 refund of rental bond. You can submit a completed Form 4 after the date of the notice to end the tenancy has expired or after the tenant has vacated the property. Do not submit the Form 4 prior to these dates as outlined in Item 2. The quickest and easiest way to get a refund is by having everyone listed on the bond including the tenants and the property manager or owner sign and upload the form online or post to the RTA. Make sure the details on the form are written clearly. Remember to use black or dark blue ink only and check the image quality of the form before you submit online. If there are no bond claims at the end of the tenancy then the tenant is entitled to receive the full refund. If money is owed for example towards rent, cleaning or fixing damages then the property manager or owner may make a claim. Patents and property managers or owners should check their own rent payment records and their paperwork on the condition of the property including entry and exit condition reports. Remember taking photos is a good idea to support your evidence of the property condition. If there is a claim on the rental bond by the property manager or owner details of the claim and the itemised amounts needs to be inserted in Item 4. Property managers and owners do not claim a full or partial rental bond if you are not entitled to claim that amount. It is an offence under Queensland Tenancy Laws to knowingly give false or misleading information to the RTA. Remember never sign a blank or incomplete form. It is important you provide the RTA with all contact details including forwarding addresses, phone numbers and email addresses. Before submitting this form to the RTA ensure you have completed all the fields. If you do not know the rental bond number or your RTA client ID then contact the RTA. Any incorrect information could cause delays in refunding the bond. The RTA will only refund bonds into Australian bank accounts and you need to provide the full BSB and account number. It is your responsibility to check your bank account details are correct. Tenants or property managers or owners can submit a non-agreed form however this may lead to a dispute process. Funding can be stressful but good communication between the tenant and the property manager or owner can resolve a lot of issues in the first instance. Further information about the rental bond refunds can be found on the second page of the form 4. If you have problems completing the form or any other inquiries please visit the RTA's website or contact us on 1300 366 311.


Hi, nice, nice to meet you and very, I'm very excited to present you all the lessons, all the interesting stuff that we learned. The past few years we have developed different drivers, especially the Rust driver and different ways that we actually use Rust in SelaDB. Before I start, there's a very short poll. I think it just popped up for you. So the question that we are asking you is, where are you in your NoSQL adoption? We would like to know you a little better and to gauge how the different databases and different storage solutions fare in our audience. So, it would be great if you filled out the poll and now let's jump back into the presentation. So a few words about me. I'm Piotr Grabowski, a software team leader at SelaDB, and my team is responsible for different drivers that you can use to connect to SelaDB database, as well as different connectors such as Kafka connector that you can use to write data into Kafka or read data from Kafka back into SelaDB. And I've been at SelaDB for almost three years now. So a few words about SelaDB and our database is really great for massive data intensive applications that require higher throughput, as well as low latencies. This isn't talked about that much, but having low latencies makes sure that your clients have a better experience of using the products and you can use the database in more advanced ways, knowing that the queries will finish in a short time. We have designed SelaDB with performance and close to the metal approach right from the beginning. So for example, Sela is written in C++ using our own C-star framework for writing asynchronous applications. We don't have to wait for, for example, Java's garbage collection. And when we compare the performance to Cassandra, which we are compatible with, we have five times higher throughput and even better on some workloads. We have much lower latencies. And this is a great difference when you compare a five millisecond latency to an 100 millisecond latency. And this really opens the door for some new class of applications. So to combine those aspects, the cost of using SelaDB is much less compared to different solutions. So we can either save money or store more data in your database for the same cost. As I said, we are compatible with Apache Cassandra. This was the first premise of our database, but in the past years, we have actually started being compatible with DynamoDB and also developing our own new features on top of that, both those two APIs. And we have very, very diverse solutions you can use SelaDB in. So for example, you can use SelaDB as a cloud offering on our SelaDB cloud. You can use our enterprise version of SelaDB, which is great for the large databases. And of course, you can use the open source solution for free. And it also works great. So a few words, why I'm presenting in front of Linux Foundation. So SelaDB runs only on Linux. And we actually take much, we take advantage of very different Linux only APIs such as IO U-ring. And previously we use Apple IO interfaces. And this allows us to really perform high throughput and low latency IO. And a fun fact is that our co-founder of SelaDB and current CTO actually begun the development of kernel virtual machine in Linux kernel. So we have a long history with Linux and while developing SelaDB, we also keep in touch with kernel developers. For example, when we are developing the IO U-ring backend for CSTAR, we actually went into contact with different developers of that IO U-ring backend. And the libraries you can use to talk with IO U-ring and we actually, through this collaboration, we made this library faster. Many companies use SelaDB. This is just a couple of them. And those are the one, the biggest that we have. So as you can see, this is a very diverse group from Disney plus Hotstar, providing streaming services, Discord, providing really great chat experience, as well as, for example, Epic Games, a game developer. So let's jump into the main portion of the presentation and go into our office at Poland. So let's zoom in into Warsaw and go into the office I'm sitting in right now, which hosts the driver's team that is responsible for developing the Rust driver. So today, first of all, I'll talk about a few facts about drivers, what they are and what is their purpose and how you can optimize their performance. Next, we'll focus on the SelaDB Rust driver and different stories and different optimization paths that we took. And we'll finish the presentation with a very interesting way that we use Rust in conjunction with our other languages, by building bindings from other languages like C++ into the core of SelaDB Rust driver. So in this presentation by drivers, I mean the libraries that allow you to send queries to SelaDB and allow you to do it efficiently and very easily. So the primary protocol that we use in the drivers is CQL. And this protocol is inherited from Cassandra. So you can use this protocol to clock with both Cassandra and SelaDB. This protocol is based on TCP. We at SelaDB support the fourth version of the protocol. And this protocol is based on different frames. You have different messages, for example, a message that initiates the connection when you connect to the database or the message that actually executes a query. And within those frames, you can have multiple simultaneous stream soft requests so you can send multiple requests and wait for many concurrent requests. And we support also compression. This protocol supports compression as SelaDB drivers compared to other drivers to Apache Cassandra support shard awareness. And this is a way to connect directly to a specific shard. And by shard, this means a core in SelaDB. And this greatly improves the performance. So a few words about the role of the drivers, because you might think that maybe this other layer of abstraction might not really be needed. So the drivers really do a lot of stuff behind the scenes. So first of all, they serialize and deserialize the protocol and different parts of the protocol. So for example, the SQL frames that I talked about the query frame, the initialization of the connection, as well as the serialization and deserialization of different types that you actually sent over the network. So SelaDB supports different types, you can of course send very basic types such as in strings and so on. But when you look at those more advanced types like dates, different user defined types, the serialization is much harder to do it on your own. The driver also maintains the metadata about the cluster. So what tables are available, what's notes are available. And this information is very crucial to send the query to a correct note. And in terms of SelaDB also to a correct shard, so the actual physical core that is containing this data. So the driver actually sends the data over the network and the different drivers like the SQL driver, the driver driver have many helpers that allow you to very conveniently construct the query. When you think of the driver, it might not be obvious at the first sight, how the driver could actually improve performance, but on top of the list, there are a few optimizations that we employ in our drivers. So first of all is the shard awareness, so sending the query actually to a correct note, to a correct physical core of that note. And that means that SelaDB doesn't have to route internally the query to a different core. So this could be very expensive when you have, for example, computer and CPU with different NUMA notes and to actually copy the data between those NUMA notes, which can be more expensive. Some features like Sela change data capture, change the partitioning scheme that we used to determine which part of the data is stored on which note, and this is, this has to be implemented in the driver to do this calculation correctly. SelaDB also supports low different transactions schemes like LWT. So when you send this transaction, you need to query it to a correct note to avoid potentially different Paxos conflicts that could happen if you just send it randomly to different notes. And the final technique that we employ in our drivers to make them a performance is to really optimize the performance in hot puffs of the driver. Those puffs that are actually taken when making the query, so this realization, this realization is really an expensive part of making a query to have it in the correct format to not copy the data multiple times. The routing code is another aspect of the driver that actually takes a lot of time to calculate the hash of the data and to determine that hash to get the data routed to a correct note. And when optimizing the driver, we need to avoid making any copies of the data that are not necessary allocations, which actually can take a lot of time and locks. So let's start with SelaDB REST driver. The idea for the driver was actually born during a hackathon three years ago. And of course, after the hackathon we actually continued the developments to make it into a real product that people can use in production. Here's a block that we made just after the hackathon to describe the driver. And the driver uses the Tokyo framework for asynchronous operations. This is a really common framework in REST. And the driver is now future complete. So we support many advanced features compared to other drivers such as having the shard awareness functionality, having the asynchronous interface, so you can really send a large number of queries concurrently. Different compression schemes, all those CQL types like dates, user defined types, collections, and so on, as well as other features. So actually, this might be a really interesting story is that the initial prototype of the driver was developed during the hackathon by only four people. In just a couple of days, but this initial prototype was actually enough to perform some basic queries and send them to Sela. So I think this is a great story on how you can actually do such a complicated project in real short time and have some by doing that, gain some knowledge and some insight about the performance. And actually, not to theorize about the performance but just write it in a couple of days and try the performance on your own. So after this hackathon, those were the initial benchmarks that we did. So we actually compare the Sela RAS driver with Go CQL driver, so the driver for Go, and the existing driver that could be used to talk with Cassandra in the RAS language, the CDRS driver. So what this table shows is the time it takes to process 10 million requests with some fixed concurrency. As you can see the driver, the RAS driver is much better compared to those two drivers, and this was really encouraging us to really develop this driver forward and really make it production quality. So after some time we actually did those benchmarks once again with the driver at much more mature state and the performance was still good compared to other drivers, so the blue bar on the left is the Sela RAS driver, and we compared it with CPP driver, different variants of CPP driver, as well as Go CQL driver, and this graph shows how much time it takes to execute one million inserts to SelaDB, and as you can see the RAS driver was clearly beating all the other drivers. So this is a graph of doing selects, so this might be a bit more straining on the driver because the driver now has to deserialize the output that it gets from SelaDB and the select can return many rows, and those rows have to be allocated somewhere in the driver deserialized, but when it comes to an insert, there is nothing that is returned by SelaDB when an insert is correct, so the need for deserialization is much lower, but even in that benchmark the RAS driver was much faster than other drivers. So a few words about the design that we did for the RAS driver, so we decide on the Tokyo runtime, so asynchronous RAS is based on a quite unique future promise model, by unique I mean that the future actually holds the data that will be filled in when this computation ends, and running a function that returns the future does not automatically respond as asynchronous tasks, as is the case in other languages, so actually for RAS you need to use some runtime, and we chose the Tokyo runtime as a base for the RAS driver, we also looked at other runtimes, but we chose Tokyo as it was the most popular and the most standard let's say runtime compared to different libraries available for asynchronous RAS projects, and having decided on the Tokyo framework, we then moved on to design the API, and starting a new driver from scratch was actually a great way to really rethink the API design, because other drivers were developed over the years and they had lots of crusts that has accumulated over the years of the development of the drivers, but with SillaDB RAS driver we could start fresh and have a new clean API, so we designed the API to be very clean to have sensible defaults, and as you can see it's very easy to perform a query, this particular query selects three columns from a table, and it arrays over them and prints them, and as you can see we used different facilities that the RAS language offers us to deserialize it back into native types like i32 and string, so it can be consumed very easily. So now let's move on to some interesting things that we discovered during the development of the driver that impacted the performance of the driver. So one day an issue was raised by the author of Latte, a benchmark tool for SillaDB in Cassandra, and the author raised an issue that the driver had some problems with scaling with high concurrency of requests. And the driver didn't really perform that well when the concurrency of requests, so how many requests you do simultaneously, when this number was very large, the driver didn't really scale as it was supposed to scale. And actually debugging the issue was really fun but challenging, and at the end we managed to identify the root cause in the implementation of Tokyo's futures unordered utility to gather many futures and wait for them. This was actually due to cooperative scheduling in Tokyo, so it was possible for this structure to iterate over all futures each time it was pulled, and if there were many futures in that structure, the runtime had to iterate over them multiple times over all of them, and this is clearly an N squared performance issue, and actually the fix was really nice to just limit the number of futures that are iterated in each poll, and that way this fix was merged to Tokyo and this fixed the scaling issue of the driver, and we worked with the Tokyo maintainers to get this feature fixed. So now let's move on to maybe something more high level. So, when you think of the RAS driver, when the driver starts, it makes connections to different nodes to different nodes of SyllaDB and actually making multiple connections is really crucial for performance. So by default the driver makes a connection directly to each core of SyllaDB, so this is the one connection per chart number. But you can actually customize it to make more connections and in some benchmarks that we did this actually improve the performance. So, in terms of Cassandra drivers they make multiple connections to different nodes, but when it comes to SyllaDB, we can actually connect to a particular core of the node, and this is what SyllaDB does and the SyllaDB RAS driver does, and this behavior we implemented right from the beginning of the SyllaDB RAS driver, and this makes it possible to have even better latencies. So, before implementing this feature, for example in underdrivers that didn't have this feature, when a query was sent to an incorrect core of the database, the core has to route this connection and this request to a different core, and this can be very expensive even on the very lowest level of the CPU design when you have different caches that are particular to some core, or you have different NUMA nodes in some server CPUs having to copy this data between different cores can be very expensive, but the RAS driver and our implementation avoids this caused by directly connecting to the correct core, the correct core, and this of course requires some changes in both the driver and the database. So, for example, the database has some facilities to allow you to connect to a particular core, so apart from connecting to a particular core of the database, one big thing to keep in mind is that SyllaDB is a multi-node database and the data is partitioned across the multiple nodes and the algorithm, the structure that we used to do it is a V-node configuration, so the data is put on this virtual ring, which is presented on the site, and we partitioned this ring into smaller chunks, those are called V-nodes, and different nodes have a portion of the data from some V-nodes, some node can have some subset of the V-nodes, and the role of the driver is to actually figure out that if you make a select query on an insert query, which V-node it will land to, and which node does it correspond to. So, this is how it looks like when there's a select query or an insert query that touches some partition key, we hash this partition key, this is actually done by the driver, and by calculating this hash and keeping in mind the ring structure that we fed from Sylla, we can determine which node the query should land to. Recently this year we did a refactor of this subsystem, so in this refactor we really focused on improving the performance of the load balancing phase of the driver, before making this change we actually benchmarked the driver and pre-profiled it very carefully, and the load balancing phase of the driver was actually a very considerable chunk of the driver execution time, and by doing the refactor we reduced the number of allocations and atomic operations, so this can be operations related to mutexes, while binding the query plan, and we did a very interesting design of this load balancing refactor, so we split the algorithm into two phases, there's a peak phase, which is the common case, this is the phase that assumes that the first node that you send the query to, that this query will succeed on that node, and there's also this fallback phase, which means that the query didn't succeed on the first node, for example, the network was flaky and the connection timed out, and this fallback is a way to determine which next node to send the query to, and by splitting those two cases into the hot path, the peak path, and the cold path, the fallback path, we were able to better optimize the common case, the peak phase, and this is the phase where only a single node from the load balancing plan is actually needed, we also did some pre-computation of the replica sets, and as you saw in the previous slides, we have this token ring, and actually when you calculate the hash, you need to scan this ring and to determine which node is actually holding the data, by pre-computing a phase subset of this phase, we were able to optimize the performance and have constant time access to the pre-computed replica slices that are used for load balancing. So this is a quick comparison of how the performance was improved and how we did it, so this is a short summary of different number of allocations, reallocations that we do during an insert, so as you can see before the insert, we had to do on average 15 allocations per request, and even allocating around two kilobytes of data for making this request, but after the optimization phase, after we implemented this new refactored load balancing, we were able to improve the performance and have the number of allocations really lower. So this is nine fewer allocations, so this is 60% less allocations, and even a greater number is that we are able to make the allocated space really smaller, so now it's only 300 bytes allocated per request, and as you can remember, in terms of SILA, we do potentially millions of requests per second, so all those bytes add up very quickly. And this is similar data for selects, in case of selects, the gain is a bit lower, because in case of selects we need to allocate some data from buffers for keeping the data that we received from SILA, so in that case, we still need to do a lot of allocations to get this data into correct buffers, deserialize it, but still this was a great improvement. So this is a short overview of other efforts that we have made or are still making in SILA DB Rust driver to improve the performance. One is actually a bit different compared to those previous optimizations, so this is actually an optimization, not of actually raw throughput, but mostly focusing on the cost of using the driver, so many deployments of our clients run SILA DB on different availability zones, so for example AWS Cloud, but doing so can bring costs up because sending the data between the availability zones can be costly. So by introducing RAC, our load balancing, by RAC, I mean, in this case, the availability zone of AWS, we are able to send the query directly within the availability zone and this greatly reduces the cost to make a query. And the second one is SILA DB, because the time to send the query is lower within availability zone, this actually even reduces the latency by doing, by querying the newest nodes in the cluster. And the second one is the rewrite that we did with this realization. So, as you can remember when the SILA DB database sends the results of the query, so for example you send the select query and the database sends you a list of rows. And that previous implementation had to deserialize each row into a vector of columns and then a vector of vectors of columns, so this is the vector of rows. And as you can see, this is, this will mean that for each row, you have to do an allocation of this back, and this can be quite costly. It can be an obvious but more harder to implement approach that we did is to allow you to deserialize on fly. So that means you don't have to materialize this vector. Before reading the data, you can just deserialize and consume the data as it's deserialized, so that means that we don't have to allocate this big vector each time you read the results of the query. So implementing this approach actually, the Rust Lifetime functionality made it really great to implement this on the fly deserialization in a memory safe way. So a few words about this particular approach that we did. So we marked the old API as legacy as deserialization is actually a very common operation that the users do with the driver so we didn't want to really break their workloads. So we marked the old API as legacy for backwards compatibility. And we introduced a new API that has the on demand deserialization. And that means that we have reduced allocations and the migration path is really easy. And this particular one wasn't started by us, it was a community started project by Joseph Perez, and this is his GitHub handle. So he actually was really interested in making a driver that would have no allocations at all. As hard as this task may seem, he actually made really great prototype that allows you to do queries with Sylla with zero copy deserialization and actually zero allocations per request and maybe one allocation in some corner cases. So he actually did the query plan caching, maybe a very similar approach that we did with the load balancing refactor and his driver can do zero or only one allocation per request. And we are actually looking into incorporating the ideas shown in that project into the SyllaDB REST driver and this is, this frankly speaking was a really interesting surprise for us. As we didn't know about this project before, but this was a really nice motivation for us to improve the driver even more. And I think this is a great way that open source community works that different people start their own projects and more mature projects can take those ideas and make the more mature driver even better. So while we are developing the REST driver, we use different profiling tools and the REST ecosystem actually makes it very easy to run different profilers and one of the profilers built into cargo is cargo same graph. A utility that can create the same graphs of the execution of the driver or any other tool that you are developing. And this produces such a frame graph file, I'm sure you are familiar with that. And the other tool that is mostly for projects based on Tokyo is Tokyo console that allows you to look into different tasks that are currently, so by task I mean the asynchronous futures that are happening on the Tokyo runtime. So you can look into, look into it in real time, you can see how much those tasks take time, and this is another great way to profile REST applications written with Tokyo. So now let's move on to the final thing of the presentation, which are the bindings to the TILA DB REST driver. So let's start with what I mean by bindings. So, when we are developing the DB REST driver and benchmarking it, it was so great and much better than the C++ driver that we had this idea that, oh, how we could have this performance of the REST driver, but still in C++, for example, if someone has some C++ applications that use some C++ driver. So, an obvious idea popped up in our mind is to develop a binding, so compatibility that allows you to call the TILA DB REST driver from the C++ code, and have great performance, and for us it greatly reduces the maintenance burden, because the bindings project is really smaller, and we don't have to maintain two huge drivers. We only have to maintain the REST driver and the smaller bindings, and by having this core of the driver written in one language, in REST language, we have fewer bugs as we don't have to test many drivers. We only have to focus really carefully on the single driver, the REST driver, so the idea of bindings was a really great idea. So, we started the development of bindings with the C++ C++ language, so we based the bindings API on the original C++ driver, so having the same API, and that means that when you build the C++ bindings, this is just an SO file, SO library that you can actually just replace as is, replace the C++ driver, and as the API is the same, this will just work, and we actually run the original test of the C++ driver by replacing this SO file, and most of the tests, the vast majority of the tests are working out of the box. The resulting project is really much smaller, actually when you look at different drivers, they can have multiple tens of thousands of lines of code, but the bindings project is so much smaller, and that means that it's very easy to maintain, and actually we saw that this bindings project has better stability, and while developing it, and while testing it, we had actually fewer problems compared to the original C++ driver, and this is partially what we expected as the REST core of the driver was really well tested, and we are very confident in that. So maybe as a final thing, this is maybe a very short peek at the driver and the bindings, so on the right is the original header declaration of some function in the C++ driver, and on the left is the implementation that we did in the bindings, so as you can see, and this is Xner C, this has the nomangal defined in this function, so this actually will be represented as the same symbol as the original C function, but under the hood, we actually call different components of the REST driver, so the user using the bindings is actually, from his perspective or hers perspective, isn't really aware of the fact that some other driver is working under the hood, for them it's just the same API, and they don't have to worry about configuring the REST driver is done in the same way as the C++ driver is done by this pin compatibility layer. So that concludes the presentation, so now we can move on to the Q&A phase, but before we do that, there are a couple of events that CillaDB is organizing, so next month we have a very nice webinar about building low latency REST applications on CillaDB, so this particular webinar will be more hands on, we will learn more about CillaDB, not only the REST portion, but also how to use CillaDB, and actually I will be taking part in this webinar, but apart from that, you can also check out our CillaDB university, and later this year, at the end of the year, we are organizing P99 conference, this is a virtual conference that we have many speakers from across the industry, so this is not a Cilla specific conference, this is really a really broad conference about different aspects of performance, and this is not our first time organizing this conference, and when you visit the website you can see the presentation from last year, which I really encourage you to check out then. Okay, so let's move on to the Q&A phase, and actually I have the view of the questions that you have asked us, so maybe let's start with this one question, so this one is really fun, I think. So, this question is about whether we plan or we have thought about using the REST language in CillaDB itself, so the core database, and actually I think there are some parallels to the Linux kernel, where the Linux kernel is a huge C project, of course in terms of Cilla, it's a C++ project, but similar to the Linux kernel, we actually are interested in changing some small parts to use the REST language, and actually right now one small component of Cilla is written in REST, so we recently introduced a support for user defined functions that use WebAssembly to run the user defined function, and this portion of the code that handles the user defined function is actually written in REST, so we found out that the particular WebAssembly runtime that we are using, it was much easier and better to use the REST language to interface with that, and so this is one small portion of the database that we actually use the REST language for, and actually internally we are experimenting with integrating REST language and our own C-star framework for C++ and being able to, for those two separate plans to coexist and to be able to write more components in REST for Cilla, so I guess this will be an exciting thing to watch how it progresses in the future. So maybe this question, I guess it should be visible right now, so the question is about the load balancing, is it single or multiple failover, so in CillaDB you can configure the replication factor of the data, so the default value that we suggest our users to use is replication factor three, so it means that if you have an insert query, this data will be replicated onto three different nodes, and in this case this will be multiple failover, as when the query, for example if you do a select query and two nodes don't answer this query, then the third node will be queried, and we have also, apart from that we have other replication policies, so you can have multi DC policies, so you can specify that some of the nodes are in some data center, like regional AWS, and you can specify a replication factor in each one of them, so CillaDBs can really handle cases where an entire data center goes down, and actually I think there was a pretty nice blog post about one case of a customer that had an entire data center go down, and actually the latencies of the database of CillaDB didn't really get worse, and the database handled it really well. So maybe this one is a really great question, so the question is about where should I start, if I also want to develop a CillaDB driver, and as I alluded to in the presentation, actually this is not a daunting task, it can be done by a small team in a hackathon, so first of all this is not a daunting task, it should not be scared about it, and my personal recommendation about how to start with that would be first of all looking into other drivers and how they do the lower level operations, so I guess the Rust driver is the newest driver, I think this is the cleanest driver in terms of the codebase, so I would start looking at the Rust driver for inspiration. First of all, the second thing is reading the documentation on the protocol description, and actually I think you can go really far by just reading the documentation, the description of the protocol, and just implementing this protocol. And when you get over that phase, I think that, for example, CillaDB University is a great way to learn about those load balancing concepts, for example, that are a great component, a really necessary component of writing a driver. So this one is a short question, but the Rust driver code is, yes, it's open source, so I guess someone will write it on the chat really soon, but yes, it's open source and it was started as an open source project, so actually if you dig down the history of the Git repository, you can see how it was developed, how it over three years ago, how it was started, what was the first components that we have developed. So another question is about the efficiency of CillaDB compared to other databases, so I guess my recommendation is to go to the CillaDB website, we have really many benchmarks written about it, my personal favorite, because I took part in that effort was comparing Cassandra 4 to CillaDB, and we published a blog post about those benchmarks, and actually we started the first blog post was comparing Cassandra 3 compared to Cassandra 4, so even for people not interested in Cilla, this was a great resource for learning about the performance of the databases, so in our blog you can read many articles about different performance of the databases, like CillaDB and Cassandra, as well as on our main website you can see, I think it's right there on the first page you can see I think the performance comparison of DynamoDB, and how the cost differs between CillaDB and DynamoDB, as well as other databases. Okay, so I think we are nearing the end of the presentation, and the end of the time, so I think I'll finish the presentation right now and take it back to the Linux Foundation. Thank you so much Peter for your time today and thank you everyone for joining us. As a reminder this recording will be on the Linux Foundation's YouTube page later today. We hope you join us for future webinars, have a wonderful day.


Let's go over it! Let's go over it! Yo, come on! Come on! Cut that! Yes! For good service! Ah, YouTubers! Yeah! Don't you think this one's a game, Jimmy? Too many to buy it up! They say it's like a cult copy. Is it true? It's a good copy! It's a good copy! It's a happy cult! Beautiful man for football, boys! Beautiful man for football! And welcome to S-Fan's tailgate tour. E-Rav is back. Rob. Joining us. I'm nervous. I'm actually very nervous. He's un-banned. It's going to be fun. E-Rav joined us last year for Iowa State. So we're here at Text A&M versus Ole Miss. It's going to be a very good game today. Very exciting. There's probably going to be 100,000 people a year. But I think it's starting to pick up. So it's going to be good. You want to talk to parents or students or everybody? I think we're talking to everybody. You want to talk to the camera? You want to do what? We do a tailgate tour. We go to tailgates all around the country. Oh, wait! We're tailgates! We're tailgates! We do a tailgate tour. We go to tailgates all over the country. We're the best! You're the best? Because we're living the dream tailgaters. That's good. You're not living the dream. You're not doing the right. Exactly. That's it. I like that. Living the dream. This is my friend Eric. How long have you been tailgating for? 24 years. Do you have every home game? I get every home game. There you go. Well, we appreciate it. What do you guys got here? You guys got burgers? Hey, we got a full car right there. What do you want? Hey, whatever you got. I'll take it. Whatever you want. Well, let's see. Let's check it out. You want something? I can find a chip. I don't know what it's like. It's spanned on Twitter. It's been TV on Twitter. How do you see what she poured in? It's been a lot. It was a cold. And it kind of is. But you will find, I think, on average, some of the nicest people you'll find here. I believe in Texas right now. Hey, wait! What do you got? You get this. Why are you making that? This is for twins. That's gonna feel good. You don't hold on to the culture. A little bit funny. Because this isn't the other slipstream. This is something a whole different state did, but I can't just say to be the best in America. Megan's making the huge danger mice right there against them in different capacities. Thanks. There you go. Hold on. How come you're the only person making noise while you guys got here? That's what I was saying on the way here. Why is nobody else on the way here? Two days before Halloween. That's just keep away, right? Yeah. This is amazing. We wish we had so many college kids. That's a weird Halloween mic. No, the mic is real. This is the one week where normally the mic is cosmetic, but it's actually real this time. Hey, how's it going, man? Hey, but can I be in the street? Yeah, come on. Hey, what's your name? Lane. What are you talking about? Everything. Everything. How do you go to the street? Camera and the microphone. It looks cool on me. Yeah, but it could be a YouTube video. YouTube video right here. So you're an A&M fan. What year are you? Are you a student? No, I'm a high schooler. I'm a senior. I'm a senior. In high school? Yes. Pretty cool. Sick. Okay, so how long have you been anaphan? About like seven years. Seven years. Nice. My name is McConnell. McConnell? Yeah. I'm an actor. I'm a coaching singer too. Oh, sick. Can you give us an example real quick? Dude, you know where the student tell gets on? That way. That way? That way.  It's all the way down that way. Let's go get here. Yeah, let's go down that way. Let's go that way. This is a lot of good stuff. Yeah, that's good. I gotta get a photo with you. You come here this way. I did, just for you, actually, and S-Van too. But it's mainly for you. I need to get a photo here. Hey, C-O-M. You can go take a good day, buddy, man. I appreciate you. Hey, what's up, man? How's it going? Good to see you, man. Yeah, I do. I love you. Yeah, you want a good picture? May I picture you in Europe, too? Yeah, yeah, yeah. Good to see you, man. Hey, nice to see you. Yeah, nice to see you, man. Can I believe that guy said CLM? That guy rolled up, said CLM, took a picture, and just rolled away. Imagine if everybody knew what CLM meant. Oh, my God.   This rank is so strong, man. I'll take a peek in there. Would it be rude to toss it? Yeah, it would be. You guys are gonna do it. We don't do that here. Hey, how's it going, guys? Do you mind if we interview you guys? We're doing a target show. Sure. How long have you guys been tokening your names? Tradition? You guys do this all the time? Oh, yeah, 100 years. 100 years? Oh, yeah. Where are you guys specifically? How many of you guys have been doing it? 10 years. 10 years? Awesome. Nice. Do you guys have any specific favorite memory that you guys had at A&M for the game?  Yeah, he's got it. Oh, yeah, yeah. I was here, actually. I was here for that. I was crazy. Yeah, yeah. I was crazy. Yeah. This is actually my first token. Oh, really? How do you like it? It's been fun so far. Yeah. What's the, is it putting up your expectation? I didn't really have an expectation. I grew up in Austin. It was more of a, I used to grow up in Austin. I grew up in, yeah. I grew up more of a teammate. I came here just to have fun, and we had a lot of fun. That's great. That's good to hear. Awesome. Cool, great. Thanks, guys. I'll give you a good letter. Where are y'all live? We're on Twitch. Yeah. We're on Twitch. We're doing live. And he said who y'all are. He said Twitch. He said all the time. So, yeah. You got the next one? If you get one more, I'll get the one after. We're going to step back a little bit. We still need to find students. Why are you hiding? I'm trying to get a squeeze through here. You're hiding. Why are you hiding? I'm not hiding, man. Let's go that way. Let's go that, I don't know where we're at now. That's bad. Looking good, bro. What about me, man? The whole world's not about you, you rascal. I'm just like, we're both? You're like a guy wearing his Gucci shoes to the tailgate walking in the mines. Does that make you look bad?  Everyone else has cowboy boots on and shit, man.  I thought it was a douche, man. I didn't even think about that.  Stand around and wait for it. Hey, what? We got to wait for traffic to walk in. Let's go. Yeah, let's go. Let's go.  I found you. Yeah. I've been watching the stream. Yeah, you're great.  Yeah, there you go. What are y'all doing here? Dude, we're at the tailgate. Let's go. Yeah, where is all the best tailgate so far? You just left them. Did we? Ace. I heard it's Aggie Park.  Wait, really? I can bring you to the best tailgate here. Where is the best tailgate? It's back. Back at Ace. Helpful. Y'all walked by it.  Aggie Club of Engineers. Men's Oregon A&M. Best of Run Campus. Really? Yes. Are you saying that because you're A&M? Yes. We'll probably go this way and then maybe move back. Let's talk about where we were. So, do you know what you're up?  Oh, I didn't make you get it.  All right, cool. We'll see you, man. Later. I'm about to be decked. Your pinky's broken. My thumb? His pinky's broken. My thumb's broken. All right, let's see what he's got. Let's see what he's throwing for us. I haven't thrown in a while. All right, hold on. Let's see. I don't even know what that was. OK, that wasn't that bad. I'll try, I'll try, I'll try. You guys give away boncos? Wow. OK. Let's see if I can even throw a football with broken thumb. He's making excuses. Come on, he's not excused. It's just a trick. It's a trick, you know. So you would have had that hit the top. I think I would have. I made one, too. The rim is so bad on the ball that it just like, butterflies out of it. I see it. You see it. Cool. Sports. You got it. Hey, yo, what's up? Hey, what's up, man? Not much, man. We're going to tell you. You know who this is? I'm going on it all, bro. It's Tyler one. Oh, no, it's not. What do you think? No, it's not. You know who Tyler one is? I don't know who he is. Who do you think he is? Bro, I honestly don't know. Really? Yeah. This is manager. It's his manager? Yeah. Yeah. I don't really watch Tyler one. I watch you. I'm not in. That's a good choice. That's been rolled a little bit. Nice, but mostly me. Mostly you do. Oh, yeah. Sick. Do you want some free coffee, bro? Yeah. Actually, I think it's very easy for us. Please take as many as you like. Please, please. Hey, you never say no to free food. Hey. We were told to take as many as you like. Get a picture of it. Joe, welcome. Thank you. You love it, Taki? I love it, Taki. You love it, Taki? I love it, Taki. I love it, Taki. We're animals, bro. I love it. Yeah. This is really good. It's good. Yeah, it's really good. Tyler, right? Oh, wow. So good. Yeah. Excellent. It's really good. Great. All right, we'll see you guys later. All right, bye. They want it for the day. Oh, that would not be a Lucifer shower. Well, they're so hot. Dude, they caught me way off the road. I'm in the middle of there.  We're doing a tailgate show. Yeah, I'd love to. So, you really want to? I've got a golden chance. Oh, nice. What do we got here? Oh, you know who I am. Statue of, uh, what? Statue of Liberty. Oh, Liberty, OK. Yeah, Liberty. Very good. Lady Liberty. Oh, Liberty. This is my mom and my dad. Oh, nice. That's great. We are not this mother and father. He's my boss. He's your boss? Yeah. Boss of the seas. Oh, very good. Very good. This is great. You guys look great. Got Spider-Man here. And Nazi over there. No. God, cut that. Yes. What are you? I'm going to Star Wars Imperial Officer. Oh, yeah, I see that, OK. Here to purge the Ole Miss Rebel scum. Very good. Nice. I like that. Very good. Well, great. You guys all look great. And you're, uh, Hawaiian? I'm a Hawaiian. No, no, no, I'm a Hawaiian. I got the shirt on. I'm a Hawaiian cowboy. Where do we find it? Is it YouTube or? Uh, it's going to be YouTube and Twitch at Sven's Tailgate Tour. OK. Cool. Thank you. That's going to be a problem. She's the Blueberry Girl. No, it's not. No, it's not. No, get over there. You said you were. Can we get a picture? No, I can't. You get it. You get it. You get it. You get it. You get it. You get it. You get it. You get it. Oh, so cute. Too pretty. Yeah, that's what I said. I'm a Kentucky fan. I don't like you guys. Do you have fun in Oxford, though? Did you come up to Oxford? No, I did not. Why did you do that? Because I'm from here and I didn't want to get too far. Where's Oxford? Mississippi? Yeah. No, I did not go to that game. Come on. I was pissed. I was pissed. Don't travel well, though. Don't travel well, though. Yeah. Are you friends with them? Yeah. Are you friends with them? Yeah. Why? Well, we intern together. They're too nice. They're too nice. They are the nicest fan base in the whole SEC. Well, somebody gave me a whole cup of Jack Daniels, man. Yeah. Shit. Yeah, these people are too nice. They're too nice.  No, that's good. You did a good job. Yeah. I'm new to this. Yeah, for sure. Thanks, guys. We're gonna have to go that way. I didn't get a good job. I'm so bad. Yeah, that's good for you. There you go. Yeah, we're doing a tailgate show. It's called a tailgate show. It's called Father Phillip. Father Phillip. Hi. Good to meet you. Get a picture. All right, very good. So Father Phillip, what do you do? I'm free. Free? All right. It's my friend, Erop. He needs all the help that he can get. Be all right. You guys be good. Nice to meet you. Nice to meet you. I've never met a YouTuber. How's it going? It's good. Have a good day. Hey, yeah. How's it going? It's good. Have a good day. Hey, yeah. How's it going? It's good. Have a good day. Hey, yeah. All day. You trying to win the game? Oh, yeah. We're over the game. Who do you think should win? Yeah, Texas A&M. Yeah, there you go. I like that. Are you just saying it can go? No, but they're actually going to win. All right. Oh, yeah. Why do you think that?  I think it's going to be an easy outcome. You know, we're going to show up, surprise them, and run all over them. There you go. Just like they did last week. There you go. I like that. I like that. There you go. Shoot him, man. Yo. Can you tell us why you're trying? Oh, that's true. I might be. Espen? Yeah. What's up, man? Dude, I recognized you first. That's crazy. Wait, are you the real? Clark Cunt. Clark Cunt. Very good. There he is. Hey, nice to meet you. Yeah, for sure, man. Here. I don't have any hands. There you go. It's going to win. Put whatever. We'll figure it out. See me. Espen. What's up, man? How's it going? What's up? Hello? Yeah. What's up, man? I had to take a picture with you guys. How long have you been watching? So much. Okay. Was this your family? Yeah, it was my family. Oh, nice. You guys always come to... You guys all come to the interview? Yes. Yeah. Are you like an active watcher? Yes, actually.  No. I try not to, man. I try not to. I try not to. What's your name, man? My name's George. No, it's Chad. Oh, my name's Chad. No, it's 53. No, that's you? Yeah.  I'm eating. I'm eating.  No, I know. You're coming in pretty cool. It's coming. It's coming.  You saw me in person. I wouldn't say that right now. I wouldn't not say that right now, man. I'm going to see you in here. No, no, no. All right. All right. Well, thank you so much. Good picture. Okay, Jorge. That's funny. You can only get to family. I see that. I actually know who that chatter is.  It's good. Do you mind if we interview them? Why don't we interview them? Do you know what Twitch is? Twitch, yeah. Are we live right now? Yeah, we're live. Like the whole world. Like the whole world is doing this. Yeah, this is my son. Yeah. All right, great. How's it going? He's a senior. Oh, you're a senior now. What's your major? Visualization. Visualization. So what is the patent tail? So I study. I pretty much study in a simple way, animation. Okay. Cool. If somebody has to ask what does that even mean, that means it's a good major. What exact channel is this? So my channel is S-Fan TV. S-Fan TV. Yeah, ESFAND TV. Oh, ES. Does that mean Spanish? I need to talk in Spanish right now. No, no. I'm actually Persian. I'm Iranian. But I do get like Hispanic. Is this an SMU2? Yes. We've got to go. You talk to her. Yeah. Good talking to you. You have no idea you should not be talking to me. Okay. Because I'm a bit of a rare. Oh, really? Yeah. But I remember you from SMU2. Really? SMU2. Yeah. Thank you, awesome. Hey! SMU2. How are you doing, coach? I see. Do you see? I got a pair in my hair. Oh, my God. It's so good to see you. SMU2. Yeah, that's great. I like to look up on the net. Yeah, for sure. I like to look up on the net. Yeah, for sure. Yeah, I get it. It's good to see you. Yeah. Send your viewers to Texas Tech. Yeah. We're going. All right. That's good. We'll see you. That's crazy. Who did that before? Yeah, that coach used an SMU. That's another SMU coach. That was a coach that I worked with an SMU2. Hey, can we get a big-ass refresh? Yeah. We're doing a tailgate show. I'm going to guess. We're going to do it. Yeah. Oh, great. I actually like it. Yeah. So, are you guys assuming big-A&M fans? Yep. How many years have you guys been fans A&M? We've been going here for six years. Oh, nice. I was going to say, say, you're a junior. Hey, we're graduating this year. Yeah. I'm already graduated. Nice. Yeah, I know all about it. I was there for seven, so. Nice. Yeah. That's cool. Okay. Well, that's great. I'm excited. We're going to get in the city. I hope we get to see some people there, too. Awesome. We guys have great day. You too. Yeah. Thank you. Thank you. That's some Ole Miss fans. Hey, Hotty Toddy. Hotty Toddy! We're filming a tailgate show. Are you really? Yeah. Go Raps! Go Raps! What's the score to be today? Score. Score. Let's see. 35-31 Rebels. Oh, there you go. All right. Hey, how are you doing guys? Hey! Yeah, yeah, yeah. Of course. Yeah. Of course. Of course. Yeah. You guys are right there. No, how does everybody know you and not me? I don't get it, man. Do you know who I am? No. Should I? No. Probably should. I was just taking a shot in the dark. Do you know who he is? No. Do I look familiar? No. Do you like cucumbers? No. Do you watch Duos Twitch? No. Do you watch TikTok? No, a little bit. Do you watch Duos MySpace? Like the Facebook MySpace? Yeah. I didn't know people used that. I didn't know. I was just making a picture. Oh, okay, yeah. No, I know. I know. All right, cool. All right, well, we'll see you later. I'm just kidding. I'm just kidding. I'm just kidding. I'm just kidding. I'm just kidding. I'm just kidding. That was a stupidest 30 seconds ever. Who's cool about it? Yeah, I was chill. I liked him. There you go, Columbia. Very good. He was pointing at his hat like I had a logo on it, but it just said Columbia. Like I was like an A and another. Do you take a picture? Do you saw all my children that are African? You saw them brass? Yeah, absolutely. Okay, let's take a picture. Okay, ready? Because you're, you're like so important, they said. Oh, really? Well, that's interesting. Do you want to go after him first and take a picture? Yeah, of course. Go right ahead. My name is Esna. Esna. Yeah. Well, that's me. Thank you for being so all that. Yeah, well, thank you. Yeah. All right. This is a good spot. We should have stayed right here. We should have stayed right here. This is great. Yeah.  Are you fine? Are you fine? Are you sure? This is Esna. I get confused with German a lot. It's most of the beer. I feel uncomfortable now, dude. So, it's sick. I hope you guys have fun. Can we get a big gig up for every? One, two, three. Gig up! I'm feeling the conductor, dude. The power, dude. The power of the mic. Dude, this is just, this is, this is... It's German! Hey! Do you want to interview? Who is this guy? We're YouTubers. We're Twitch streamers. Ah, YouTubers, huh? Yeah. So, how long have you been at that? I'm an Aggie grad. Okay. How long's it been? Too long. 40 years. Really? Yep. Who do you think this squad is the game's going to be? Too many to not enough. For them. I hope so. Yeah. Yeah, against them, against them. Yeah. Yeah, they have to win. I hope so. There we go. Yeah. He's a Texas family. Are you two? Are you T.U.? T.U.? T.U.? Oh, dude, he's calling you T.U.? T.U.? T.U.? What does that mean? They're calling you Texas University. They're disrespecting you. This is the University of the state of Texas. Well, who won the last game we played? All right. Move on. It doesn't matter. It doesn't matter. Everybody knows the truth. See, I agree with you. This is the University of the state of Texas. And the second University of Texas is Texas Tech University. Oh, so you're not even second. T.U. is third. Oh. And that's only because they're tied with T.C. Oh, so really, it could be fourth. I don't know how you look at it. Lower case. Lower case. Why lower case? So where are you guys from? We're from Boston. Yeah, we're from Boston. Yeah, he was born and raised in Amsterdam from Dallas. Oh, great. Thank you for talking to us. You guys take it easy. What capital are you? S-Fans. Yeah, S-Fan TV. Hey, can we interview you guys? You go first. So, you guys are students? I'll do it. What year are you guys? We'll do it now. Freshman. Freshman. Freshman. Freshman. Freshman. What year are you guys? We're all freshmen. You're all freshmen? Yeah. Okay, so you guys just came from student tailgates. I'm sure, right? Yeah. So what do you guys like so far? What's your favorite thing about A&M? Oh, the people are great. Everywhere you go, there's somebody you know. So it's such a small community. They say it's like a cult out here. Is it true? It's a good cult. A happy cult. A happy cult. Okay, so are you guys all from the state of Texas? Yes. Is it true that all you guys apply to Texas? No. No? Okay, because that's the rule. I keep hearing that. Everybody applies to both and then they go to one. I'm from Austin and I did not want to go to school there. Oh, really? I get that. Maybe you want to move away from home? Yeah, exactly. That means I've been honest about it. It makes sense. Okay, that makes sense. All right, well, great. Well, all right, well, we'll see you guys later. Nice to meet you. Yeah, thank you guys. Oh, Lord Farquad. Lord, can we talk to you? Can we interview you real quick? Yes, sir. What are you doing here? All the way from Neverland. I'm here to saw off the horns. We're going to have you win today. There you go. Even though you're not even playing Texas, you guys are going to make sure to saw off the horns. Yes, of course. There you go. That's a tradition. Because they're inferior to us. But they're better. Better how? They have a better record. Record to the Big 12, not the SEC. Ooh. That's facts. That's facts. All right, well, thanks. Pleasure being here. Yeah, thank you. Pleasure Avenue, Gris O'Lanth. Thank you, Lord Farquad. We're going to head into the stadium and interview people. We'll interview people in the stadium and then we'll see you kick off and then that'll be your fifth time. All right. We're fine last year. We appreciate it, man. All right. Oh, good.  I did it. Let's go. Man for football, boys. People will laugh at football. I didn't have a key, man. We didn't have a key, man. Vengeance. Vengeance. Vengeance. Oh, yeah. Let's go, Ags. Man. Money Manzill forever in College Station. There you go. Johnny Manzill forever. Very good. What's your next question? My next question is, what's your next question? My next question is, what's your next question? What's your next question? My next question is, what's your next question? My next question is, how good of a tailgate is this compared to every other tailgate in the country? Oh. You definitely should. All right. There you go. Seriously, dude? Yeah. Nice. Are you going to graduate this year? I graduated too much. It's going to be less than 90% of sports again.  It's a high video every week.