Hi, this is Christian. In this tutorial, I want to show you how and why converting one object to another object is so important in Java using this process called widening and narrowing. So if you are still new to Java, I hope this video will help you understand conversion work and also how to convert objects and when we deal with inheritance. So first of all, here I have a list of all the data types that deal with numbers in Java. And there are seven types as you can see here. A list here from the smallest size, which is a byte, all the way to the double, which is the largest size. So when you convert from the smaller size to the largest size, we call that upcasting or widening. And if you go to the opposite direction from large to small, we call that downcasting or narrowing. And so a smaller size will always fit in the larger size. So for example, I put here, the byte takes about, you know, a one byte, which is 8 bits. I can fit all these 8 bits inside a short, which just takes two bytes. Okay, if you're going down from the short to the byte, well, it doesn't fit, so therefore you're going to lose some data. Okay, so therefore you have to cast or type cast from the short down to the byte and therefore you're going to lose some data or you might get a really different result because if any number that is larger than the byte can hold, then it will break the program. Okay, so let's do an example here. So let's take the integer i. So when you do upcasting or widening, then the conversion happens automatically. You just don't see it. So this is the same as saying I'm going to cast the byte to the int type. Okay, however, if I do the other way around, say if I go and reassign that with the double, for example, right, you see a double is much larger than the integer. So therefore it doesn't work. And so in this case, you have to downcast from the double down to integer or something that the integer can store either an integer or something lower the integer. Okay, so you will have to explicitly cast this to the int type in order to fit into the integer. It doesn't have to be int. It could be, you know, byte. But remember that with the smaller you downcast, the more data you're going to lose. So that may be a problem. But anyways, just to show you that it does work as long as the type is equal to or less than the type that you are assigning to. And that's the whole logic, the whole idea here. And so up here I had three functions, overloading methods, right, the same function name, different return type doesn't matter, but you have different unique signatures. Now, these are, you know, useful in this case, but also could pose a problem, especially we have ambiguous data. Okay, so for example, if I go down here and I want to call the function, any one of those I got to pass in, I see a byte will be a be a short and end. Okay, and then if I want to print this out, of course, I would just put P here, I have a function to print this out. And by the way, okay, so like, I think down here at the bottom, yeah, I print this out.   So here if you print this out, and you're going to see that the result will have what I expect, which is a three, let me put on the right side over here. Okay, so I got a three, which is perfect. So it works fine because it knows that the byte in this short and integer fits into this signature. All right, if I go int, int, int, then I put three I's here, right, and then it will call that one. And then again, there's no problem there. However, if I go, for example, if I go short, short, short, right, anything smaller than int, you see that it's a problem now is the problem is ambiguity. Okay, so it's ambiguous. It does not know which one to call because short does not fit here. So this won't work, but short can fit in all these slots, and short can also fit in all these slots here. So therefore, these two functions, you know, pose a problem. So therefore, just be careful when you do this, you have to deal with ambiguity. But I just want to show you that typecasting can allow you to make this work. So to make this work, you really can, you know, change this function to a single function, make it all double, right, all double. And if you don't really care about, you know, the result, all these do is just basically return the sum of one more. So for example, if I turn this off, okay, and if I do it correctly, and just use that single one here every turn double I used to double the largest size, then it'll work in every case. It may not serve your purpose, but it will serve your case. If you want to use a integer back instead of double, you can cast these, right, you can cast these, I want these to be converted to end like that. And now you have your integer type, but you're calling the same function that feeds in all the data types here you invoke ambiguity. Okay, so that's another thing I want to share with you. Okay, so now let's move on to the classes. Okay, the classes, in order for this to work, you have to understand inheritance. Okay, inheritance, let's take a quick look at what that means. So what I have here is an example of inheritance. Here I have a class called person, a one-coin employee and in the manager. And over here on the right side, I have a person and a client. Okay, so the arrows here just mean they're pointing to the parent class. Okay. On the left side, this diagram kind of same on the right side, it's just the size of these classes. What I want to talk about size is I'm talking about the number of attributes and methods a class can contain. So the person class can contain only anything that is always less than or equal to the employees and so forth. So I put here the sizes of those classes here. And if you look at the different layout, like the triangle here, I put numbers in here, one, five, ten, just to show you that different sizes. Okay. So if you look at this perspective, that's how it is. Let's look at the another perspective. This is also inheritance, but now we are talking about widening and narrowing, or I guess if you think about the hierarchy, then the ranking. So the person is the highest in the rank, so therefore it's going to be larger than as you go down. It's the opposite of the size. So I want to show you here is that this inverted triangle here to show you the ranking from the largest down to the smallest. Okay. So when we convert data or objects in this case from the smallest up to the largest in ranking, it's the same process. We call it widening. And when you convert from the larger and ranking down to the smaller, it's called narrowing. Exactly how it works with the numbers we just did earlier. Okay. So if you understand this logic, you will have a good understanding why it works in Java when you deal with inheritance and also dynamic polymorphism and dynamic binding in Java. Let's take a look at how this works in Java. So back here in the IDE, I'm just going to explain a little bit what happens here. So here I have three classes down the bottom. Class A, B, and C. A is the parent class. Class B extends A, the child class of B, M of A, and C is the child class of B. So it's the three generations here. Okay. Now each function, each class has a function called print. These are known as overriding functions because you're overriding the parent class function here and B is overriding A's function up here. So this is what's known as the dynamic binding or sometimes it's just dynamic polymorphism. So up here I have three functions, the same name, different signatures. So again, this is known as the method overloading. Okay. These are known as static binding. So anyway, so when I call up here the function calls, I create three objects of their own type. I call the function show and I pass that type to it and Java will know which type to call because it's going to match the same that signature. So when I run this program, it should print A, B, C as expected over here. Okay. So what is upcasting, downcasting mean? Just like the integer and flow index that we did earlier say that one thing that you cannot do in Java is notice that in a number over here, if I do, like I can go from double down to int, right? No problem. Like here, this is the double. I convert to an int. No problem here. An object, you can't do that though. I cannot go and put B is equal to A. Okay. And then, oh, okay, one way I can do that, right? Downcast A to B. It appears to be finding the IDE. However, when you run it, it's going to say you can't do that. Okay. You can see that it says you cannot cast. It's kind of hard to see, but you cannot cast A to B. Okay. So this one here doesn't work that way. The only way it works is if this A object was created using B's constructor or B's class in that case, then it's fine. So if I go up here and change this to a B, then it's okay because now you will see that it prints both B's functions and you don't get a function anymore. When you do it this way, we have a higher class that uses a lower class to its institution object. This object is a reference to the higher class. So the type is going to be A. But what this happens is that any function that in the B class has that overrides the A class will be bound to that object. So therefore, that's why when I call the print function down here, when I create an object, this function now binds to the object A and not this function here. Anything that is not bound here is not overridden here. It will be accessible like the bet will be accessible, but the rest will be accessible to the A object now. So now if I print it, you're going to get the same thing, right? B, B, C. So you can't print A anymore because we lost the connection right here. So because B is the same level as B down here, therefore I can, you know, downcast A to B like this. You have to downcast so you can just do this. This won't work either, right? You have to downcast because the type is still A type. Because of this reference, though, it'll work. As long as this class is the same as the class I'm downcasting to, then it's okay. Now if I try to do, say if I do C instead, right? Will it still work? Sure it does because C is lower than B, right? So again, if you run it, you're going to get the output of C instead of B installed because initially it's C. So now C has the binding to the print function. When I reassigned downcast, you know, A to B, initially it's still bound to C. So again, it's still intact. And then if I have another one here, C is equal to A, right? Again, you have to downcast to that level. Okay, it must be C. So now they're all C's like that. And upcasting, you don't have to do conversion. So let's say A is equal to one of these. Let me do this. A can be anything. A can be B, no problem, as you can see, right? No problem here, even though A is up here. And also could be C as well. But once you do that, it bounds to that instance, right? That function. That's called the dynamic binding. Okay, so upcasting is automatic. Downcasting, you might have to explicitly do that. And this is a really important example. As you can see, even though I upcast, downcast, they will still work, right? I could have so that I can have only one function turn this off. And I just passed the highest class to this. I mean, I used the highest class here. It will capture all three types. It doesn't matter what type it is. People will see the issues still work just fine. No problem. So using this example here, let me show you something a little bit more practical and another example. Let me close these. And let me open this program here. I'm going to show the person class, the employee class, the manager class, client, and the main program here. The helper is just a function that a class that contains all the functions and the program. I want to use like print details and display menus and things like that. But the person class is the highest class. It has three fields and has a function to print the details. Okay, I am basically overriding that default two string. The employee class is the subclass of the person and it had three additional fields. And again, overriding the two string function. The manager is the subclass of the employee, has one additional field and then again, two string overrides everything here in this class. The client class extends the person. So it's the same level as the employee, the both extended person. And so it has two additional fields, project and budget. Again, the overriding methods here. And then finally, the program starts here. Okay, so it's just really simple program basically to ask what type of employee or person I want to enter data. Let me run this, you can see. And so on the right side, you can see here I can select, you know, E for employee and then I can enter first name, you know, last name and so forth. And then just put some salaries here and then done, right? And then go to go to the next one and so forth. If I quit, then it shows the data enter for each of those types. Okay, that's all this one does. Now what I want to show here or the benefit of using upcasting, double casting of all these inheritance thing is when you enter data, you write your code. Let's go down here to show those functions. So I have the function to enter the, yeah, let's not do this one yet. I want to show you why that was important here. I have here a function called enter employee data to enter data for employee. You print last name, first name, email, so forth. I have one for the manager. I pass the manager to this function. I get information here in the same for the client. Okay, so you can see that there is a redundancy here because these three fields are exactly the same in all three functions. Okay, so that's redundant. And then you look at further, you see that these three fields are also repeated in the manager class two or function two. Okay, so there's a lot of redundancy here. So you may be thinking how can you write a single function that will remedy this problem. Okay, and you may be tempted to do something like this before I show the other one. So this function here, as you can see, I call enter data. I pass an employee manager and client, and I do an if block. If is not known, then use the employee to enter its data, the M for manager, and for that. And so by doing that way, then I can turn these three off because they're repeated. Then I will use the enter data, a pass and the employee object. Then I use just no value for the other two slots. Okay, and do the same down here. So again, put it here, turn these three off, and then I put here no, and the employee here. And then one more, this will be manager, sorry. One more down here, these three will be gone, and I put it here, and I have, you know, no, and the last one is the client. Okay, so if I run it, it should still work just like before. So you go employee, right, no problem. And just like that. So I do a client, right, see for client, project would be whatever it is. Okay, so it works fine. But I'm not doing anything different here pretty much. I basically just remove these six lines or right to another function, they are still here. It actually added more lines to it now, right. And I use this, you know, if block here. What if I have another object, like user, then I have to go in here, add another one, if user is not empty, whatever it is, then do a U, that something, something again. So you can see that doesn't really help to solve the problem. You just want to have it so that one function can enter these data all together. And that is where this function comes to the picture here. It's up here. This is the interpersonal data. I use the person class because it's the highest in the hierarchy. And this person class has three fields that are common to all the other subclasses. So you put it here. By doing this way, I don't have to enter all those information again. So now, instead of calling the enter data, I'm going to call the interpersonal data and then just enter, pass in the employee to that slot. It'll work because it'll fit inside the person, right. Same thing down here. I'm going to change this to just personal data and then pass in the manager object. And then, yes, well, as you can see, no problem, right. And then what's even better is, again, I mentioned earlier that these three fields are repeating again here in the manager. So what you can do is, OK, well, I can call from the manager class. It's a subclass of the employee class. So I can call the employee data and set up the interpersonal data. Call that instead. And I move that down here.  So now you see there are only two lines in here because this is the only class. This probably is a unique to the manager. I call the employee data a passing manager and then it goes to employee slot, just a variable name. It passes it to interpersonal data and then I enter these fields are common to both employee and manager and so on. So now you can see how many lines of code I have eliminated, right. If I put like three here and I have six here, so that's nine. And then 12. And then minus three here, of course, there's still nine lines. So now it works better because I can add more and more object and I keep passing to the superclass and use its data instead. So instead of having to reenter these many, many times. And if I run, it should still work just like before. I hope. Let's see. So E, let's go. Right. That's fine. And then for manager, just put M here. Okay. And then bonus and then for client budget. And then there it is. And the print message, the result, you have each of those type. Okay. So the print function, I use something kind of similar. So up here when I print the result, notice I call the same function print details, print details, but I pass in a different type. Okay. Different object. And if I go to the helper function over here, you see that the function here takes a person array of that person type, persons. And whatever I pass to it will fit into this slot. And so you just have one function to print all the data you need in here. Okay. So I hope that this will give you a really good understanding of how, you know, upcasting though casting works and also how dynamic polymorphism works and dynamic binding works in Java. If you have any questions, please feel free to post comments below or any suggestions are always welcome. Thank you for watching. I'll see you guys in the next video.


A science experiment on groups of boys from competing camps who have no idea they're being manipulated into fighting each other. What was all that about? In the summer of 1954, a school bus with a group of 11 and 12-year-old boys arrived at Robbers Cave State Park in Oklahoma. What the kids didn't know, there was another bus. All the boys thought they were going camping. Their parents at home believed the sponsored trip had something to do with leadership. None of them knew that the camp staff were actually researchers and the boys part of a controversial experiment. One of its goals, let the boys fight each other. The Robbers Cave experiment was designed to unfold in three stages. In group formation, friction and conflict resolution. It started with in-group formation. In the first week, each group did various activities without interacting with another. The boys had fun when swimming and did hikes. Over time, social norms developed, leaders and followers emerged. The boys formed friendships and started inventing their own subculture. Eventually, they came up with names. One group called themselves the Eagles and the others chose to be the Rattlers. They stenciled their names onto shirts and flags. The in-groups were formed. The tribes had an identity. They were now ready to meet each other. During the friction phase, the two groups came into contact with each other. The researchers set up competitions with single prizes for the winners. In other words, they established a limited resource for the two to battle over. It didn't take long before the in-groups developed negative attitudes towards the out-group. Prejudice became apparent. To make matters worse, the staff suggested to one group to dump buckets of mud inside the cabin of the others. Eventually, the kids grew hateful, violent and verbally abusive. They burned each other's flags and sometimes things escalated to the point that the camp staff had to step in. Last was conflict resolution. The boys were meant to make peace. First, the staff tried to reduce the prejudice between the groups by increasing contact and communication. But that just made matters worse. Then, the researchers blocked the valve to the camp's water tank. As there was no more drinking water, the boys became progressively thirstier. Then, the camp staff suggested that they all needed to collaborate to fix the problem. Reluctantly, the group started to get to work. Before long, the boys were mixing and cooperating. There were no rattlers or eagles anymore, only a bunch of campers collaborating. When the water finally came through, there was common rejoicing. The researchers learned four key things from the experiment. First, individual differences are not responsible for tribal conflicts. Age, race, culture or religion don't seem to matter. Second, hostile attitudes arise when groups compete for resources that only one of them can get. Third, discussions don't solve conflicts. Fourth, only a common goal or enemy that promotes cooperation reduces the friction. Two renowned psychologists, Mustafa Sharif and his wife, Caroline Wood Sharif, were behind the controversial experiment and later established a theory. Realistic conflict theory explains how hostility arises as a result of competition for limited resources, such as money, power, military protection or social status. Whether these resources are actually limited or just perceived to be so doesn't matter. Their work helps us understand the mechanisms of discrimination against outsiders, which escalates during shortages. For example, when in groups think that good jobs are hard to find, they often try to remove sources of out-group competition, lobby for legal restrictions or deny newcomers access. What do you think? Do tribal conflicts only arise as a result of competition for scarce goods? And if so, are shared goals and common enemies really the only way to peace? Or is the theory flawed and not applicable to adults? After all, children are easier to influence, not only to build a prejudice, but also to change their ideas again later. Share your thoughts in the comments below. If you like how we explain complicated ideas in simple cartoon animation, you can support us. Visit patreon.com slash sprouts. Just visit us, learn how it works and what's in it for you. We hope to see you there. And if you are a parent or educator, check out our website, sproutschools.com. There you can find this and other video lessons, additional resources and classroom activities.


Going on everyone Sam here with late in sports cards. We are ripping 23 top Star Wars chrome black hobby 12 box case number 13 random auto Or pack style. I'm gonna open the case first and we're gonna have boxes 1 through 6 and 7 through 12 Representing auto 1 through 6 pack 1 through 6 auto 7 through 12 and pack So do this then we'll do the random so you know which box is which did you see that on what was that on That's 1 through 6 here. I bring you over to the random now. All right gonna roll the dice whatever Roll the dice six times on both 24 participants and 24 12 autos 1 through 12 and 12 packs 1 through 12. So six times one 2 3 4 5 6 David M down to Jerry F 6 times on your autos and packs 1 2 3 4 5 6 Pack 4 through auto 11 David M with pack 4 Auto 2 yana be Paul be with auto 12 Philip L auto 5 Matthew be auto 1 Dustin C pack 12 Jay Lee auto 6 Justin M auto 9 Philip L pack 2 George M auto 7 Paul be packed 8 Salacious be crumb auto 4 Michael S pack 9 Brandon W pack 1 Dustin C auto 3 Harold G with pack 3 Dwayne H auto 10 Philip L pack 10 Philip L auto 8 George M pack 5 Brandon W at pack 7 Donald be auto 12 Kevin L pack 6 and Jerry F auto 11 get these copied over. Yes, sir. Chashy. You did in fact take the Raiders appreciate you Oh, good luck brother appreciate you my man. Good luck Right here is Results again, just the Cardinals remaining in that first break first prism break Six and six Go And nine to go upper deck ice hockey. Thank you very much. Mr. Scott K with a spot nine to go on upper deck now Into the single digits nine to go on upper deck Alright, let me get these organized by auto and pack number Alright Matthew be auto one and Brandon W pack one. Good luck. Good luck gents See a super fracture out of one of these now All right, we got a gold on the back We got Dormay refractor to 199 Han Solo and then a gold to 50 captain phasma. There you go Brandon nice one there, buddy Then auto one Matthew be is Brea, Organa Brea, Organa very nice All right auto to Yana be packed to is Philip L Her bowl to 125 Jack Porkins Greens and 99 so by his Beckett and then Darth Vader as well and auto to is Philip or not Philip L That is Yana be and he's gonna be powder shared Base auto that is Chad Parker's powder shared Pack three is our auto three is Dustin C pack three is Harold G Love Dustin and Harold you go Harold. Good luck, buddy There's gonna be a mall So katano and Owen Lars and Then pack their auto three Dustin C is a zero 67 of 99 Chris Bartlett as zero on the green auto very nice Pack four David M auto four is salacious be crumb The person wanted their name is not Donnie and confirm it is not done her bull to 125 Luke Skywalker Nice one there David got Cad Bane Boba fat fantastic fights and Cassian and or we've got Devastator captain 52 of 99 that is cap or a Crispy and Bellfrage as Devastator captain that's on that salacious be crumb auto five Philip L pack five Georgia give up George and Geez jaker jaker check it in from the stands in Tampa Bay fire the cannons, baby Let's go Jake fire the cannons Jakey Supers that is Luke Skywalker a green K2SO to 99 and fantastic fights Kylo Ren and Luke Skywalker and Auto five gonna fill up is handmaiden Aguirre handmaiden Aguirre Very nice as well and then six and six now auto six J. Lee pack six Kevin L Channel two is a pop lobby stinks We got a red Tion made in to 199 Zory bliss and red Owen Lars one of five Grats on that one Kevin good stuff, buddy. Very nice one of five Owen Lars and Auto six is captain Panaka that is 24 of 25 Hugh Corsi Captain Panaka or Panaka All right seven George M auto seven is George M Brandon W. Pack seven good luck boys a couple of Characters both appearing in chat a lot Brandon and George is good luck to both of you Characters understatement Bob who Frick to 199 Tion made on refractor and Jenna and Auto seven George M is Jacob There's Jacobi slain as Jacob all right on to pack eight Paul B auto eight is Phillip L Another character in chat all B Han Solo Moff Gideon and the Mandalorian and Jar Jar looks like you Shawn right there Auto eight is Philip L that is menace velty Menace velty All right, I'm gonna drop you guys this link again to upper-deck ice hockey again 50 bucks a spot gets you into ice hockey Sorry about that jeez Good Lord Paul. What's happening here? What are we doing? Nine is Justin M on auto nine and Michael S unpack nine one ninety nine Bob and Frick two seventy five Owen Lars and Niannub and Auto nine Justin M is Valon hats. That is Richard Brick is Valon hats What smell like Dwayne H auto 10 packed Jack Porkins two one fifth or 125 dormie and Luminara unduly and auto 10 Dwayne H is Crescent in her santa and Gary Jones. It's Chris santa. It's the guy from fortnight Auto 11 Jerry F pack 11 Paul B Yeah, we're on 11 right now. All right, Paul. We got an orange got an orange for you, Paul Zory bliss mall to 199 not bad there and orange to 25 po dameron kind of on a color match That's awesome. It's stuff Paul. Congrats, buddy and Auto 11 is Jerry F with a Claude that's Shawn Haha that's Shawn Claude. That's what Jake looks like when he wakes up Auto 12 Donald B pack 12, Dustin C. Good luck everybody last box of the break here. Uh-oh you frickin moron you just got clotted I don't know that's the thing nice grogu to 75 on the blue Got Django and Mace Windu fantastic fights and Bix K. Lean and Auto 12 Donald B Like probably kind of honestly, I would say is corn Fractor auto corn indy nerosh has corn That will do it for the break everybody again. Can't really recap that Thanks again for getting that filled up to appreciate it up next is


PHP Dynamic Web Pages PHP is a programming language that is used to create dynamic web pages. According to web statistics, PHP powers over 75% of the modern web. Let's take a look at how PHP works. PHP is often used to create administrative interfaces for websites, such as the WordPress dashboard. But it is also used to populate the front end of a website with content. PHP is a server-side scripting language, which means that it is interpreted by the server and the results are rendered in the browser. See a simple example of what PHP can do. Let's take a look at the HTML code from the previous lessons, but use PHP to change the color of the heading element. The first thing that you will notice is that the file extension of the document has changed from HTML to PHP. This tells the server that the document contains PHP code. Then, any PHP code that you want to add to the document needs to be wrapped in PHP Tax. So in this example, the PHP code at the top of the file is being wrapped in PHP Tax and tells the server to execute this code as PHP. Here a variable called color has been created, which stores the value of the color query string parameter from the $getGlobalArray() if it exists, or sets it to red if it doesn't exist. Later, the value of the color variable has been added to the style attributes of the heading element. You'll see this code is also wrapped in PHP tags and uses the echo function to output the value of the color variable. Finally, a link has been added to the document which changes the value of the color query string parameter to blue. You will notice that the code which detects the query string and sets up the color variable has been added to the document before the rest of the HTML elements. This is because this PHP code needs to be run before the HTML elements are rendered in the browser. Additionally, you will see that the new header color is output inside PHP tags as an inline style. This is because PHP can't change the CSS file, so the only way to change the color of the heading element is to add the color as an inline style. Finally, take notes of the use of the query string on the anchor tag to pass data from one page to another. This is a common way to pass data from one page to another using PHP. At the same time, you'll see the button has changed to an anchor tag. This is done to ensure that the HTML is used semantically. The button element is generally used to trigger an action, such as submitting a form or triggering a JavaScript function. In this case, the anchor tag is used to link to a page, which just happens to be the same page being rendered. This is also the first time you might have seen an if statement. If statements are used to check if a condition is true, and if it is, run the code inside of if statement. This is known as a conditional statement. Both PHP and JavaScript support conditional statements. In fact, many features of PHP and JavaScript are similar. However, there are some key differences between the two languages, and it's important to learn and understand these differences. To learn more about how to use and develop with PHP, you can visit the following online resources. The PHP Getting Started guide in the official PHP documentation, the PHP documentation itself on the PHP website, and the PHP Handbook article on FreeCodeCamp.


When the moon is set as a big pizza pie at summer break. Welcome to my stream. My name is NMPLOL. And today, we're gonna wait for Milena to do everything. Who's gonna be Milena? Crusty's Light Fluffy Butter Mike. Complete pancake mix. Butter what? Butter Mike. Butter milk? This is Mike. Mike? Mike? Oh, butter milk. Oh, milk. This is family size for 130 pancakes. Makes 130 pancakes. We're gonna make two or three of these bags. I don't like cold pancakes.  So like, if people aren't here.  They could eat the cold pancakes. Okay, good.  To be honest, I don't think anyone else is gonna be waking up. I'm gonna be honest. Hey, well they're gonna be missing out on the best pancakes they've ever had. Did you bring any Tonys? What are Tonys? Tonys? You love Tonys. Tonys is really good. Tonys is really good. It's Tonys. It's like Cajun, like, it's good. Cajun? It's good. Run to pancake? You put on everything. Oh. Put it in your water. Ooh. We should also have more than just pancakes, by the way. No. Do we have eggs? Oh yeah, we should. Oh, I would love to. I can make eggs. I can create some eggs. All right, I can do the bacon then. We have bacon. We have sausage for people who like whatever this is. I like sausage. Good. Yeah, so we have, we have, we're doing the best we can with what we got. You know, we have this, uh... 16 people, why do you need three of these 90 pancakes? What? I don't know.  Okay, so we're going to go and we're going to put some pancake mix. This is going to be about 3 fourths cup. Yep. Give or take. And then we want to take some... Mate, mate, mate. What? You have to use a cup. You can't eyeball. You're in a cutie. What do you mean? You don't know how to cutie. You have no idea what you put in there. Yeah, I do. We have to find the measuring tools. We just, listen, if Melana or Cutie were here, they'd automatically know where it would be. Oh my gosh. We just need somebody like Melana or Cutie or... I can find stuff. Jinx or Casey Tron. Just someone like that.  Well, just, you know, someone kind of like that. Okay, this is what we're going to do. We're going to make this much pancake mix. We're going to make one max. Okay, just trust me on this. I know what I'm doing. I've been doing this for minutes. Okay, one max. Oh, it's going to be a lot of pancakes. This will be fine. Just trust me on this. Ready? Max, max, max. Okay, this is one half max. Okay, so we have one half max. Listen, we're going to do a whole max. Okay, trust me, it's all about relativity. The theory of relativity of pancakes. Albert Einstein got this from me. It's kind of genius the way you put in this together. Right, so... So two thirds of max because you have the max. Wait, how many cups did you put in there? I don't know, we got a max. It doesn't matter, you have max. So, here's what we're going to do. One max, two eggs. That's a measuring cup. This is a cup. It's a cup. We found it. Wait, but we already did one max. It's too late. S-Fan, S-Fan, S-Fan. I know this has to be good. Hey, trust me, trust me. I've done this for ever. Eggs are no eggs. Dude. I don't, I mean... Wait, I would call Milana, but her phone's here, so... Eggs. I put an egg in there. I'm good at it. That's the max recipe. Just one. This is one egg per max. Do you have a beater? One egg per max. I was going to fist it. You have to beat her, dude. I mean, you have to use a beater. Okay. There's a cute little waffle maker. Oh, really? Look at that. Chad, I'm making waffles. You can make little cutesy ones. No, this is fine. I think, I think with one max worth, I think this is fine. Hey, Milana.   I did not. I, I, you know what? I intentionally left the way because I respect you. Wait, it was out?     I intentionally looked away because I respect women's. It was nice, right? No, I literally, I'm not even joined. I actually intentionally looked away. Yeah, we found your pants in the jacuzzi. Oh, boy. I saw her.   You just said it out loud. No, no, I was quiet about it. The microphone was over there. No, he's mic'd up.  What do you mean? Am I a cuck now?  You're so famous at meeting me. I'm cooking bacon, mis-doing sausage, and there is eggs if someone wants to do eggs. Wait, I'm doing sausage? Oh, you're doing eggs? Yes. Okay, mis-doing eggs. I don't know how to cook sausage. Can you do eggs? Can you do sausage? I can do everything. I can do sausage. Okay. I'll do sausage. All right. Austin has sausage. Yeah, I'll do sausage. As cooking streams go, it's best to stall as long as possible. Taste the batter. Do we have a pan? Austin, here, yeah. Wait, we don't even have a pan. There's a pan in the other house. Is it good? There's gotta be a pan. Oh, no. Oh, no. I swear I've seen one. It does taste like a little bit. Really? It tastes like... It does taste like cotton a little bit. What? This may be a lot for Shreeney. Okay. All right. Let's hear it. This is going to be a... There's definitely been times where I've smelled my cotton, but it kind of smells like cookie dough. Yeah. Does it taste like cookie dough sometimes? No. Okay, got it. It never tastes like cookie dough. Got it. And you have tasted your own cookie dough. I have not. I have not. I guess I'm the only one. I guess I'm the only one. Thought it was a thing. Turns out it's not. Esme, what are you doing? Got some pancakes, man. Guys, this is my own special recipe. I'm telling you. It does taste a little bit. Esme, we... Like, Malayna, it's not even a joke. Malayna, like seriously, it's not even a joke. Like, it does a little bit. It tastes so much like I could come in that and nobody would know. That's what Esme always did. He saw it. That's crazy. We saw him make it. It's salty. I mean, Malayna's blocking half the things here. Here, just beat in my sighting. I think that's really vital. To rock the rock and... I don't know the words, but I'm gonna go eat. To rock the rock, to rock the rock. The rock, the rock is tricky. You put them all in there at once? Do we have plates? Sausages in a pot, man. How are you still drunk, Malayna? Swimming with no pants on. I thought she kept her pants on. I thought we were the thong. Yeah, that's not pants. And it was not a thong, it was a G string. Myth and I are in the kitchen. She's jumping out of the house and looking over. She's bare-ass. I said, Esme, you need to carry her over to Nick's. Nick's, but she's not wearing any pants. And he's like, nervous about it.  He said, I think they're hot. I think they're done. It's so hard to corral. It's hard to move humans. It's hard to move a person, let alone a drunk Malayna. You want to hear the truth?  Nick is not pissed, guys. I knew Malayna was a drunken horror when I started dating her. I just don't want to grab something.  You probably want me to, but I don't want you to. Guys, it makes me uncomfortable because I don't want to. You know what I'm saying? Wow, look at that sausage.  Is it cooked? Nice. I'm not even sitting here. Really?  Not the tasty sausage. Judy, come here. Wow, that's good. That smells like it's burning.  No, no, turn the heat down. Oh!  Because it is. So I think we should have one person cook each thing. Can I make the eggs? You're doing the pancakes, Mother Trucker. Oh my God. They actually look pretty good. That was a good flip. They have any non-stick spray.  What do you mean, protein powder? No! Oh my gosh. It actually has Tony's. Is that a joke? Why is it every house we go to? Dude, in the other house we went into, I was like... I told you Tony... Why is there Tony's everywhere? Dude, I'm telling you, I'm not even joking. What? What are you doing?  See, that one looks good. The rest of them, not so much. There's only two. Yeah, that's what I'm saying. Did we get it? That's a banging pancake. Oh my God, X is right there. You want me to help you with this? You know how to do it? It's not even hot enough. What are you making me put it in there for? These you don't have to touch until you flip them. Alright, well, let's see here. Well, I mean, this guy... Dude, you're trolling. Stubborn pancake. S-Van. S-Van coming everywhere. I'm gonna be honest. I'm about to order myself some McDonald's because there's not going to be enough food for everyone else. Melania's eating every pancake that S-Van has made.  I feel like I should use a little bit of it. He's making eggs. Yeah, I'm making eggs. I need to get some of it out, right? I touched you and I got sticky. Dude, did you shower today? Yeah. You're kidding.   Oh. What? Lord. What?   I'm gonna be honest, bro. This is a wash. What? I mean, there's nothing left. She ate all of it. I'm not eating a pancake. No. I'm not gonna put it in there. Melania, help. He's putting it in my mouth. Put it in her mouth. She'll take it. Put it in her mouth. The eggs are done.  Now you try. Give me a piece of it.  Come get your eggs. Hey there, Minks. You want some eggs? Come and get them sloppy.  What is in it? It's good. A bite. There's trash can right there. I'm gonna be honest with you.    That doesn't need... You need a culinary exercise to get that to taste better. Get that to taste better. Who made those?   Then they're like, oh, just use it. Just use the cheese. And now it tastes like burnt bacon. Wow, we're really making progress with one pancake on a plate. Austin, it's because she's inhaling them as they come off the rack. She's had six or seven. They are pretty good. The eggs actually aren't that bad. They actually are not that bad.  Just take a little bite, try it. You like them? No, they're good. I made them for you guys. This whole thing costs a lot of money. This is the mic. And I'm the poorest out of everyone here. But she has the richest boyfriend out of all of us. Yeah, but I don't use his money. But she should. Take his money. What's his and is mine and what's mine is mine.   It's mine. Dude, Malia's pancakes are coming out fucking. This is where I imagine. S-Van, S-Van, S-Van. I mean, that still looks pretty good. That's why they're breaking. Dude, even in that pan, hers look better. You're mad. Admit she's a better cook. No, she's not. Jesus Christ. Oh, way back. Double, ready? Ready? Guys, we only have so much pancakes left. It touched your foot.  I'll eat it, S-Van.  Round of applause. Say goodbye.


And in entertainment on December 24th, Mariah Carey set yes another record with All I Want for Christmas is You, which is already the longest-running holiday number one song of all time. The hit track now also boasts the most single-day streams on Spotify's global chat, having received 21.273 million streams this Christmas Eve. Carey has broken this particular Spotify record four times. She did not go easy on Adele's Easy on Me, which has been bumped down to second place with 19.747 million single-day streams. This week, the track hit number one on the Billboard Hot 100 for the 11th time since 2019. This made her the only woman to ever have three songs, All I Want for Christmas, One Sweet Day, and We Belong Together, all topped the charts for double-digit weeks.


what's up guys this is the brand new govi lights they're the govi flow plus light bars i'm super excited to try this out this is essentially the successor to the govi flow pro lights now this one doesn't have a camera that needs to face your tv to light it up it's without a camera it's brand new let's go ahead and unpack this see how it looks see how it performs how to set it up i'm going to connect it to my laptop and also to my tv to showcase how it looks let's go ahead and look at some of the key specifications before we begin and let's get straight into it now these are rgb ic color lights which basically allow you to have independent control of the light bars essentially what that means is you can have a rainbow effect along one light strip inside the bars which is awesome this also operates between 2200 and 6500 kelvins on the tungsten scale 16 million rgb colors and it works with voice control on both alexa and google now this goes up to 400 lumens of brightness and it has a 25 000 hour lifetime of its led lights some of the highlights you can see on the side of the box and i will be showcasing some of these as well so let's go ahead and see what's inside right so there's quite a few accessories that are in the box these are the lights themselves you can see they're pretty compact but they will light up to be very bright these are connected to a single usb-c cable which goes into a control box and before i get into that other accessories include the power adapter two stands for the lights and then you have two clips that allow you to use the 3m stickers on the back to basically horizontally or vertically connect this to the back of your monitor or your tv this is the control unit here so if i can just showcase you guys the buttons on there you have the power button you also have the color button there then this is the music and the dimmer button the bottom button allows you to turn on the music mode which actually picks up the audio in the room and it displays that onto the light bars in different effects and you can cycle through those effects by pressing this button as well you can also cycle through single colors by pressing the middle button and i'll showcase that all you have to do is simply connect the ac adapter into this control unit plug that in and then you also have the usb port on the side of the control unit and you plug that in there if you want it to mount this control unit there's also a 3m sticker at the back of this as well so you can put this onto your tv your desk your monitor wherever it is convenient let me go ahead and plug this but before i do that i'm going to just connect these to the stands now there's a few ways you can mount this i've got it standing up in these vertical mounts here you can also have them sideways if you'd like without these mounts and then you can also stick them to the back of your monitors using the little mount here that clips up to the back of this like so and then you use the sticker and you can mount it vertically or horizontally so i'll take this off from now and i'll just showcase to you guys how to use this so i've got them both connected to the control box there's a blue light indicating that it's now powered so you can actually use this without the app but i will showcase this in a second to get the full capabilities of what you can achieve with the app as well but let's just go ahead and press the power button you can see it turned on now i've got kind of a pink ambient yellow color glow on this if i just change to the single color do it now red if i cycle through you'll see that will change color green blue and you can just keep pressing on the control box and you actually don't really need to have the app if you wanted to get up and running straight away so it works out of the box and it's so easy to use i can go ahead and use the music button to turn on the voice commands and now every time i speak you'll see that it sparks up i can change the effect so now it's on sort of a rainbow color every time i'm speaking this transitions through all of the different rgb scale colors on the actual light bars which i think is pretty cool so when i do connect this to the tv i will set it to music mode so it bounces to the audio that's being received by the tv let me go back change it to the single color and what i'm going to do is now connect this using the app so if you download gov home app you need to remember the model number which is going to be very quick and easy for you to search so i've already connected this but all you need to do is go into the plus on the top right and search for the model number which is h six zero five six and you'll see gov flow plus light bar if you don't see it just go and update the app to the latest version and you should see it in the list so i have it connected let's go and connect it here there we go it's connected so you can see there's a few options here you've got the effects lab the timer the brightness and the different modes these are the key things that you will be able to do with the light bars let's start with effects lab if you go into that you can see there's a whole bunch of different categories that you can try to find the right colors to match whichever mood you know if you're looking for maybe let's say some flowers and you want to put this in your bedroom then you can search for the flowers to match whatever flowers you might have in your room so let's find a nice blue you click on that you'll see it automatically changes so this is very you know fun to play with if you go to ingredients you know you have different types of foods and you can try to find a color that matches that so you know if you wanted to get like a nice orange color you can search for pumpkin and then tap that and then you'll see it change that color so that is the effects lab you also have the option for a timer so let's go into timer here you know throughout the day you can set specific times for it to do different types of color schemes and different color settings which i think is pretty great this is also great if you want it to light up when you wake up in the mornings the different modes as i mentioned if i select music this one you can cycle through different options so right now it's using the sync from my phone microphone if i switch over it's now syncing from the devices microphone which is internal to the flow light bars so i think that's really great and then you have different options of the sync so you've got energetic you got rhythm strike and you have vibrate you can change the sensitivity level and you can select if you want it to be auto color or not if you choose from your phone you can also switch between party dynamic and calm modes so lots of options there the next mode color this is obviously the standard one which you can go and play around with different types of color options you want to set on this but what i like about this is that you can see the individual light bars there you also have the options to change the colors of the different segments in a single light bar so at the moment you can see i've got them set to 56 percent now if i click on recommended color schemes just above that in here you can set the style so there's different categories so you need to go from modern science fiction refreshing whatever it may be you know i'll go back to gorgeous i'll select maybe a nice red and then hit the configuring color scheme button there at the bottom and that will change accordingly if you wanted to go to the next group there's a next group button just on the bottom there which actually cycles through the different color schemes if you wanted to find one that just really fits the type of purpose you're looking for now you'll notice that only this one is changing colors but it's because i've only selected one light bar so that's really great you can independently control the different types of color schemes for each light bars if you select both at the same time and then go into the color schemes this would actually align both of them to be exactly the same and pretty much the possibilities are endless the next mode is scene so this is actually one of my favorites you know this cycles through various different ambient immersive scene experiences through these categories you know if you choose candlelight maybe you've got this near your dining table you're having some dinner this really you know brings a very nice ambience to the room you can change it to romantic mode which cycles through this nice purple pink red type of coloring you've got aurora for like the northern lights DIY this gives you the option to set this up by creating your own set of colors to match whatever ambience you're trying to create in your room so plenty of different options and the one thing i really like about this is that it automatically as soon as i created this and connected it to the bluetooth for the first time assigned it to my amazon alexa app and now it's already by default in the app so i can use my voice commands to turn this on and off so let me put my phone down and i'll showcase to you guys turn off the flow plus lights quick and easy turn on the flow plus lights now i didn't need to do any other setup in the alexa app separately it was all done directly from the gov app which i think is great so there's so many things you can do with this you can use the control box you can use the app you can use voice commands i'm so excited to this let's go ahead connect it to my laptop and also my tv and see how it performs so as you guys saw it was very easy to set up with my tv and also on my desk behind my macbook pro and it just really pops the room and it also pops your viewing experience it really immerses you into whatever you're watching so if it's any videos films tv shows i'm pretty sure once you set this up you're not going to be able to watch anything without some lighting in the background these are real good competitors there's something like the philip's few lights which are very expensive in terms of pricing check out the latest pricing information by hitting the link in the description below if you did find this review very useful make sure you like this video if you like these lights and you like you know really cool tech reviews i have new videos out every week so make sure you go ahead and hit that subscribe button and i'll catch you guys next time take care


Hi, I'm Asha, and we're here at Youth Radio, where I lead a team of young people in our interactive department, young people learning how to code and design to create change in their community. And we just created a new app called Moodring. It encourages you and other young people to check how they feel using emojis. It's available for free on the Google Play Store and the iOS App Store. This is Moodring, your emoji journal, and when you open it up, you just click Enter Feeling. You say how you're feeling today. You can click as many feelings as you want. You explain why, and then it gives you your report of how you've been doing. And it's kind of like a journal, but it's organized by your emotions. And you can reflect. You can check out resources. You can share this with your friends. You could share it with your parent or your go-to person. Moodring is a great tool to meet young people where they're at and encourage them to reach out.


So we're going to take a look today at CloudBerry backup. Now, I really like the concept CloudBerry has here. They provide the software, you provide the back end for storage, and they offer a lot of back ends. And we're going to get into some of that detail. You can back up to multiple cloud services all at once, multiple local services that you can control, and a suite of other options in here. So CloudBerry is really interesting to that. And with companies like Code 42, who close their crash plan consumer program, it's kind of interesting to think that, OK, maybe there's other methods out there because their program was tied to their back end. The nice thing about CloudBerry is it's tied to whichever back end you choose. And we'll cover how that all works and show you the software. So they have their desktop backup for Windows, which is right now as of November 2017. That's what the price is now. You get a 15-day free trial, and it's $29.99. Now, it's pretty basic for the Windows. You get all the options of encryption, as long as you're using the paid version. They have a free version that's minus the encryption. We'll talk about that too. Backup scheduling, block level backup, command line interface. So really great stuff for basically backing up all your files to wherever you want to back up all your files to. We're going to cover today because it really is the same product, but the Windows server version. Now, the Windows server version runs on a desktop as well, but also has support for full image backup. As in bare metal, you can back up the entirety of the system and make a new image of it. So that's a pretty cool feature that this has. It's not just a backup. It is a full system backup. Now, this version's more money. It's $120. Now, what's kind of neat is if you want to switch versions, the software is the same. You actually, eventually I had loaded the Windows version and then I wanted to switch up. And I realized it didn't make me redownload. It does like an in place, oh, we'll just switch the version. So the software really works the same. It's just a matter of whether or not you pay to unlock those features. So I think that's kind of a neat way to do it. So I don't have to redownload, uninstall, reinstall. And the interface is the same for both. You just don't have the features and the more basic version. So we're going to do this version here. And if you don't need any of that bare metal recovery options, you can just go with the $29 version. But I figured if I'm going to cover the software, me as well cover all the features it has in terms of that. And I can't know. I don't know if I can make a video long enough to cover every single feature. This is a very extensive one. But I'll show you how to get started with it and how to get things set up. Now one of the cool things about this is the restore feature on the Windows server version is you can restore to AVM. So you don't have to restore it back to another machine. If you're doing full system backup, you can actually restore to an Amazon instance and Azure instance or just export it as a VDI file virtual box is supported. There's a lot of options of when you make an image of machine to restore it. Now we've actually tested this. We have some clients that are really paranoid and nothing is allowed to go into cloud and they have multiple locations. So CloudBerry is a solution we deployed for that client to have images at each of their locations of the other servers so they have their own backup system. They don't care how encrypted it is. It's not allowed to leave their building, which makes sense. Maybe it's a solution that you want. And we kind of do the same thing here. We have a secondary place where we store all of our data encrypted and I don't have to save it in the cloud that way but that's a different topic. But it's kind of a cool option. So if you have that as a thing going, I don't know if I want to just throw my data even if it is encrypted into one of these other cloud providers, you have the option at that point to say, okay, I want to store it in one of my own servers and I'll show you how to connect to those servers. So let's get into the software. So here's the welcome screen you're greeted with when you first log in. Now I've already done some customization and I'll run through how that works. And what this is telling you is the backup plans that are set up, the storage accounts that are set up down here. Now adding a storage account and we'll start with that because that's one of the first things that you may want to do is figure out where you're going to land all your data. There's a lot of options. So they group some of the popular ones on there, Amazon S3, Glacier, Azure, D duplication server, just a basic file system backup as in points of your own open stack Google cloud rack space. This is actually kind of neat because if you say I want to send it over to Amazon S3 or long-term storage in the Amazon Glacier service, you simply go in here and set it all up. Another cool feature is you have the cost estimates in there, so if you know the price per gigabyte, it can help you then calculate the cost of storing in that server. So you just enable the estimate cost, you put the price per gigabyte and you can even say if the backup costs more than a specific threshold, you can say stop. I thought that was cool and here's what's even neat about that too, even on things like your own file system. Not own file, I'm sorry, not the own file system but the SSH has it. There you go, SFTP. If you are setting up SFTP to your own server, I'll do the one that's already set up and close this. So if you go in here in my Linux SFTP that I set up, let me edit cost estimate, you can set your own cost estimate for your own storage destination that you created. So if there is a cost associated with maybe a storage fee because you have it hosted in some virtual spot somewhere, you can still set that on there. So I thought that was kind of novel, won't focus too much more on that. Here is my FreeNAS, which is a standard Windows Share, Linux FTP, which is kind of neat. So when you're doing the Linux FTP, and go edit, I have a username and password set up but if you have a private key, which is the better way to do it, I just didn't feel like setting up for this demo, you can take and it does key authentication. So you can key authenticate to your backup service, which pretty cool, I like that as a feature. Easy to change support, username, password. Setting the path, you do seem to have to set the path, I tried leaving a blank and it fails because it tries to write things in a spot it doesn't have permission for. So do set the path in there. I set it to home, Tom, CloudBerry, but you can create that. It also will, if I add another directory like this, it will create that directory on the fly. So as long as it has permissions to write there, it can do that, so that's kind of cool. It will do consistency checks. So you can actually do a consistency check on making sure that the data is consistent, that there isn't something that happened on the other end of the backup. Now this applies to everything. You can do a consistency check. I have it set up to go to a Google Drive account. I have it set up to SAP and FreeNAS and I went ahead and ran the consistency checks and you can see that here and here and here. And it lets you know it's consistent. You can even schedule regular consistency checks. Now this is what's kind of cool about CloudBerry is I have three different storage accounts. There's plenty of room to add more. And if you want your backups to be in many places at once because you may not trust one of the providers or you just want to make sure there's redundant copies because you may not trust one particular cloud service, you can do that. You can have a local copy, remote copy, or even multiple copies. Also, side note here, if you want to move to a different cloud provider, there's an option to set up a cloud to cloud backup. So you can say I had it on S3 and I want to move it to Azure or I have it on Google Drive and I want to move it to a local or another Google Drive account even. You get to set these up and choose where you want it to go and then migrate them. It actually has that as an option. Matter of fact, it has an option for cloud to cloud even just as a regular scheduled backup. So that's pretty novel there. Now the other thing too, I called this Google Drive account, that's what I named it. You can have multiple Google Drive accounts going to different places. That's in case anyone asks, that is an option. You can have multiple of the same provider with different credentials. So if you have more than one Amazon account, you want the data to go somewhere else or you have one backup plan that lands in one and another backup plan that lands in another, that's an option with CloudBerry. So this is a very, very diverse program. So let's look at the backup plans that I have set up. So this is the entire system image backup. Now any backup you do, you start with either a file backup over here or an image-based backup and it's running you through the wizard. Now I'm not going to run through the wizard here again because if you click edit on them, it runs you through the wizard exactly the thing but all the checkboxes are filled in. So when you run through the wizard next, what do we want to call it? And we said landed here on the free NAS. Now all the different storage ones come up but if you go, oh, I need to add another one. You can add one on the fly right from here. So we want this because it's image-based backup and I want it, I have this as big enough to hold it. We just next, I called it full system image backup. Call it what you want. You can rename it at this point. Backup partitions. Now this is in case you have maybe a data drive you want to skip by default, I just had it. I have it selecting all of them. You can also say only system-required partitions for boot, so some options there. Now, test and credentials, because this is a window shared or a credentials test option here that I can do which it works, it does the test to make sure I can do it. Block level backup, yep. Enable compression, enable encryption. This is important. Now this is what gives you compliance with a lot of different things like HIPAA or some of the other agencies that require that your backups be encrypted. Now you should be encrypting all data at rest because anytime you have data sitting somewhere, especially an image of your entire hard drive, if it's not encrypted, someone could grab that. Someone, if they were to get into your files or take your backup USB drive that you copy this to and it was not encrypted, they would be able to then decrypt it. So this has AES 256 if you want to go all the way, defaults just to 128. And this allows you to create a password and pre-encrypt the drive prior to sending it. So it's encrypted at this level before it lands over there. So it's not landing over there encrypting, it's encrypted before it sends. Therefore, no one's really likely to get the data in flight. And then when it lands on the server, if someone were to break in a server, they would just have an encrypted blob that's as good as the password you have. So choose a good password and don't forget it because there's not a recovery option for this. When you encrypt your data with this, there's not a oops, there is a I lost the password and they're like, well, there wasn't your data. It's gone. So make sure if you choose encryption, great idea to do that. Retention policy, specify number of days to retain backup plan, delete older versions of this or use default. And there's an option so you can just set a global default for how many days and revisions you keep of the image. What's pretty cool too. So you may want multiple revisions of it. Let's say you keep seven days worth. So it will do seven revisions. It provided you're running this daily. And that way you can jump back when you do a restore, not just to that one, but choose one of the other revisions of the files. So this works globally for the files and for full image backups. You can specify just to run a specific date, recurring, stop a plan, takes too long to do, recurring, daily, weekly, yearly. You have all these different storage plans. And now this is kind of neat too, because if you maybe wanted to set up a storage plan for like the Amazon Glacier long-term storage, I'm considering what to do with all my videos because they're big and I don't have to do with them. I'm thinking Glacier might be a fun way to, or a cheap way to put all the data somewhere and land it. But that's an easy way to do it. You can set this yearly plan and say, go ahead and do this and that's pretty cool. So we're next and we're not running this one on schedule. It wants to know when I want to do that strongly recommended that you run on regular full backups, because if you're doing incrementals and we're just going to skip that for now. This is another feature, especially in the server side that you may really like. So pre-backup, post-backup, backup chain. These allow you to chain the backups together and say do this, this, and this in this order, post-backup. These are scripts you can set up to run right after the backup. So maybe you want to shut down a database or change a function, pre-backup, and then post-backup, start that database back up. These are options you have in here. This is a pretty cool feature I think because you don't just want the backup to run because then you sometimes have to write a script that does something else before the backup runs because there's something that has to occur. You can just put these scripts right in here and it'll run them. I want to receive email notifications in all cases or just if a backup fails. I like this too because you can put the email address, the username in, you can use their SMTP server. So that's pretty handy. It comes from their CloudBerry Labs. You can specify your own and put your own if you have an internal server. Not everybody does and this is kind of convenient. I haven't seen any of these go to spam when I've received emails from when we set this up for clients or when I've done it in my testing. So that's novel. You can also say add entries to Windows event logs. So if you're monitoring your event logs, it will put that information and data in there. It gives you a summary of all the options you set. Hit next and finish. Simple as that. It's just like the wizard but because I chose some of these options already, it went ahead and did that. Now let's look at file-based backups and we'll do this here. And so this one goes to Linux FTP. I called it backup my documents, save plan configuration to the backup storage. Now, one of the things about that checkbox is the backup storage, when you reload library and you point it out here, it understands how things were saved and kind of works in reverse. The backup storage plan is a reverse of the plan I set here. So it's going, okay, this is the storage plan. So if this computer crashes, I need to restore it when CloudBerry connects to the same credentials I put in, it understands what the settings were for this backup when it was run. So kind of nice that it saves that as part of the data. Now, in the file mode, we have a few different options. Advanced mode, encryption support, multiple file versions, blockable backup. Downside is, here's the plus and minus. You can't access the files with other client tools. So the backup it creates can only be accessed by CloudBerry. So you can't just go, I want to look through the files. And the reason why is because it's encrypting all of them and doing a, it's creating its own files. Then you have simple mode. You can access your backed up files with any client tools, no encryption, no file versions, no block level backup. Now, what that does is just basically create copies of the files inside of folders. So if you look at the destination, you can just go through the folders and it'll mark them with dates and go, here's your document that was backed up on this day from here. So there's a good and bad. If that's the way you want things and you're not worried about encryption or block level backups, which means files at the incremental level, then you can do this. I choose the advanced mode. I want encryption almost any, I can't really think of many times they ever want to back up something to any destination that's not encrypted. That's my habit, especially to the critical nature of the documents and things that we back up, data for customers, we pretty much always want the destination to be encrypted, even if it's secured, even if it's my own USB drive that's in my pocket, I generally want that to be secured in case it becomes not in my pocket. So I generally choose advanced mode, but you have the option of not doing that. It does use volume shadow copy service in Windows. And what that means is if a file's locked, there's a volume shadow copy of that file. So you can get the copy of the file minus the active changes that are going on because they haven't been saved, but you can still back up files that are locked. It does have the option to back up NTFS permissions as well. Really handy if you're in a server environment. So if you have to restore something cause someone, oops, something which happens a lot, it'll restore the permissions related to that file on the restore because you chose to back up the NTFS permissions. Then to specify the files with standard, you know, little pull down check boxes. They're gray because I didn't select everything but fully checked because I wanted to back up the entire documents directory. And if you want another one, just check it and away we go. Now this is also kind of neat. You can only, you see just back up everything is the default, which is good. Backup files of these types. So you can create different scenarios. Do not back up files of these types so you can invert that option and it has little things here. It tells you like how to wild card it and things like that. Do back up the empty folders, but skip this folder. Backup files modified so many days ago. So you can get fine grain in here or even say do not back up files larger than whatever size. So I like this feature because this sometimes is a problem with certain files. You're like, I'd never want to back these files up that are in this directory and it lets you wild card those ones out. I do like also that the default option if you next in yes your way through this is just back up everything, which is good because some backup programs I've seen skip certain files based on certain things that can create a real headache for people when they thought they had a full backup. So enable compression, enable encryption. And you know, you choose the encryption you want to use. And this is kind of nice, encrypt the file names by default it doesn't, which I thought if you turn on encryption that box doesn't just automatically get checked. Thought that's kind of neat. You can see all the file names but they end up with a different extension as part of the encryption. So you can't get anything out of the files but you could derive information about what that data was. So you may want to, if you're going to encrypt I'm probably gonna recommend you encrypt file names too. I tested it with and without just to see what happened. And if you don't encrypt the file names to say you can start deriving data going, oh, I know what these files are. They're called financials 2017. So you know the name. Even though you would know the content you would have some clue as to what this backup contained. Encrypting the file names means it's all gibberish and no one can grab anything out of it. Once again, here's our option for retention and you can click the options button and set global defaults for policy or specify for this particular backup plan how many days you want to keep the backup. So how many revisions or delete files that have been deleted locally. This is actually another option. So if a file gets deleted you may want to keep several versions of it on your going I don't know if they want us to delete it. I'm gonna remove it from the backup and give people a few days of keeping it in the backup before I actually purge it out. So once again, that fine-grained control is there. We had this one set to recurring. Hit edit schedule. We just said daily at 3 a.m. Schedule full backup, pre-backup. Same options come up at the file system level as with the system image one free and post backup plans. Next, I want to be notified same exact menu again and away we go and to run the backups.  You can simply just do this or even this right here. It is the same thing. I'll just jump in here real quick. If you're backing up to a different storage location like Google Drive it's the same thing. We just choose this and everything else is the same. And then we just click run. Click run on this one. It's seeing if there's anything different and checking the files real quick and uploading it. Actually, I think there's no changes I made to this. So yeah, it just real basic here. And then now it's stored in a copy stored in Google Drive. Now when you're setting up the Google Drive you actually get to specify the folder that it goes into. So you see what the backup name is but inside of the here where you're configuring it you can specify whatever subfolders you want to be where it lands. So you can move it to different places. So if you were backing up to multiple Google Drive accounts, I'm gonna call this one my Windows 10 computer and this one my other Windows 10 computer whatever the name is of each system when you're backing it up to your Google Drive. I also like how it gives you the used space. So they knew this image started this computer had 41 gigs backed up but it only took 28.4 gigs for the image. And this one's 54 versus 72 megs of backups and this one here is just 57 megs. So kind of novel for that. Now let's talk about restoring. Now we can restore and we'll start with this one and we're gonna create a restore plan for the other ones. So when you set up a restore plan, restore plan here and we're gonna head and run through the wizard to show you the options here. The same similar wizard comes up for a restore plan. So select the backup. This is the free answers and next through this save restore plan run restore once. So you can say just run it once where we can save this like we were. Now point in time latest version you can choose right here which version you wanna store or just say when I run this restore plan I want it to be their latest version restore and this is the restore options. This is what's pretty cool restore physical disk restore virtual disk and then choose your option. So we've got virtual box and not just the option you wanna virtual dynamic disk a fixed disk so you get the specifics fixed or dynamic disk just a raw one raw parse raw as a tar GZ image so that's kind of novel too. Let's say we have an Amazon account set up I don't have one set up here but you can actually restore to an EC2 instance restore to an Azure restore to a Google Cloud instance or restore as a VMware virtual machine it will go ahead and just create the VMware machine from this machine restore. So this is pretty neat the way you have all these different options in here and we'll say restore as a virtual disk and we happen to have virtual box. So we'll choose dynamic if we want next which ones you wanna restore we'll say everything where do you wanna put it and I could say save this to desktop and it sets the destination disk capacity and details next test the service yeah we want to decrypt we put the password in because we know it's encrypted so decrypt it too because we had encryption set there now it's kinda weird you can maybe you wanna machine this is where it gets kinda cool because they have a scheduler for the restore maybe you wanna keep an image of this machine and keep imaging it back up to an EC2 instance or a VMware instance that becomes a really neat feature because then you can take the software and say run the backup plan on this and then later on run the restore plan so there's a as they refer to a warm copy in the cloud and what that allows you to do is if this machine dies you're like hit the warm copy over here because it was imaged this many hours ago so you don't have to go through a restore process to restore it you're actually keeping this this has become a strategy that I've seen and talked to a few of my friends in the corporate levels of IT that they're doing is just keeping warm servers that they image and they're ready to go in case something goes wrong which is kinda nice so you're keeping a whole duplication of things on there and you can do it even with your one individual server or Windows 10 box and CloudBerry actually has this as an option which I think is kinda cool so you can schedule your restore processes so this is really slick to how all this works and your same menus receive notifications for email give me a summary and if I check the box it'll run now I don't really wanna run that backup right now so if we wanna do a file based restore we just run the wizard here click the restore wizard and let's restore something from our Google Drive account that was gonna run at once latest version point in time same things come up or you can get let's say only show me files modify between these dates or just manually select things we'll say right here and then we go through and choose all the restore say all right let's go here restore original location specify location we'll say original decrypt if they were encrypted you have to use the same password again I wanna restore when restore fails we'll check this box next next and restore plan created and it's actually running the restore right now done truly fast because I restored just a couple little image files so really slick the way that works and because I chose not to say this is a plan this is a one-time restore action you notice it created it ran the tool once the tool was done it deletes now you can also view the history of these and there's an option here but this is like the history of running each of these backups here's all the logs I set something wrong here's where I screwed up and permission denied permission denied when I was setting it up so you have the whole history you can say okay just the plan just the consistency checks so nice filtering makes it really easy purge post action pre-action or just show me things where I screwed up and had failures so real quickly let you filter and get to things then you have last week last day export this to a CSV really neat so you can say all right I just need a backup report of this and you're able to run that now this is also kind of neat too because this lets you get some of these storage apps and you can look through here like Linux FTP I can actually explore the data that's saved inside of there as connected so here's those images and things like that and I can restore update cloud info refresh or delete so it actually lets you go back and look at the things you stored in here so this one has an image on it it lets me see the disk image that I created here so really I love the way this system works I'm really impressed with this software and for 120 for the full version here you get a lot of very powerful features on here and the way you can explore the backup storage the way the restore works the way the backup plans work and just kind of the easiness of the overall software is pretty slick now the final question you're probably going to ask and the last thing I'm going to cover here is what does a bare metal recovery look like in here well that's pretty neat too I have that set up so we ran all these backups we've created a whole system and let's say this system completely has died and we want to do a bare metal restore not just a VDI restore not just an important virtual machine that's pretty straightforward but we got to reload this hardware with the server software again and how do I do that good news make bootable USB if you didn't see it up here it's right at the top you can create a USB one or an ISO because I'm going to do this in a virtual machine I'm doing it with an ISO I didn't feel like pulling a machine out to do this but it works the same way whether whichever one you choose I like that they have the ISO image because that makes it easy because it's not as easy doing bootable USB inside of virtual machines so let's close this down and show you how the bare metal recovery looks like and that'll conclude this so let's close this now I created this Windows 10 virtual machine called it CloudBerry Restore so here's the console and CB is CloudBerry Underscrollable ISO now when you create this ISO and let's actually show you real quick here when you're creating this a couple of things are on here so we created an ISO image we said we want to put it master password is first the password we set and I'm going to show you why in a second so if you don't set a password anyone could just run this that would be a problem if anyone could just run it they actually have the ability to restore because and you're going to see this is really slick how this works they allow this backup that you create the ISO itself is not an image of the system but it does contain the CloudBerry software and the credentials to log into your cloud providers and you also have a path to drivers so if you have certain special network drivers to get this working you can actually load that and it'll spin them into the ISO or USB so let's jump back over to the virtual machine so here's the CB bootable and we're going to start it up and show you how this works so yes it boots a Windows 10 bootloader on the CD or on the USB whichever you chose so the first thing we're prevented is presented with is the master password to this so let's put this in now it's thinking now you have some management tools here like a registry editor save some logs command prompt so if there's something special you have to do you have that option but let's go right to bare metal recovery here's the CloudBerry tool loading now this is where I thought this was super slick here is the storage account that contains the image it when it built the USB or ISO it saved this and the credentials to log into it inside of here this actually is nice because then when we want to do a restore I can simply choose this as the option for the restore so here's the restore wizard yep that's where we're going to pull the data run restore once sure latest version so it still has the same options I can choose the different version so if I go no I know this computer became messed up two days ago but I have seven days worth you can jump back to whichever version you have so if you're keeping you know however many versions seven, eight, ten versions you jump and choose the version on there we're just going to say the latest version restore physical disk, restore virtual disk so even though it's running in here you still have the option to restore it virtually but we're going to restore it physically because it thinks it's in a bare metal machine what do you want to restore? all of it yep this is where we want to restore it too so it's select the physical disk I made the disk a slightly different size and it doesn't seem to care it will not go smaller so I know I did make an attempt at that and as expected if the disk is smaller than what it had for the drive it will fail decrypt here's the password we got to put in because we put a password to put the data on there or it'll fail if we don't do this it'll email notify you because as long as it has network access it can notify you when it's done and it's actually kind of nice as I can say in all cases because maybe I don't got time to babysit this machine and it takes, especially if you're reloading something with a lot of data it's going to take a long time and next finish and away we go it will start restoring this disk and like I said this is really I'm impressed like how simple they made this entire process I didn't have to re-specify the storage source or anything else it just says okay you have it here and let's copy it from here and here's the settings we're going to pull the network and we're just going to put it all back together for you so it really makes it kind of pain-free to do the restore probably you don't forget your encryption password so make sure you document that at the beginning of it when we set up the encryption for our client we make sure we have all that set up so if ever this server dies that we have these all set up on we can restore it but in my overall impression is really positive with CloudBerry's backup solution like this is intuitive it's not overly complicated it's easy to use full system backups full file backups and not that bad in price and multiple storage providers or rolling your own storage provider from SFTP internal servers just standard Windows shares that we'll go across which is pulling this off of my free NAS box full encryption support so all your data at rest is fully encrypted including the file names which is really nice so there's no giving of metadata for people were to look at that even if they couldn't decrypt it they like I said you can start to derive what the data is so overall really impressed really happy with CloudBerry Labs backup software it's a solution like I said we have a couple clients that we deployed this on and we did not get any free from CloudBerry to do this just want to make sure that's clear all this that's why this is a trial edition of the software and we bought it we tried it I like it and really happy with that I definitely put it on my recommended software list if you're looking for a backup program that you can really trust to be encrypted and all that they've been vetted I believe security now Steve Gibson did some vetting of the way they implemented the security and said that was good I'm not an expert on it I know in concept how they did it but I believe they've done some code review or vetting and make sure it's done right and it really does seem to be done very well so once again great product put it on my recommended list if you're interested in it go download a free trial like I did you have 15 days to play with it and that's including the server edition so if you like the content here like and subscribe if you have some other experiences of CloudBerry or if I overlook something let me know at some point they offer a whole nother version that's made for IT companies to manage groups of these and I may do a review of that edition later because I wasn't going to but then after I was so impressed with the way this software worked I have an interest in that and I know a few people that are using it told me they're really happy with it because it kind of keeps you in control because they let you choose all these different providers or you yourself can roll your be your own storage provider which is actually kind of a neat concept because storage is cheap if you want to store things in-house for your clients so once again if you like the content here like and subscribe and I give the CloudBerry a thumbs up thanks