Hi, my name is Xiang. I'm from Alibaba Cloud. So who sponsored my travel, so I need to add the logo. So URFS is basically a block-based read-only file system, but its format is very simple. Why we introduce it? Because the previous FS has many limitations. For many use cases, we actually need to, for such read-only use cases that we mostly use a more compact format. But the existing file system, I think that the only Scottish FS is the only choice before we introduce URFS. Because the other file system has many limitations, both on the image size or it doesn't support compression. So, but we would like to, our internal use case is mainly aimed to the performance. We once used a Scottish FS, but eventually we failed. So that we want to build an efficient file system on the block-based. So our FS is block-aligned data. So that is for pitch-cast-friendly, because that we don't need to do another memory copy to do online data for such things. If we do a block-aligned data, so we can do a direct IO and FS stacks. And our metadata, so that's including iNodes and directory blocks, doesn't cross block boundary. So that makes somewhat different to Scottish FS. Scottish FS has a block-size concept as well. But its block size is a compression unit. It's just like a compression unit. So its uncompression size is block size. But its compress size is actually a variable. It can be a better granularity. So that is not block-aligned. So another is that our directory data is random-access-friendly. The other FS, that is too simple, so that it can just do a linear search. And so that is quite effective. And the image size needed to be large enough. So that is the UFS basic concept. Another is that we might need to provide a single file system replacement of a traditional CPIO and TAR. I saw some use cases which try to pass through the table to a guest, directly to a guest. Because their table is collected by SHA, so we don't want to modify it. So that they introduce maybe another new file system like a new internal TAR FS. But I think in such use cases, we can use UFS to replace it as well. So I think such use cases that we can just use the original TAR data and build a UFS merged metadata to point to such data. So the original TAR data won't be modified. So we also have such proof of concept. So that is a benchmark between the directly mounted UFS and TAR after fetching from remote instead of just uncompromising TAR to such as EFT4. So the whole startup performance is speed up. So I think that this might be a use case at least to pass through some container images to guests, maybe or just the wrong thing. But there is still some problem. I think that for such use cases, it still has some problems such as page cache sharing. So I think that it might need to be discussed. So in this use case, the page cache sharing might be a problem. This reminds me of the ButterFS XT4 snapshot. We should probably talk about this later, because it's probably going to be a very long discussion. I agree that the container images have these problems. These are very, very big problems. The thing is that when it comes to page cache sharing and all these other problems, my view is I think that all of them, well, not all of them. That's too grand. A lot of that can be solved is if we didn't have TAR archives in here. If we had another format where we would be able to have per-file granularity, and we share the files as the same inode on disk, and then the kernel knows that it's the same exact file, and we don't have to worry about having a file system where we're mounting. Yeah, that's my view, because I agree that if we change nothing about the image format and we try to work around problems in the image format, this is probably a better thing than what we're doing at the moment. The thing, though, is that in my view, we need to change the image format. I think that I've seen so many talks about people trying to figure out ways to optimize building images because things are based on TAR. And in my mind, this is insanity. We need to fix this format so that it's not, so people are not working around it spending hundreds of human years of life on trying to get work around TAR archives. My blood boils when I have to think about this, because it's so much waste energy and thing. My point is that I think that we could definitely figure out better ways of doing it, but we should have a discussion later, because I'm sure you have lots of really good ideas about how we can solve it. But yeah, sorry. Right, but the thing is that if you didn't have to, if it wasn't a TAR archive, and we didn't have, basically, you would be able to have container images which don't have, if you have Ubuntu Linux that has 1.6 for gigs, if it's one layer, that's one thing. If you look at the OpenJDK, for instance, basically, you have to share stuff between images, which you can't do with the layer format. So if you have the same copy of Bash in every single container image you have, but there's like 5,000 copies of container images in the system, you have to share the exact same inode for all of them. You can't do that with a TAR system. You need to rethink it, that's my view. So there are other sharing you can do. So this improves that, but I think that if we could take ideas from this and come up with a better format, we could have something that's way way better. Sorry, I didn't mean to derail it, sorry, you can keep going. Yeah, I don't want to change the table. Anyway, so, because that is the last deployed, so that is, I think that we need to do a compatible solution, at least. So my opinion, but I maintain the specs so we can change it, that's my focus. So I'm not speaking in some, I'm one of the maintenance of the specs, we can change it. I think, and if we can argue that all this loss, we take these graphs and we point to people, we say we need to fix this. I think that we have very convincing argument. But in this way that we have another problem to avoid the picture sharing, because if we want to mount two different era files, with the same, we need to aware different file system and to do picture sharing. Okay, so I'll let you keep going, sorry. Okay, so finally, that we might need to do a generic picture sharing approach. I asked really previously, but I didn't get some answer or at least some pass. So I have some hack at least to share pay the cash in the file level, but this is not enough if we want to do file duplication, file, final duplication such as chunk or some, UFS supports chunk-based duplication. So I think the type call use case are together with NIDUS. So the NIDUS is Alibaba stuff. So that's initially not related to UFS anyway. So optionally, and it's both profile, LED4 and LEDMA compression, but there's some difference about this because so UFS actually use approach such as that is a fixed size up compression. So why we need that? Because that's compared with previous approach such as SquashFS, that is not quite efficiently to compress a small block such as 4K block. Why we need that? Because that if you want to do some IO, firstly you need some compressed data to load. So you need to allocate memory for compressed data and then you whatever copy it to pitch cash or something, so the memory is amplified. So for the performance sensitive use cases, we need smaller compressed block, but the previous solutions are not quite effective. I will explain later. So we introduce to avoid this that we also introduce in place IO to avoid allocate compressed page buffers as much possible so that we can reuse the original pitch cash to contain the compressed data first and then time sharing to decompress in place. So we also maximize the in place and the cash IO to cash compressed data to save more memory because that sometimes we don't want to decompress all data. Maybe we might need to cash, it is might effective to adjust the cash compressed data. So that if we use block aligned approach that it can be more cash. So that we don't have some meaningless data to cash. So in place decompression to avoid extra copy so due to in place IO. So you can see that some percent of a sequential improvement and the decision that we also introduce the rolling hash global compressed data decompression which is used this way. Also we also support blog based FS based and file based backend. So we have in kernel because we have some use case we indeed have some use cases with block based is not quite efficient. Maybe a composite FS is one use case as well. So we found that based on the previous incremental FS discussion that we found that there exists another in kernel caching management framework which is called FS cache. So we would like to reuse it to cache our image to cache our image and do some lazy loading. Also called on demand download and maybe more use cases such as to just fetch some data from the FS cache caching management. So that is ongoing stuff. So the compression side maybe the story maybe might sound different because that for the uncompressed stuff maybe each extent is quite huge and the information is quite sparse because that we need to record a real thing but the compressed extent is quite dense because that we need to do record many informations in principle because that I observed a previous maybe observed but FS it record many stuff in its index. So, but if such index is too huge the read performance might be impact. So that such read only FS recorded real stuff. So that have some two ways such as fixed side input compression such as a squash FS which is just a start physical offset price download and then it's record a block list one by one. So that they are decompressed side it's fixed such as or one, sorry, such as 4K or more. So in this way that we have to sum it up to get each one physical offset. If we want to read a very large file you need to sum it up too. So they introduce some cash to resolve the problem. So on the other side but it's index is quite small so that I think the main purpose is to decrease their image size on the other side that on the other side that we have a fixed size up to the comparison. So in this way that because we are a block aligned file system so that our compressed data is just fitting blocks. So that we just store is a physical block and the block count and start a logical offset. So, but in this way we have, we designed a very efficient index. So in that way is that we have more higher read performance you can use the FIO or something to benchmark it. So, sorry, so our recent use case is basically three forms. The first form is the UFS4 image such as to just use uncompressed image and FS test for guest sharing or some compressor image to do speech saving as well as to both, to save its performance. Another use case is just to use UFS metal only image plus external data such as table or another binary image. This is possible. The rest use case is use UFS plus overlay FS extended attributes such as composed FS model use cases to refer to external files. So this is a recently use case about our global compressed data duplication. I think because that we record back granularity duplication with a minimized extended length of four kilobytes. So we can use a compressed data. A compressed data can be referenced for multiple times in the prefix form. So in that way I observed that that is much more friendly at least to test the files with a small compressor because there's, but I want to extend it to share library but the outcome is not quite good. Maybe it's modified a lot, not just as a simple patch. So I need to investigate more to get more ideas. You can see that this is a Wikipedia but this is two days different has two days difference. So we can just use 4K compression. We can see 5%, about 5% to use such duplication if it's just a one day difference, that's maybe more. I can suggest why this is. It's basically because most images built on shared libraries the shared library itself represents effectively all of the stuff that you can share between the binaries. Once you've done that, there's not much left in binary data that's fully compressible. You can compress it slightly but it probably isn't worth the overhead. As long as the image is built correctly with all the shared library systems. You mean the overhead, just the index overhead or something? No, I mean once you've taken out all the shareable bits and binaries using shared libraries there's not much left in all of the binaries that will compress easily to give you a great data saving. You know, they're already effectively compressing themselves. They can compress but you're showing they're not compressing very well. Oh no, that is not a shared library. That is just a test file. I mean the left side is just a test file. We use the 4K bytes compressed. The, sorry, sorry, I didn't mention the original size. The original size is almost two gigabytes. Almost two gigabytes. It's already saved something. Okay, forget I said it. Sorry, I didn't mention this line, sorry about this. So, another thing that we compared with fixed size Just to clarify, this step is de-duplication on the compressed blocks, right? Yeah. Right, so basically there's an initial de-duplication. There's compression attempt, which may be successful or not depending on the data. And then you do another de-duplication to see if any of the compressed blocks have the same hash. We just are rolling, rolling left forward. We do some, but actually I observed the difference. That is too small, small splice. That is not huge as four kilobytes. So that we could not use this way to do de-duplication to fall for shared library, maybe. And another question I have is, so you are compressing fixed size chunks? No, no, no. We compressed into a fixed time. Okay, so you basically say how much data can I compress into a 4K chunk? Yeah. Right. And then you move on to the next set of data and go, okay, I'm compressing and kind of compressing. Okay, 4K. No, no, no, no. Not in our tri-way because there's some, many, this depends on the compression algorithm because I invest for many years. There's many algorithms kind of adapted in this way. Yep. Yeah, and you quote LZ4 and LZMA, right? Yeah. I will show that I'm working on deflate. The last step is deflate. I'm working on this. But I'm just to say that it will fix into a fix, but you can leave some space with a large unit such as 8K or more, you can left some space. So you can just use a traditional way as well, but. And it wasn't quite clear to me what happens when you hit a block of uncompressible data. I assume you have a metadata bit that says this region is just not compressed because I couldn't compress it. Sorry? Let's say you try to compress a encrypted file. No, no, no, no. It's not gonna get any smaller, right? No, no, no. Share libraries can compress it. Yeah, shared libraries can compress, but you might have an encrypted file on your file system, right? And that will compress. Adjust the compare to share library. Okay. So that's not the file.  You can talk about it later. Yeah, research is more. So sorry, I will go through. Another use case is called AR data sets. That's, recently we have some AR data sets have too many files. Too many files, maybe four million files. In one directory. So that's with a compact, with compact I know that we can have some benefits compared with EIT4. So that's is a quite a use case and a quite a benchmark for ComposeFS as well. So that is a benchmark with AR data sets. So that might have some benefits to use, just use UROFS. So you can see the time can be saved. If you use EIT4, you have double time. So that's the difference. I have some ongoing development, such as definitely the decompression because I like to use Intel, the recent hardware accelerator. So that's called IAA. So we use this, compared with this standard, I will first adapt a deflate. So that's my first step. The next step is I want to enhance the ComposeFS case. So I want to do a bloom filter for extended attributes. So that's negative attributes can be speed up. So the family is FS variety stuff. I've already talked with Eric. So I will email this offline. So sorry about my English. I don't have enough time to do some discussion, but that is what I want to discuss. If we want to do some image based stuff to shape or distribution some garden image, we want to modify it. We want to do some end-to-end. So we might need some such stuff, but I'm not sure how to accomplish it. The last one is that we have some, I will see some overlay as a partial copy up by using the clone file range. But if we overlaid, sorry, the mount a UFS or whatever look back or something on XFS. So we can directly use it. So that I need to find a way if we could just use with loop back. So we could use copy file range as well because that is on XFS. Because the image is on XFS, the UFS image is on XFS, and we have over the FFS. But over the FFS cannot directly use clone file range to do partial copy up because the lower layer is UFS, not XFS. But we are in principle, we can do because that is on XFS. So that we can just do some copy up partial. There's been a field file range across different super blocks of the same file system type. Copy file range across different file system types. So you have a loop back mounted irrefist thing and you want to copy part of it through the loop back mount. It's actually on a file on an FFS directory, or an XFS file system. You could punch through it and find the original location on the XFS, then you could do copy up. Right, that's the problem is like you don't know what you're on top. Oh, is that to upper layers in a safe way? Yeah, but that might be tricky. Anyway, that might be tricky. But we might finally want some way to do partial copy up anyway. The only way here is that the only in practical the way is that. But we want to use. Maybe I'm missing something obvious, but can't you just return an error on clone file range or copy file range? Yeah, but it will copy the whole file. It will copy the whole file and waste space and time. It copies the, okay, I was thinking the range, clone file range doesn't copy whole file. I may be missing something. You can use reflink. Because as you use copy, sorry, clone copy range, you can just reflink both data and do partial copy up. It seems safe, I don't know. Yeah, that is safe. Anyway, that is safe, but you can do four. Yes, so it sounds like what you want to do is, and what you're saying is have overlay FS, try and do a clone range between the two layers. Just pass down file system, and you get the ex link, whatever it is that link. And then if it's on EROF, EROF just passes it down again and says, I should use this I node. Yeah. The use case for, if you have, sometimes you have storage that knows the context, so you can tell one server, copy from one server to the other without transferring any data. So basically, there is no support for currently for copy file range range between different file type, file system type. If we would allow it, it was to copy from EROFS to another file system. It's not trivial to see the semantics, but then suppose that EROFs deal with this, and EROFs knows what to do. So it gets a request to copy from EROFs to something else, and it knows what to do. So it can be done, but it's not trivial to define the semantics of how, for the IPI, for the VFS API. No, no, no. When we allowed a copy between different super blocks, it was directed to same file system type. Same, same, same, same. All right, Jay. Well, anyway, that's the trick. It's actually not the same file system type because I think SIFs and NFS have different sort of file system types. I think it's actually the same copy file range method pointer. Right, right, yes, right. Anyway, that's the trick, that's the trick part, but we need EROFs partial copyup. But by the other way, that might be okay, but currently, I don't know. You just need partial copyup or you need to be a ref link. Partial copyup is useful. It can be done between any two file systems. If there's a feature you're talking about that you need from EROFs, then it's a generally useful feature. It just needs to be done. There is no format for defining a partial copyup. There's no file, but you don't need any support from file system or ref link for that. Yeah, I know that it doesn't support non-ref link files. But we have some workload. But we have some workload. Such file is quite huge, quite huge. Such a gigabyte file. So we really do. Yeah, I think it's quite a common workload and overlay FS has a problem in this workload, but it can be solved. I mean, it doesn't need ref link to solve that.


Welcome back to Kids Find Science. My name is Ken. Today's experiment is what color is iodine? As always, adult supervision is required. What you need for this experiment is iodine, baby oil, water, and a 20 ounce bottle. So to set up this experiment, we take a bottle, a 20 ounce bottle, 503 milliliters, and fill it halfway with regular tap water. And then we're going to put iodine in the bottle until it looks like the color of tea. So I'm just using a pipette, but you're going to see that it's not, it's taken a little bit too long. So at the end of the day, I'm going to probably just have to pour it in because it's taking some time here. Give it a couple more squirts to see if that works. It's starting to look a little brown as it's coming in, a brownish orange color, right? So it's a lot darker in the cup, the iodine. Let me just pour a little bit in here. And you'll see we get a little bit more of that brown tint tea color. And so once we get that, then we're going to add baby oil. So you're going to want to tilt the bottle because you don't want to just do want it on the surface. And you're going to tilt it so it just gets about, you know, one centimeter, just a clear surface on the top like that. So now you can see there's a surface on it. And there's a separation with the baby oil and the iodine and water on the bottom, you can see right here. So it's a clear with the baby oil. And then the water and iodine are mixed into that tea color right there. Now we're going to take the lid. Hopefully you kept that from the bottle. I'm going to put that on tightly. And you're going to want to shake this for around 30 seconds until it's completely mixed up as much as you can. So you're going to start seeing it starting to turn like a purple color. And that's pretty cool. And we're going to let it sit there. And I'm going to explain the science behind this. This is truly an amazing experiment. Vividly demonstrates the non-polar nature of iodine, the iodine slightly soluble in water, but much more soluble in oil. You're going to see a color change in the solution and learn how this chemistry explains this magical result, right? So the experiment works because iodine is brown when it's dissolved in water and purple when it's dissolved in oil. Pure iodine is violet, but when it dissolves in water, it accepts an electron from the oxygen atom, affecting how it absorbs light. When we shook the bottle really hard, the iodine leaves the water and dissolves in the oil. This returns to its purple color. Reason the iodine molecules leave the water is to dissolve in the oil is due to how the polarity affects the solubility. Water is polar. It has an uneven distribution of electrons. Oil is non-polar, so the electrons in the molecules of the substance are distributed evenly. Iodine is also non-polar molecule, so therefore it's also soluble in oil. I hope you enjoyed this video. Remember to click thumbs up and to subscribe as we do a new video every day. Thanks for watching!


Hi, this is Pastor David Rosales of Calvary Chapel of the Chino Valley, California. Romans chapter 6 verse 4 reads, We were therefore buried with him through baptism into death in order that just as Christ was raised from the dead through the glory of the Father, we too may live a new life. Many years ago, I remember standing with my father at the front of a small funeral chapel, together gazing into the casket at the body of my father's beloved mother. Sadly, my grandmother died on her 90th birthday and she was buried on my father's birthday. As we stood together by her casket, my father quietly said to me, Do you see her hands? I looked down and could see her hands gently folded. They were gnarled, wounded by an arthritic condition she had suffered with for many years. As I looked at her hands, my father said, Those hands made a lot of tortillas. Then he went on to whisper. She used them on me a few times too. I smiled with my father as he lost in his quiet memories of his mother, silently gazed at her for a few moments and then we turned and moved away. A few minutes later, my father and I were standing at her graveside as the minister spoke a few closing words and then my grandmother's shell was finally planted in the earth. As the casket was lowered into the ground, my father remained quiet. But when the dirt was poured over the casket, he he let out a muffled sob and quickly turned and walked away. With the pouring of the dirt on the casket, my father realized with finality that his mother truly was dead. It took the pouring of dirt into her grave and upon her casket to awaken him to the reality of her death. There's something about the pouring of dirt into a grave and covering the casket that cries out. It's done. It's all over. They are really and completely dead. The one thing that comforted my father at the death of his mother was his belief that she had come to know Jesus as her savior before she died. Yet even with this knowledge, when the dirt covered her coffin, he knew he would not see her again this side of heaven. And that knowledge struck something deep in his soul. She'd been buried. The dirt covered her coffin. She died. Christian baptism speaks of this in a powerful way. We are dead in sins and trespasses and yet are made alive when we trust Jesus. As a dramatic picture with incredible spiritual ramifications, we journey to the watery grave and are silently and forever buried in the water. When the believer slips under the water, it is a beautiful picture of being dead and buried in Christ. The old life is forever gone. Our old nature is declared to be completely dead. We have attended our own funeral. When we break the surface and come out of the water, we are identified as being resurrected in him and are declared to be more fully alive than we have ever been. We are raised in him. The water that we are immersed in is a picture of our grave. When we go down and are covered by the water, it's a picture of the finality of death, like the dirt poured on my grandmother's coffin. Yet it also becomes a symbol of our life, our new life in Jesus. When we break the surface and come out of the water, we are now shown to be alive, more alive than we have ever been before. We are alive in Jesus and now possess a brand new life, a life of faith in him. It is a life that is lived in love, faith and obedience to the one who has granted us life. It is a life that is set apart, revealing that we truly are new creations in Jesus Christ. The oldest pass away. Behold, all things have become new. It is a life that understands that grace was not given to us to encourage us to continue in sin, but that grace has been granted to us that we might be freed from its bondage. The old man is dead and the new man is alive because of Jesus Christ. Because of this, we do not desire the old way of life. We begin to understand what Paul meant when he wrote, I have been crucified with Christ. It is no longer I who live, but Christ lives in me. The life which I now live in the flesh, I live by faith in the Son of God who loved me and gave himself for me. We live as new people made new because of Jesus and our new life in him. This did not come through any good works on our part, but completely through his loving grace that was given to us and our receiving of his gift of life by faith. We were lost in sin, living in darkness, but Jesus who was the light of the world enlightened our darkness. If you are saved and have not yet identified with Jesus and water baptism, I encourage you to be baptized and to declare openly to the world that you are his disciple. Today I encourage you to live the new life that was granted to you gracefully through the Lord Jesus Christ and remember we are in him truly alive. This is David Rosales, pastor of Calvary Chapel of the Chino Valley, California.


Good morning guys. Welcome to vlog week day five. Today is actually the last day of vlog week for this week I hope you guys enjoyed today. It's gonna be a really good vlog. Dom and I will one I need to get some work done But then after we're gonna have a little bit of like a self-care day Just do things that make us feel good about life. Like it's just been wild as of right now I'm also recording this for like myself to look back as of right now Biden just took the lead in Georgia in Pennsylvania at like 99 and 98 percent report reporting by like a Thousand votes or something like it's really crazy right now Fitz is so cute Anyways, we're gonna start off this morning by a nice walk. I want to go walk to this bagel place I've always really wanted to try it and we're gonna take the dogs Fitz as I mentioned and I are gonna cheat in dog training this week so he's the best one and he beats this other dog So we have a lot to do before we get there. Oh, also, I forgot to vlog these I think guys, but I got Debbie some boxes. I don't know where my other ones are. I don't remember what these ones are called here They are on well, it looks a little bit weird to play how on But I like literally love them. I have so many oils in my face right now, but all right guys So we finished work for the day. It's like 12 30. So we're gonna have a fun little afternoon We need to go grocery shopping I need to go by a store and try on some rings to see like if I like any of them for graduation So obviously this is like really trendy right now and I love the sweater I just don't think the blouse was like perfect for under it, but at the store. I loved it together So I'm just confused. Anyways, this is what I'm wearing it for our errands today These jeans are from girlfriend. I've had them. They're probably my first pair of girlfriends in them I really love them these shoes are champion. They're not available anywhere I can link similar ones below, but trust me. I've looked everywhere for these the sweater and the blaster h&m And then I'm just wearing this Fendi bag that I got I don't remember where I got this from. Oh from the real real dog. Please. No, please please Okay, perfect So this is my outfit for tonight for our fun little errands self care. Just a good a good day I want to do a puzzle later. Maybe watch a hot mark Christmas movie Okay, I'm gonna try another drink poppy drink. We have been loving these They're prebiotic sodas. I'm trying the raspberry rose Okay, this is so good guys. They actually taste like soda, but they're prebiotic drinks So they're good for your gut Infused with apple cider vinegar immunity sidekick down right delicious with five grams of sugar or less These bubbles will benefit you and be your new BFF, but this is really good And it's good for gut health literally a drink influencer at this time guys Really so Dom's about to like look like me to literally one of the boosiest places in freaking, Texas And look what I'm wearing Dom you look cute And also, you knew we were coming here, and you've been here before so I'm not taking this one. We're at Highland Village Okay, good luck. Are you we're just gonna pick us and close here? It's like literally all See look that could be us Tom that could be us with my new car It is so I that's what I would look like driving.  Okay, so I think we're gonna go to honor bar for lunch. I'm one of my favorite restaurants ever. Whatever Done you just need to Just own it. I've never had this place that my manager told me it's really good. No I don't care what you have to say Yeah We're going to honor bar guys, um, I'm so hungry We're gonna honor bar. This is my favorite salad ever the kale chicken Not Caesar the kale chicken salad from honor bar. It is so good There's another honor bar in Beverly Hills with the chicken sandwich However, the Beverly Hills location doesn't have the best image in the world now only Dallas, so it's so good Okay, we're going to Fendi to look at this ring Tom, how do you feel you're doing now? Like it's literally Blond Saga. Do you are Fendi? They didn't have the Fendi ring that we liked. I just don't like I'm not okay If that's what you're wondering like I'm not having a good time. Oh, just kidding. God I'm having a good time, but I'm just still really distraught about my outfit and what I chose to wear So you're so look Valentino. I mean this place is like really insane. No, it's literally not But it's like also my favorite anthropology They're gonna come up to you and be like do you work here? No, because the people working here and suits dog You don't even work here today Guys, it's just the little things like just holiday displays We just went an anthro and I still haven't found the tree topper that I've been looking for but it is just so cute I need to do a like to know it like think of all my holiday decor that I love right now wait actually I Might have that made so I'll link it guys four or five years ago in high school. That's oh my god That was really weird They had these old glass ones and the glass tops and I was obsessed with them Like literally and they're not the same anymore, but they had really cute designs one year And I got like 50 of them, but they've all since like they're all gone But I would hold on to them for so long. This is the cutest one. I've seen come back But a lot of them are ugly, but I like this one honestly Like do you remember when they came out with the map black Yeah, oh, yeah about like stop. Oh my god. Wait, I think this plug is really cute, too This is fun. It's really big and wide Yeah, actually, that's literally what yes, this is an absolute dream come true This is all the self care that I needed Dom to see this Christmas cup This is just so beautiful This is my order I asked for a healthier Christmas order Screenshot guys Absolutely. Yes guys. So air was having a sale and we got like really cozy clothes. Oh These are where these okay. Anyways, we got some good stuff at airy. We'll do a haul later Now we need to have grocery shopping so we can start the game and stop eating out for Every meal, which will be a great thing for us, right? Guys we're grocery shopping at Kroger. We're very out of our comfort zone. We are Dom's eye rolling rise It's because we needed sugar pumpkin because they had it and apparently they don't have it anymore So we had to change all the recipes blah blah blah. No one cares, but we're about to check out finally Don't let's just turn around I'm in close to work out. I'm gonna do 12 through 30 first. I have to put away the groceries I'm not going to show you guys a grocery haul right now just because there's a lot of stuff and our grocery experience like shopping tonight was actually very stressful and I just need to like complete this entire trip to Kroger and actually it didn't happen. So I'm gonna put them away Hi guys So um, I just told Kenzie she's doing the dishes But I told her that I wanted to do them because I'm really scared that I'm gonna get evicted soon Comment down below comment down below if I should be evicted please say no So before I do 12 through 30 in Donbas 1738. Yeah, I Need you to like record like it's a lot harder than you think no, I know I'm all recording myself doing it Please because I guys okay. Listen really quick orange theory I Was a subscriber? I remember and my all-out which is like the hardest thing you can do was the 12 340 So I know how hard it is. Yeah I'm like an orange theory. They only ever had me do incline of 12 for like a few minutes No, that's what I'm saying.  Yes, do you when I go first into the guest? Yeah, I'm hot. I didn't get too much. We got good stuff though. I'll link everything below Do I just do all of it? Do you want it? I'll do one and then you do one. Okay first I'll talk about what I'm most excited about is this bra let It's like bra let but it's padded and it's really like I got one, too In two colors, but when I worked at Rocham, there is a brand But it was a really bougie brand and the bras were like a hundred dollars and so when I saw it at airy for However much I think it was 25 plus 25% off. Yeah. Yeah, I got two color Well, I got a black and then I also bought like a nude color It's so thin especially if you're just trying to like wear a big t-shirt or something like it's actually perfect Yeah, it's um You know, it's just really cute. Yeah, then I got another bra let that was like ribbed One that you can more so wear is like a shirt almost with like, yeah Like I'm gonna wear this is like my tic-tac look like with sweats in this is what I was thinking, you know very tic-tac of me But comfy cute also would be cool with like high-waisted jeans like it's in a jacket over. Yeah, I got the same thing but in white Actually tried to buy a white like t-shirt thing at Urban yesterday and it was way too short. So yeah Yes, okay, I got I'm gonna go do two because these are the same thing I got these long sleeve that have kind of what would this be a mock neck? Yeah, but I think mock neck I think I don't know this is a mock neck But I got it a white just long sleeve, which is so good to have and then I also got the same top in Gray, but almost looks green. No, it's gray. It's definitely gray But I just thought these would be good basics and the sale. They were like really nice and yeah, okay This is Tom's favorite thing ever. I'm very excited about this. So this I got this sweater It's like this cute oversized the weather. It's like this Peter print situation, but we went to anthropology and there is a Cardigan oh There is a cardigan that is in this exact same print and I talked about it twice Yeah, so it's a sign that I was meant to get I was like you really like that because you brought it up again Yeah, and then we found that I already feel like way less money Okay, I got a scarf. Oh, you want the scarf? Yeah, cuz I figured like I'll be happy with myself when I Need it and it's just like nice and it was so inexpensive again. Everything was 25% off like originally This was 2595. Oh, this is a really good deal for this scarf. Yeah, it's and it's you and then last thing I got I'll probably wear these tonight Once I shower, but it's these pajamas, right?  We don't was once I got an H&M You know I got them online not with you like people are like going crazy over them I don't know what it is. It's just you know me in my pajamas. I wear matching dramas every night So anyways, I don't you guys don't want to see my PJs I mean you do wear pajamas every night.  So this is like also waffle knit Really soft cute. Wait, and then the top is just super simple really soft cute. How much is the top? I think it was 20. Oh, this is 39 95. That's cheaper than the socialite one at Nordstrom. Oh Oh These are good deals great deals. It was very great really cute, and I'm we were just I was itching to buy something Yeah, Dom was like I think I'm trying to find it to fill a void I was ready to like drop a bag at least we went somewhere that was like having a sale You know, so that stuff is great. Um, I'm gonna go work out Great. Are you gonna keep me company? Are you gonna? Do you want me to keep you? I don't care. I don't watch YouTube videos, but oh, then I'm just gonna watch something up here But do you want me with you? I mean, I don't know. Maybe I'll get bored. Oh, well, if you'll get bored I just can't talk when I work out Like I can talk well my dad came in one day when I was in the middle of doing it I get so guys like I'm not kidding. Like you get really winded.  Oh, that's like not good at all. All right guys. I worked out I'm out of the shower. I changed and I got a new Package which I'm really excited for this will open. I think it's with Stella. I want to say oh my gosh wait Wait a second guys. This looks like look at that the cutest package ever. It's a friend's giving package. Okay. No way guys I think I'm like gonna die in this package This is amazing. Hey guys, we have some table accents. We have some place cards. Oh take out boxes This is the cutest thing I've ever seen. Oh my god. Okay. Wow I just made this soup guys. It took a long time only because you like put it in a food processor I just use my blender because I don't have a food processor But I did order one today because I just feel like I need it but anyways so good I just topped it off with a little bit more coconut milk some cilantro and then sliced jalapenos, but it is bomb Okay, guys, it is 9 p.m. On a Friday night, and I am about to go to bed I have been using this as an actual lip sleeping mask I used to just use it as a lip balm and it's great So I've been loving that gonna read I need to get through my book a little bit more Hope you guys enjoyed it today's vlog. Oh my gosh, so that's the end of vlog week I will definitely be posting still all the time like I always do but be sure to follow me at Instagram follow My like to know it. That's a really I'm posting there all the time tick tock all of that stuff Hope you guys enjoyed another vlog week. I'm just so tired. So I will talk to you guys tomorrow Oh, oh my god. No, I won't okay. Well, I love you guys. Bye