All right, good morning. So today is going to be the last lecture and then past that will be review of the final and Stuff like that depending on the material. I'll either do a lecture or just have it like open office hours So I'll also be here on the optional Thursday For that and payment. I'll probably just use that for open office hours And hopefully we can do some review or post on discord questions. You want me to go over but the final will be a Corkus in person. So it will kind of be like the quizzes. So any questions or anything you want me to go over for that Just let me know and If you have a regrade request for a quiz three you can email Ashvin I made an announcement on discord and there's a piazza post So our last topic will be virtual machines, which won't be covered on the final But it is a good thing to know about since you will encounter virtual machines nowadays You might even encounter them As soon as you leave this course because they do make a lot of things easier And if you've ever used a cloud service or anything like that, you've used a virtual machine even if you don't quite realize it So what virtual machines do is abstract the entire machine. So like a process abstracts a Abstracts a CPU a virtual machine abstracts the whole machine And our goal here is to run multiple operating systems on a single machine and the abstraction Because they're all virtual machines They should think they have access to the entire machine Even though there might be multiple operating systems all going and sharing that same machine But from the point of view of a single operating system, they believe they're the only ones running Similar to how if you're a process you think you have access to all the memory space You also think you're the only process running although you can actually do some queries to figure out what other Processes there are but in general that's kind of the illusion So for virtual machines the host has direct control over the hardware not the kernel as we have Known it so far So there's different names for that this they're sometimes people call them hypervisors sometimes people people call them virtual machine managers or VMMs and What that does is it controls a virtual machine so Controls when you can create a virtual machine management of them isolation like what hardware it has access to so maybe you have Decided to download. I don't know red star OS anyone ever heard of that So so that is the official operating system of North Korea So if you download that you probably don't want to run it on your actual hardware You might want to if you're curious you might want to install it on a virtual machine and probably not given network access So if you want to explore what's going on in North Korea, you can do something like that So that's one thing that virtual machines are good for just testing or if you were doing Kernel development or something like that. Well, we know that if your kernel has a bug on it and Seg faults or does something like that? Well, it's not a process. No one's there to save you So if your kernel seg faults, then your system just crashes and it'll be very very difficult to debug it So instead of that you can just run your kernel in a virtual machine And then it doesn't actually bring your whole computer down and you actually have a hope to debug it So there's two kinds of hypervisors that you'll see pop up called Creatively type one and type two So type one is a bare metal hypervisor that runs directly on the host hardware So it requires some special hardware support that we'll see and then type two is essentially a hosted hypervisor that just simulates what a hypervisor would do and it just runs as any old application and uses some tricks to provide kind of Fake a Fake hypervisor so it's slower, but doesn't require any special hardware so your hypervisor just runs as a process and it runs other kernels and does some tricks to handle that and then in this terminology a guest is the name of the operating system or kernel that is running via this hypervisor and It sees its own virtual copy of the host so it might only see You know might see the CPU but might only see a subset of the cores or something like that So it'll be a subset of what's on the host or it can also Create some emulated hardware So even if you don't have a network card You can tell the virtual machine that hey I have a network card and then you can monkey around with where that output goes But to the virtual machine it just looks like a network card to it So this is a diagram of what it looks like We're kind of used to what happens on the left in a so we're used to just we have a bunch of processes there's a Programming interface so we can talk to the kernel, which is a system call interface. We all know and love and the kernel then Uses that it's a different CPU mode and then it actually talks directly to the hardware processes never talk directly to the hardware and Then in the virtual machine case in B on the right here Well, we have multiple kernels on our machine and they are all allocated different virtual machines so here we have virtual machine one two and three and Then there's an interface for each of the virtual machines to call into the virtual machine manager or Hypervisor and then that is what talks directly to the hardware So should be noted here that virtual machines are not emulation So emulation typically means when you translate one ISA or instruction set architecture to another one Like for example x86 64 bit to armor risk 5 or what have you? so in This case we're assuming the guest operating system executes Instructions directly using the same instruction set architecture Otherwise we would have to be translating every single instruction Which is going to be really really slow, so it's okay for some uses So if you want to write yourself a Nintendo Emulator which is a fun little project to do well you could do that because it's like an 8-bit CPU that runs at like 1 megahertz So actually emulating all the instructions and translating them yourself is actually quite easy to do So Virtual machine could use emulation to run a virtual machine for a different ISA, but your performance is going to you know suffer a lot unless you know some of the max are pretty good at translating x86 to arm but in general That requires specialized hardware and it would be slow. Yeah Instruction set architecture So yeah, so those are the actual instructions so like if they're formatted x86 arm or risk 5 so One of the cool things virtual machines do is enable some pause and play so much like our kernel can pause a process and Put it to sleep and resume it later. Well a hypervisor can pause an entire operating system so all the concepts you know For switching processes pretty much apply to switching between kernels So the hypervisor would just need to contact switch between Virtual machines, so it would do the exact same thing as if you were just switching processes It'll save the current state and restore it later. The only difference is it would save registers and values that are also only accessible to The CPU instructions running in kernel mode, so it would save more registers But other than that, it's fundamentally the same thing as switching processes And then of course because you can do that you can move it around like a process So you could even move it across machines if you really wanted to so that is also how cloud machines work So like Amazon on AWS will have a bunch of servers and give you a virtual machine And they're not sure how you're going to use the virtual machine So they might be unlucky and say they put like 10 virtual machines on a single actual Box like actual hardware and then everyone starts using it and it's really really overloaded Well, what Amazon can do is move some Virtual machines that are using a lot of resources to a machine that has otherwise idle to spread out the load and You as a user will not actually know that your virtual machine has actually Completely moved what hardware it's running on. It just does it completely transparent to you So that's a cool thing with virtual machines and actually Makes your life easier if you have to manage a bunch of servers So if you just give everyone a virtual machine, it's easy to save back them up move them around stuff like that They also provide some protection through isolation. So the guests like Processes the guests are all going to be isolated each other and hopefully from the host So if you're the hypervisor, you can set limits on CPU time in addition to what virtual machines actually have access to which CPU cores But on top of that you can limit them with CPU time You can limit how much memory they use you can limit how much of the network utilization they have and Then the thing about that is if the guest gets compromised or hacked or just misbehaves for some reason Well, it only has access to its own virtualized hardware and won't actually bring down the machine for everyone else using it And if you need to recover well, you can easily roll back the virtual machine or just remove it completely And now the other virtual machines get affected by it other than actually probably getting their fair share of CPU time again They also kind of help consolidation which is what I was talking about before so data centers like Amazon there's going to be lots and lots of servers running often a bunch of them are going to be idle and Also, you could have servers with different purposes that are sharing the same hardware So if you start off initially just having a small site Well a good thing to do might be to create like a virtual machine for your database a virtual machine for your website and then Originally when you have a low number of people come on Well, all those virtual machines can run on a single physical machine because there's not that much traffic and then once you get a lot of Traffic well what you can do is you can just move the database virtual machine to its own physical machine and Keep the web server on its own physical machine and without changing anything other than some configuration Well now you have a web server that can handle a lot more and you didn't actually have to change anything So that's one technique people usually do they just instead of having lightly used physical systems They just make everything into a virtual machine ahead of time And then that gives them the flexibility to juggle things around move things to different servers or consolidate them if they need to so here our key abstraction is a virtual CPU which is Tries to abstract the entire CPU. So for processes It's like part of the process control block that acted as a virtual CPU But it doesn't virtualize all parts of CPU just enough for user mode processes So it just saves the registers and make sure that you have a stack But for virtual machines a virtual CPU is a data structure that stores the entire state of the CPU So that also includes like I said before all of the kernel mode specific registers and everything like that So then whenever you context switch the hypervisor would save all those and then restore them when the guest isn't running and Then when the virtual machine goes ahead and resumes like when you get a process context switch back in Like the process control block is just going to load all that data and then just resume execution as normal so The guest nothing changes in the guests. So the guest still has the same CPU modes So it still has a user mode and kernel mode like we're used to There's no changes whatsoever to the guest operating system It runs just as though it's actually running on real physical hardware So if you look at your Linux kernel and you put in a virtual machine Well, it's still going to use all the same privilege instructions You don't rewrite the kernel or have it behave any different It would use all of those kernel mode instructions and registers as it would normally So remember on x86 there's user mode ran in something called ring three and kernel mode was in ring zero Well, this is how you can tell how old x86 is So hypervisors are a fairly new thing new ish So a hardware hypervisor So like type one that actually provides hardware hypervisor support on x86 is called ring negative one because they obviously ran out of normal numbers so they had to Make something that is even more privileged that can you know control things running in kernel mode So they just called it ring negative one and that's why you know, they ran out of numbers So the hypervisor is in ring negative one. So on most other architectures. They'll just be given a you know Sensible name. So like on risk five. It's actually just called. There's it's actually just called hypervisor mode So instead of just ring negative one. So some architectures make more sense than others and then For type two hypervisors. So those are ones where the kernel just runs as a normal process Well, the host has to do something different because If I don't rewrite the kernel and it uses kernel Kernel mode only instructions Well, then I can't run it as a normal process because my normal process runs in user mode So for a type two hypervisor that you're just running as a process You have to do something to kind of emulate all those instructions that can only run in kernel mode So we'll see some options for that so One strategy if you are writing a hypervisor that just a type two hypervisor So the hypervisor runs as a normal process Well, one strategy you can do is something called trap and emulate So again, the kernel would be running as a normal process in user mode and then if you just Straight up do that. So say you just want to execute the links kernel as a process Well, whatever it the CPU tries to encountered a privilege instruction It's going to generate a trap that says hey You don't have access to run this instruction because you are not in kernel mode. You are in user mode So if you're writing your own hypervisor, you can go ahead and explicitly handle this error So you can generate a trap So it would generate a trap which would be a signal to you that says hey a legal instruction And then you can tell the you then you can handle the signal and be like, okay I'll handle this. I will emulate whatever that instruction is supposed to do in kernel mode So you'd have to know how the hardware actually works. So you go ahead emulate that instruction in Your process and then you would just skip that instruction and go to the next one so you Simulate or emulate it and then you just resume executing the kernel as you would normally and then next time You hit another kernel only mode instruction Same thing is going to happen. You're going to get a trap and you're going to have to simulate it again So this will slow down otherwise native execution because if the instruction doesn't need any special privilege It's just going to execute normally and not generate a trap. This will only happen for kernel mode only instructions So this is what it kind of looks like visually. So your guest This is a type 2 hypervisor. So your guest is just running as a normal user process So if it tries to execute a privilege instruction that can only be run in kernel mode Well, it's in user mode. So you'll so the host offering system Whatever it is would generate a trap and then you would handle it It's like, oh, that's an illegal instruction You can't execute some instruction that I don't know Modifies the page table pointer or something like that. So then you would go ahead emulate that handle that signal and then update your copy of that virtual CPU So that keeps track of all the kernel specific stuff that you just you'd have to know the details of the hardware And then you return to just executing the code normally and again Soon as you hit another privilege instruction, this would happen again and go on and on like that until you know eventually your kernel is going to switch itself into user mode and then Everything runs the exact same But before that if you execute a kernel mode instruction, you're gonna have to trap and emulate it so Funnily enough that seems like it would work, but it doesn't always work So some CPU architectures, they weren't designed with virtual machines in mind, especially x86 So this would work if there are a clear subset of instructions that only work in kernel mode And not in user mode. So if you tried to execute them, you would get a trap. Well on x86 They didn't believe in this So for x86, there are some instructions that behave completely differently Depending on the CPU mode. So the same instruction if the CPU mode is in kernel mode It will do something different than if that CPU instruction gets executed and it's in user mode So one example is the popf instruction and what that's supposed to do is load the flags register from the stack Well, depending on what mode you are in the flags register is different So if you run this in kernel mode Well, it's the kernel flag register and if you run this in user mode, then it is the user flag register So that was a good idea in the 70s, but kind of makes creating a hypervisor kind of a pain in the ass in you know today's modern age, so Again, this doesn't generate a trap. So we can't do trap and emulate and If our kernel is expecting it to behave as a kernel mode version if we just blindly executed it When your guest kernel thought it was in kernel mode and it behaves as user mode It's not going to behave as you expect So What you have to do with these so these instructions are given the name special instructions that behave differently in both modes And they need a different approach So what they need is something called binary translation so if the guest is in You know if the guest thinks it's virtual CPU is in user mode You can just run the instructions natively because there's a match The virtual machine thinks it's in user mode and the actual process running is in user mode So we can go ahead just execute instructions blindly because it's what we expect So the difference comes in when you expect it to be in kernel mode. So If it's a special instruction, it needs to be translated into instructions that have the same effect and these regular instructions we can run natively So it'd be the same idea where you simulate it, but instead of Relying on a trap to no one to simulate it you have to do binary translation And what that means is when it's executing you're actually inspecting the instruction before it actually executes So you would have to inspect all the instructions if that virtual CPU thinks it's in kernel mode See if this instruction is a special instruction And if it is then you have to simulate it at that point So you would know this so the kernel is going to use an instruction to switch from user mode to kernel mode So you can capture that because that's a privilege instruction So you can handle that with trap and emulate and then you would know your virtual CPU is supposed to be in kernel mode and then you can enable this Binary translation so instead of executing the instructions that should be running in kernel mode directly you inspect them Check if they're in special instruction, and if they are then you Simulate it and then carry on So this is going to cause things to be Very very slow so this is what you have to do and because you're inspecting every instruction before you execute it It's just going to lead you to performance penalties and it's going to be quite slow But in practice this actually works kind of okay because typically the kernel Staves out of the way and doesn't execute as much. Hopefully your user processes are doing more work than the kernel Otherwise, you know the kernel is not really helping you out. It's just kind of heating up your computer and wasting You know wasting all your power So this is what again it looks like visually so If your guest is running and it's supposed to be in kernel mode Then you have to read every single instruction before it executes it scan to see if it's one of these special Instructions that behave differently and if it is a special instruction Then you translate it you simulate it and then update the virtual CPU and just return and keep On executing the next instruction and hopefully it's not one of these special instructions Then you can just execute natively or otherwise It's you know not a special instruction and we can do this trap and emulate thing so These are kind of slow. So that is why there's special hardware support for these hypervisors So in 2005 Intel introduced something called its virtualization as something called VTX and AMD did it in 2006 and they called it AMD V The annoying thing is that They use code names before that and if you want to enable this on your computer yourself You might not see these names as you know VTX and AMD V Even today so Intel originally it was called code name Vanderpool and then they published it as virtual machine Instructions or extensions VMX So if you want to enable this on your system and you go into your BIOS Then it might actually be called Vanderpool or VMX or VTX Just depending. They're all the same names for different things Depending on you know if it was R&D if you're talking to Intel or their marketing department And then AMD was the same thing they added code name Pacifica and then published it as secure virtual machine So if you have an AMD system, it might be called AMD V SVM or Pacifica, which is really really annoying But basically all these did is enable you to use that concept of ring negative one or hypervisor mode So what typically happens if you enable this on a modern operating system like windows or Linux or something like that? Well When you boot the host kernel, which would run at ring Zero is going to claim the hypervisor So it's going to claim it and actually know about Ring negative one and actually manage those instructions So it would manage the hypervisor and also manage itself So it's kind of a race. So the first the kernel that boots would go grab the hypervisor And now it's responsible for also managing the hypervisor and also all the stuff it normally does So that means your host kernel the one that grabs a hypervisor can manage isolation for guests and what hardware virtualizes So windows will do the same thing. So if you enable it windows would be the hypervisor and that's kind of how the WSL or Windows subsystem for Linux works. So Windows actually comes with Linux kernel now and just runs it essentially as a virtual machine for you so for So we have to schedule these things. So it's the same problem as with processes So if there's only one CPU on the physical machine, the guest doesn't need to know it You could just lie to the guests and tell it.  They're going to be the exact same policies We can do round robin. You could do like the completely fair scheduler. You can do whatever you want. So otherwise Essentially everything we know already transfers over to that so Like with schedulers, we could do the same thing one approach would just be CPU assignment So there's more physical cores on the machine than all the virtual CPUs we just map them one-to-one and the host can continue just using the spare physical cores and That's a and then you don't even have to do contact switching You just give the virtual machine some CPU cores and then you just don't touch them anymore Otherwise if you need to share things get more complicated and something there's something called over committing where there are You don't have enough resources to go around So at equal numbers, you can still map, you know, virtual CPU to physical CPU one-to-one As long as the hypervisor threads don't run that often so they would you know context switch away But typically the hypervisor doesn't need to do that much And then you just use the same old scheduling algorithms So it kind of causes some other additional problems So if the guest operating system sometimes it's going to run too Unpredictably for like soft real-time tasks Because normally when you run your or operating system or kernel it has access to the physical hardware and it manages everything So it can make argues of arguments about timing and all that stuff Well now if you are running it as a virtual machine You now don't have control over how long you have hardware for the hypervisor actually has control over it So if you run something that would normally make all of your you know deadlines on a normal machine That's running just straight on the hardware Well when you move to virtual machine You might miss those deadlines now because the hypervisor could context switch your kernel in and out and It could not actually execute for the full time even though in the kernel. It just thinks it's executing the whole time So like yeah, if there was just round robin where each time slice was 10 milliseconds The guest would not have a consistent time slice of 10 milliseconds because any time it gets context switch Context switch is going to take longer than that. So your Your time slices that were consistent running on real hardware are now not going to be consistent because You're just a guest and you get context switch at will So this in this case virtualization does cause different observable behavior, which is not something you want So if you are super super sensitive to timing you still probably want to do something like actually run on the hardware where you have more control and Then this is where we get into virtual Management because it also gets a lot more complex. So remember Virtual memory allows each process to think it has the entire address space but now we have to Do one additional lie because the guest kernel Thinks it's managing the entire physical address space But now we have to virtualize that too because that is now a lie So we want every kernel to think it has access to all the memory So we need to virtualize the memory for the kernel as well So this problem is also even worse if memory is over committed So that means all of the virtual machines use more memory together than there is on that machine And then the hypervisor has to implement something like paging or what have you like the page replacement stuff So if you're doing that you have to use something called a nested page table And that enables virtual memory for guest kernels. So again, the guest thinks it controls all the physical memory It keeps on doing What it was doing before so it would manage all of its page tables One for each process and then its own page table for when it when it executes in kernel mode So if you don't do anything the hypervisor is going to maintain a nested page table that does the re translation for the guest So it just waits for the guest to spit out a Virtual address and then it's going to re translate to that what it thinks is a physical address It's actually now a virtual address Then the hypervisor is going to translate that virtual address to physical address So that's going to be much much slower So you can create something called a nested page table which Will make the memory controller actually use the guest kernels page tables as part of it So you don't have to do this two-step translation process You can just do an additional hop and that way it's much much faster. Most of the speed up from using you know hardware supported hypervisors as opposed to like a type 2 hypervisor is because virtual memory Translation is going to be a hell of a lot faster If you can actually just nest the page tables because you're getting rid of one whole One whole path of translation. So you're just nesting them together And then if it's over committed the hypervisor can provide something called double paging and That means the hypervisor is going to have its own page replacement algorithm And then the guests Which might not be the greatest idea because the guest might actually know it's physical It's memory access patterns better and do a better job than just a generalized type advisor So you might not even want that to happen and that Comes with more performance stuff where you actually care things get a lot more hairy because it's a lot more complicated So there's still more similarities with just normal kernels So you're still running the same physical hardware. There's still still some pages Well, if you are running say you're running three copies of the exact same linux kernel. Well, I could Ideally I would want the same thing as if I'm running multiple copies of the c library for processes All my processes can just share the same library. So you can do the same thing for virtual machines So similar to copyright on pages, you just want to share any memory pages that are read only So this time we want to share them between virtual machines and step processes so The hypervisor has to do a bit more work to detect if pages are actually shared between virtual machines So one thing it can do is scan all of the pages and then hash the contents of the pages And then if two hashes of any pages are the same between virtual machines Well, if two hashes are the exact same, it doesn't mean the contents of the page are same. They mean they could be the same So if the hashes line up, then they would check byte for byte if they're exactly the same And then if they're the same then the hypervisor would actually share that page between two different guests so Again as long as they're both reading then we can actually share that memory and We get a nice benefit where you know everything just shares But if one of the guests tries to write to one of those pages Then we do the exact same thing and we do our copy on write optimization as before And otherwise nothing changes. So this is a lot of rehashing all of our ideas we already know and all of the tricks we already do For operating systems and just extending it so we virtualize an entire machine now Other thing the hypervisor could provide is virtualize i o devices So hypervisor can choose to just multiplex all one device to multiple virtual machines So for example like a network card Each virtual machine can think it has its own network card And then there's only one physical network card on the device. So they all just kind of share that one and the hypervisor manages that but For some applications like I don't know anything GPU sensitive the hypervisor could do something else and actually map The physical device to exactly one virtual machine so that that virtual machine Actually has exclusive access to the device But the hypervisor still manages it and makes sure that you know, nothing goes bad so There's a hardware solution to this To remove the hypervisor during runtime. So you just give it Give the raw hardware directly to a virtual machine and that's something called i o mmu So that would be something like hey if I want to I don't know virtualize a game or something like that Well, it's going to be really really slow if everything is being virtualized on the same GPU It's better to just give like windows the GPU and then it can run It actually gets physical access to the GPU and can run at actually native speed So the hypervisor would map that to a to a virtual machine and it would get exclusive ownership over it And the VM actually controls the physical device as if it just booted up not as a virtual machine So that again gets your GPU working at pretty much native speeds in virtual machines So you can actually use virtual machines for like gaming or machine learning or whatever now because of this i o mmu thing and then The final piece of the puzzle is virtual machines that boot off a virtualized disk So we already had virtual we had like virtual virtual memory virtual CPUs and now there's a virtualized disk So when you boot a virtual machine, it will just boot off a virtualized disk And all you do is create a disk image that has all the contents that would otherwise be on a physical disk Except it's just now a file So you would have some format where it specifies the partitions each partition has a file system Which would be like something like fat like we saw before or another file system that actually uses inodes And then Usually it's just one big file But there's some formats that allow you to split it up or kind of compress it in other ways But according to the guest kernel, it just sees it as a normal disk that it has full control over But on your machine, it's actually just one big file So and that's all you need for a virtual machine. Yep the disk So the disk is just yeah Yeah, so like if you go ahead and you modify your virtual machine you write some files on it It would write to that virtualized disk So you could just transfer that virtualized disk and boot it up somewhere else if you want to Because it's all the contents of the file system It's literally that Yeah, so Well, well, it's still going to consume space because it's going to be living on your hard drive anyways It just looks like a big file. You don't get space for free It's a good try though But like For all the lectures all the examples I ran. Hey, they were running in a virtual machine Because they were linux.  If it dies.  Yeah Yep Yeah, so that's what I did in other offerings of this course so The first lab was write a linux kernel module Well, no one's going to let you you know No university is going to let you just insert some random kernel code into their kernel that would be insane You probably don't want to brick your own system Since you're learning So what I did in the lab and made sure and that's another reason to use virtual machines to make sure that Everyone's consistent.  Yeah yep Yeah, so the question is can I run a virtual machine inside of a virtual machine? So Your first virtual machine If you want to be really fast it wants that hardware support So it has to be running as a hypervisor like that type one thing But if you ran a virtual machine in a virtual machine You could run it as type two because it just runs as a normal process And then inside of that you could run another type two and then another type two another type two So you can run virtual machines as much as you want. They're just going to get slower because there's more translation steps So like for Some of the lab stuff where i'm testing other stuff that's running on risk five Well, i'm using my mac to virtualize linux and then linux is Translating it to risk five and virtualizing that So i'm like three layers deep in virtualization But yeah, so for this all you need is a disk image for a virtual machine makes it really easy to move um, so what I provide before was an OVA file and that is A whole virtual machine package. So that will give you like a disk image and then some just general guest settings So like the amount of memory this virtual machine should have Uh, how many cpu's you give it and so on and things like that But otherwise if you want to set all those settings yourself I could just give you a disk image and say go ahead go for it. So So that's one thing that makes virtual machines cool so another reason you might use virtual machines aside from Virtualizing a whole machine is maybe you just want to use them just to isolate an application So way back in lecture 13. We remember some problems. We had with the dynamic library So if someone is very bad at writing dynamic libraries and doesn't follow good versioning practices and you know break stuff all the time Well, if I updated that library Maybe some other applications are updated to go against the new library and they would work But it would break half of my other applications So actually doing all these updates is a pain in the butt So if you wanted to make sure that everything was nice and consistent and nice and working you could just Package your application as a virtual machine So it comes with all of its libraries that it needs And you can just run it Within the virtual machine and it's going to use its own version of the library Which would hopefully be tested with it and it works So now if you update the library on your system, it's not going to affect the virtual machine You also might want this to you know, if you're doing stuff in production You don't want you want a nice consistent environment and virtual machines also give you a nice consistent environment And if you need to boot up more instances of your application Well, you just transfer the disk image over and just boot it up and that's it so that Way of giving an application just its own virtual machine Is a gives you some nice benefits, but it's also kind of slow Well, not kind of slow kind of wasteful Because with every single application because it's a full virtual machine You're going to need to package a kernel with it So if your kernel is you know, like 700 megabytes and your application is like Two kilobytes. Well, your application is not going to represent very much of that disk image So That's exactly what something like docker does So docker is a container and it aims to be that same goal of having things nice and fast Or sorry nice and isolated where you can package everything together But the only difference with docker is It gives you the same benefits as having it as a virtual machine, but you don't package a kernel with it. So docker Uses your same kernel and that's why docker only supports the linux kernel So if you run docker on mac, well, what's going to happen is It's going to virtualize the linux kernel and then run all of your docker containers on that kernel and same with windows and if you're what part of the linux, you know the linux Whatever you want to name yourself. You can just use your same kernel directly so as part of the Kernel like if we are running it as a virtual machine the hypervisor can set limits on CPU time memory network bandwidth, etc But the linux kernel supports all of that without virtualization. So you can actually For each individual process you can set limits on all that stuff you want as well So in linux, they're called control groups or c groups you might see and they support these features but for normal processes so You can also share other resources like files on the system, etc or even inter process communication And containers just behave pretty much exactly They're trying to give you the nice benefits of having a full virtual machine But instead of each having its own kernel, they share the same kernel but get all the same benefits So virtual machines virtualize a physical machine oddly enough So they allow multiple operating systems to share the same hardware They provide isolation and they use a hypervisor and the hypervisor is the thing that manages virtual machines and allocates resources So we saw two different types of hypervisors type two are slower because they either have to Handle the instruction specially so either use trap and emulate or binary translation While type one hypervisors are supported by hardware They can use something like IOMMU to speed up hard speed up devices But hypervisors might overcommit on resource And resources and need to physically move virtual machines But thankfully that's easy You can even transfer a virtual machine as it's running to a different physical machine without the user even knowing You can even do it while they're connected through ssh So one command might be on one machine and one the other command might be on a completely different machine And then containers are Supposed to have all the benefits of virtual machines without the overhead because they share the kernel So that is it. So just remember pulling for you We're all in this together


With the great resignation, there is now more opportunity than ever for you to land your dream job or upgrade the job you already have. Companies are panicking and trying to get people to come back to work as they realize that their workers are no longer willing to work in toxic job environments for low pay. So this is a huge opportunity for you to upgrade your pay, work situation or lifestyle. But there's a problem.  And it's really important that you learn how to recognize these types of companies and avoid them if possible. Because if you don't, you'll likely make less money, you'll have less opportunity, you're not gonna enjoy your job and therefore it's gonna make you less happy in general. No God, please no, no. So in this video, I'm gonna show you how to recognize the 10 most important red flags for jobs and job interviews. And this is coming from someone who's done a lot of interviews and I've also interviewed a lot of people as well. So I've been on both sides of the table. So if you appreciate my insight and my hard work here, go ahead, gently tap that like button and let's get into it. All right, so number one on the list and this is something you can do before you even apply to the job itself is to check to see if the company or the industry the company is in is struggling. Now, I don't wanna come across here the wrong way. There's many examples of companies who are in struggling industries that do a great job. They treat their employees well and they give them lots of opportunity. And these small companies might be struggling to get a piece of the market share but they're doing everything right. What these people don't understand is that it's not about the size of the office, it is about the size of the brains of the people in that office. And if you are loyal to the company, maybe you will be rewarded in the long run. You know, there's lots of stories out there of janitors at Microsoft, for instance, who ended up becoming millionaires. Okay, so those are exceptions and that's not what I'm talking about here. What I'm talking about is usually gonna be more of an established company that's really struggling to adjust to the current market conditions and they've shown this over time, right? So these are companies that have consistently shown that they're not able to do well and a lot of the time they are in industries that are dying. And in many cases, you'll find that the reason they're struggling so much is because for decades they've had the strategy of doing the bare minimum for their employees. So things like not paying their employees well, not treating them well, not investing in the training of their employees. And this strategy might result in more profit in the short term but long term it's going to hurt the company. And what I'm really referring to here is a lack of opportunity. Is there only one computer? Yes, yes, yes. So when it comes to industries, think about them almost like a pie. If the industry is growing really fast, the pie itself is getting bigger. And when new companies or people come into the industry, there's plenty of pie to go around. There's lots of opportunity. This tends to lead to more positive and collaborative environments. Whereas if you're an industry where the pie either isn't growing or even worse, it's shrinking, that's gonna lead to a very competitive environment.  And there's this old saying of show me the incentive and I can usually predict the outcome and that holds true here. Now of course, there are always exceptions to this rule. There are companies that are in struggling industries that still do an amazing job of treating their employees well. And actually long term, that's probably gonna be the best strategy. But generally speaking, if you're in a struggling industry, this is gonna be the case. It's gonna be extremely competitive. There's not gonna be a lot of opportunity. So it's very easy to look up information online about different industries and how they're doing. You can also break it down even further and look it up in terms of different types of careers. So for instance, all healthcare occupations are growing at 16% on average according to BLS, which is much higher than the average of around 4%. And I believe that's actually the highest out of any type of occupation. If you look at specific careers on BLS, you can see nurse practitioners have a job outlook over the next 10 years of about 45% growth, which is way faster than average. That's like 10 times more than usual. And all public companies have to release financial information online. You can always go check those out. But if you don't wanna learn to read financial statements, I think a really easy way to look at the health of a company is to just look at their stock price. So for instance, Google stock has gone up consistently over the last five years and right-aid stock on the other hand has gone down consistently over the last five years. Now, unfortunately, it's a little bit more difficult to evaluate a private company because they don't have to release that financial information. So in that case, you would wanna maybe look at the industry they're in and look at their competitors to kind of have a ballpark estimate of how the company is doing. Now, keep in mind, these are just red flags. So if a company has just like one or two of these, it might not be a big deal at all. But if they have a bunch of these, that could be a huge sign. And get out of here. Treat these red flags just as an indicator to maybe look a little bit further into something if you notice any of them. All right, so number two is gonna be a huge red flag. And this is where you either have to pay to start or do free work. Now, if you have to pay to apply to a company or pay to get started with a company, you might be dealing with what's known as an MLM or a multi-level marketing company. And you should run the other way. MLMs are pretty much always a scam for everyone except for the people at the very top. And it's just really sketchy in general for a company to ask you to pay to apply to them because they could be making a ton of money just off of the applications alone. So even if they aren't an MLM, this is a huge red flag in my opinion. Now, other companies might ask you to do free work for them as part of the interview process. So for instance, if you're a designer, they might ask you to draft up some designs for their company. And these designs are very difficult. They're probably gonna take you several days, maybe even a week to make. And this is also a big red flag because chances are they're just gonna use your design and the designs from hundreds of other people who are applying to the job and then not have to hire another designer. So they're basically getting free work in this case. That's not fair. Now, there's one semi-exception to this, still a little bit sketchy in my opinion, but unpaid internships. Most of the time, you really wanna try to get a paid internship even if it pays you minimum wage. And many companies that offer a lot of unpaid internships are relatively predatory. And again, they're just trying to get free work out of people. And it can be a sign that the company has the philosophy that they are trying to extract as much value out of people while giving as little as possible. And you really don't wanna enter into a relationship with people who are like that, whether it's a company or someone in your life, a friendship, et cetera. Another example of working for free is when a company says they're gonna pay you from nine to five and then they expect you to stay until eight o'clock or nine o'clock that night for free. So if the company gives you any indication that they do that, for instance, if they say, oh yeah, you know, it's nine to five, but most people decide to stay until 10 o'clock. Ah! Ah! Ah! Trust me, nobody is gonna decide to stay at their work unpaid until 10 o'clock. That's something where if you don't stay, you're magically gonna get fired, right? So people have a fear that they're gonna get fired and so they stay out of fear. And you'll notice with most of these examples, it's a one-way street where one party is getting almost all of the value and this is almost never gonna work in the long run. Healthy work environments are where both sides benefit from the relationship. The number three red flag to watch out for is bad vibes from the employees or the person who interviews you.  Hey, hey, hey, something about that seems inappropriate. So this one is a little bit hard to describe and obviously some people are better at picking up on vibes than other people, but if you're thinking about applying to a job, you go to the job interview and your interviewer is a total jerk, that's a really bad sign. Even before the interview, if the receptionist is a jerk, that's a bad sign as well. And honestly, I think it's a pretty good idea just to go there as a customer and see how people interact with you. You'll be surprised how easy it is to pick up on the vibes if it's a toxic work environment or people are expected to do way more work than they can. If they're really rude to customers that tells you something, some other signs are if they seem really frantic or busy or if they seem really negative or just unhappy or stressed in general, or in some cases they might straight up tell you that they don't like the company. If you ask them, hey, how do you feel about your job? And I hate everything. Or even if you just pass some employees in the hallway, they don't make eye contact with you, smile or even acknowledge you at all, that kind of gives you a sense of the vibe of the company. Another huge red flag is if your interviewer makes negative comments about past employees. That is a huge red flag and that shows that it's probably going to be a toxic workplace because even if they did have a really bad past employee, totally possible, it's so inappropriate to bring that up in an interview. And then lastly, just pay attention to your gut feeling. Your instinct is something that kind of got your ancestors through much harder times than now. They basically survived evolution because of their instincts. So it's definitely something you shouldn't ignore. All right, number four is the job description is nothing like they describe in the interview.   So if you look at the job description and you see that it does require you to have certain skills and then you go to the interview and they tell you that you have to have all these different skill sets, that is a bad sign. Now, this actually can be somewhat normal at smaller companies and startups. And the truth is you kind of just have to accept this. There are many different pros of working at a startup but that is definitely one of the cons. But at a normal company, if they're trying to do this, what it probably means is they're trying to get you to do a high paying job for a low salary or they're trying to get you to do multiple different jobs for the pay of one. Another thing they might do is they originally advertised that the job was say $40 an hour. And then when you go to the interview, they say, oh, it's actually $30 an hour.  So any type of bait and switch deviations that you see like that are huge, huge red flags. And that kind of leads into the next point which is low balling you for the position and the amount of work. So for this entry level position, all you need is a four year degree, five years of experience. You must be fluent in three different languages. You must work evening, weekends, holidays, leap years, et cetera. You must be willing to travel and relocate. And you must complete a large test project that will take you a week before you even know if you have the chance to interview. Oh, and you also must be willing to sacrifice your first-born child. And the starting pay is $12 per hour, part time, no benefits. Sound good?  So a lot of companies try to do this thing where they will combine different jobs and then pretend like it's one position.  And some companies will try to low ball you hoping that you're in a desperate situation and you'll just accept the offer. And again, this is a predatory sign because it's a one-way street, one party is getting much more value than the other is. And it's a sign that they don't really want to have a long-term relationship with you. They want to extract as much value out of you as they can for a short period of time and then you're probably going to move on. So chances are they don't have a very healthy work culture and their employees are probably not very happy. And companies that low ball workers and don't treat them well tend to have a very high turnover rate. And so they don't expect you to stay with them for very long and so they're just going to try to get everything out of you that they can. Number six on the list is going to be asking uncomfortable or in some cases outright illegal questions. It was a setup. Here in the U.S. age, race, religion, gender, disability, pregnancy status are all illegal questions that companies should not ask you. And I think most people are aware of this but there's some questions that technically aren't illegal or they're legal in some states and illegal in others. So one question that is legal in some states not legal in others is if they ask you how much you're making at your current job. Even if it's legal in your state this is an extremely uncomfortable question and it's honestly pretty rude to ask. Another bad sign is if the interviewer asks you questions that insinuate they expect you to work for free or work during your time off or be on call. Again, people even if they enjoy the job are not going to want to work for free. They're going to want to go home to their families. They're going to want to have fun and rest. And there's many different other examples but basically if you feel like you're being pressured to agree to something during the interview that you weren't aware of, that can be a bad sign. All right, number seven on the list the hiring process is too fast or too slow. If a job hires you right away and it only takes a day for you to get started that's a bad sign. Usually that means that they have a high turnover rate and we just talked about that, not a good sign. On the flip side, if your job takes multiple months to get you through the hiring process this can also be a really bad sign as well. It could mean that they actually don't need anybody for the position and they're just keeping people on the back burner in case someone quits or it could mean that they're just incredibly disorganized and getting things done inside of the company is a bureaucratic nightmare. Now according to glassdoor.com the average hiring process in the United States takes about 23.8 days. But again, there's always exceptions. For instance, government jobs do tend to take several months before you can get hired because they have to do an extensive background check on you. And there are certain jobs that have a really long interview process like professor. But yeah, generally speaking if either of these things are true it does tend to be a bad sign and it's something to look out for. Number eight on the list is going to be corporate buzzword overload and cult-like behavior. Look, I'm all about loyalty. In fact, I feel like part of what I'm being paid for here is my loyalty. Now if you have found this strategic presentation to have met your KPIs I propose that we effectively synergize by circling back around and merging with the like and subscribe buttons below. Now all joking aside I do have to be careful with this one because many corporations do use certain buzzwords and acronyms in order to communicate their corporate philosophy and they really want to make their philosophy and mission very clear to their employees. So a small amount of acronyms and buzzwords is not necessarily a bad thing because that's going to help them to create a positive work culture and get everyone on the same page. But if a company goes overboard on the buzzwords to the point where it feels like a cult that can be a bad sign. So if you get a culty feeling from the company in general like they're trying a little bit too hard to force positivity. One, two, three, smile. Try to smile. You result a lot today everybody. Think happy thoughts. Or they try too hard to make it seem like they work hard, play hard and they're one big family. What that really means is you're probably going to get overworked and underpaid and you better be happy about it. Also, if they imply that you need to work nights and weekends and always be on call that's a pretty bad sign as well. Now my personal philosophy about work is when I'm at work, I work really hard and when I'm off work, I do whatever I want. I would never personally be okay with constantly being pinged about work related stuff on my time off but I know there are exceptions to that like high level management positions, executive CEOs, et cetera. So if you're going for a position like that you kind of have to expect it. But if they're expecting people who are in like lower or mid-level positions to be like that where they're constantly getting pinged when they're off work, that is a horrible sign. To me, that's kind of like being a business owner and working as hard as one without getting paid the same way that they would. And one of the big pluses of being an employee and just getting a nice stable steady job is the fact that you do have that really nice work-life balance. Number nine on the list is when interviewers give you bad answers to questions. Usually at the end of an interview the interviewer is gonna turn things around and let you ask them questions. Now you should always have a few questions ready for them, of course, because it shows that you're interested in them and the company and you did your homework. If the interviewer seems annoyed by this that's a bad sign. If they seem like they can't answer basic questions that's a bad sign as well. So for instance, if you ask them what the training and onboarding process is like and they can't give you a good answer that's a really bad sign. In a company that's organized, that has a good work culture, the person interviewing you should absolutely know what the training and onboarding process is like. What that probably means is there pretty much isn't any training process and you're just gonna get thrown into the fire. Now if you ask them what challenges they've commonly seen with people who are in your position and they tell you that turnover, job satisfaction, stress, salary, et cetera were a big issue, that is also a bad sign. Number 10 on the list is going to be one that you can actually check before you do any of this as well and that is going to be low employee satisfaction levels. So there are many websites out there that will actually allow employees to rate how satisfied they were with a certain employer and these do tend to be pretty accurate especially at large companies. And some of these websites will even let you see how happy people were in certain careers at different companies as well. So very easy to find these, glassdoor.com does this. I think indeed.com does this as well. The way I find it is I just actually type it into Google. So for instance, you could type in glassdoor Google software developer and the first link will probably be the right one. Now again, at smaller or private companies this can be a little more difficult. One thing you can do is type in a Google search for company name and then defendant or company name and plaintiff. And if you see that the company has been involved in a lot of different lawsuits especially if it's with previous employees that can be a bad sign. Although to be fair, sometimes there are legitimate reasons for this so take it with a grain of salt. All right, so I do have a quick present for you for making it until the end of the video. I put together five steps to avoid toxic companies and this is gonna be a step-by-step process that you should go through when evaluating a company and the first step is the one you should do first and then the second and the third and so on. And this is just gonna help you to avoid a lot of different toxic companies out there. So you can check that out at the bottom of the pinned comment down below. Let me know if I forget to post it. Also check out this video I did right here on the six companies with the best benefits. If you haven't done it already, go ahead, gently tap that like button, hit the subscribe button, ring the notification bell and comment down below any thoughts, comments, criticisms, et cetera that you have on the video and I will see you next time.


Hi everyone, Joe for Jaspy's Case Breaks dot com with our last filler to unlock that mystery crate But first let's do the pack then we'll randomize everybody's names and one lucky person. We'll get into This mystery crate right here coming up in the next video very big thank you to this group for making it happen Appreciate you. Let's do the break first all 32 teams are in let's roll it randomize it three and a three six the hard way one two three four five six for names and teams And then three and a three six the hard way for the teams two three four five and six We've got the hawks of the seed down to the saints All right, so here's the first half of the list right there And there's the second half of the list right over here new trade windows Let's just print it out rip open the pack. There could be some surprises in there But the big hit in this break would be mystery crate spot We've got silver we've got charlie jones green kenneth walker Wagner smith Kirk and a brice young prismatic. That's not bad It's going to be for joe loson and carolina panthers hopefully new staff and all that Unlock his uh his potential be good for the hobby all right now Here's the big moment though Who's going to win that final mystery crate spot? In this last filler so let's gather everybody's names one through 32 new dice new list Just one winner name on top after four and a five nine times fingers crossed good luck one two three four five six seven eight and ninth and final time after nine drum roll drum roll Jalen very close just not quiet after nine But thank you to you and everyone for giving this a shot But there can be only one winner and that's going to be That's going to be tim Congrats tim You're in that mystery crate break.  We'll see you in the next video for that jasmiescasewrakes.com


The central library is calling this new activity Litfest, a literary festival held in observance of Nobel Laureate Week, poetry, song, drama, the spoken word, and dub poetry were among the areas of the arts showcased at the inaugural event, which organizers say is a spin-off of the central library's lunchtime poetry sessions.  You've got to be, you've got to be bad, you've got to be bold, you've got to be whiter. You've got to be hot, you've got to be tough, you've got to be stronger. The director of library services, Sally Roseman, is heartened by the response to the event and says the activity will be held annually to celebrate the arts and the achievements of the island's two Nobel Laureates. This activity concentrates on highlighting the talents that exist amongst us through song, poetry, recital, and the creative and performing arts. Organizers say local entrepreneurs invited to the lunchtime activity are all artists in their own right. Member of the Litfest Organizing Committee, Gyan Shan Bremen, says showcasing the products at the event as a side attraction helps promote the items and give the small businesses some much-needed exposure. I think it lends to the ambiance of the whole affair. It is not just people coming in and seeing and buying. They come for entertainment also, so the fusion of it too is awesome. The central library's literary festival, known as Litfest, was held under the theme of the Nobel Laureate Festival for 2023, celebrating excellence, consolidating our legacy. From the Communications Unit of the Ministry of Education, Sustainable Development, Innovation, Science, Technology, and Vocational Training, I am Chris Saty, report.


In this video we're going to be looking at how we write some equations, we construct models to represent reactions of saturated hydrocarbons when substituted with halogens. So a couple of differences. Firstly, we're going to use some models to help us do this. We have to make sure that we can write the equations and we also want to look at our saturated hydrocarbons in a substitution reaction. So a couple of differences between substitution reactions and the addition reactions we looked at in the previous video. You remember when we looked at addition reactions, we went from two reactants to one product and that's what we get for addition. When we look at a substitution reaction, however, what we are looking at in our substitution is two reactants going to two products. So this is a difference already. One of the simplest ways to do this is to look at the substitution reaction when we have a halogen reacting with a hydrocarbon, in this case a saturated hydrocarbon. So we're going to use ethane. We're going to add it to chlorine and we're going to see what we get. So here is ethane. Ethane has two carbons and six hydrogens and this particular molecule is an alkane because it has a single bond between the two carbons. If I was to add chlorine, a chlorine molecule Cl2 to my ethane, it's not going to add across a double bond. So I'm not going to be able to push both of these chlorine atoms into my ethane in the same way that I did with ethane. With ethane, the double bond breaks and both of the two chlorine atoms will add across the double bond. So I'll end up with just one product. In this case though, we have a substitution reaction. So what has to happen in order for me to get a chlorine into this structure is the chlorine must substitute for a hydrogen. Now unlike addition reactions, when that happens, we end up with two products. So we've started with two reactants and we've ended up with two products. So the two products are the halogenated alkane and the hydrogen halide. So let's have a look in this case. We would have chloroethane and hydrogen chloride. So let's write that equation down. Our product is going to be chloroethane, but we're also going to have hydrogen chloride, incidentally not hydrochloric acid, as a second product. So this is a little bit messy. Let's just have a quick look at the structural formula. H H H H H H H plus Cl2 is going to give us C C Cl H H H H H plus HCl. If we contract those a little bit further, you can see we've got C 2 H 6 plus Cl2 gives C 2 H 5 Cl plus HCl. So here are a range of different equations that we can write to represent the same process. Remember the keys to the substitution reactions are that we don't have a single product, but we have two products. Both of the carbonate, the chlorine atoms are not going into the organic structure. Only one of them is. And in order to do so, it has to push out a hydrogen in order to do that. We can have multiple steps in our substitution reactions. So we can substitute more hydrogens to increase this to a di-chloro or a trichloroethane. And again, we need to look at rules like Markovnikov's rule, which I very briefly mentioned in the addition reaction video, for where we already have one halogen present. So if we look at this molecule here, and we would then to add another chlorine molecule to it, what we would find is that the substitution would occur on the carbon that already has the chlorine, which is this one. So we would find that, say for example, this particular hydrogen would be the one that would be substituted with a chlorine in order to give us another molecule of hydrogen chloride. And so we would have a 1-1 di-chloroethane. This is another one of these areas where you want to have a look at a range of different types of examples in order to get some of these things set in your mind. So thanks for watching.


If the sexuality has to be what it's supposed to be, then it has to be experienced from all six layers of perception. That presentness is so important for a fulfilled sexuality because sexuality is not about pleasure, it's about communication. It's about heightened communication. That surrender to soul is what readies this system for surrender to the other.


We're going to transition into the read aloud. And if you look at your handout, this is kind of what we're looking for. This is just a suggestion or a model for you. As we read, your job is going to be to underline and annotate in the margins where you find evidence of Claudette or Mirabella or Jeanette either reaching or failing to reach stage four. And you're going to jot down the characteristic that you think the character shows or doesn't show in this first box. Then your text detail that supports that will go here and then a little analysis down at the bottom. So for example, if you come across a line that you feel shows Claudette lacks self-confidence, you're going to put this line from the epigraph in the first box, the text detail that supports it, along with paragraph number and page number. And then down here, your analysis. This suggests Claudette has not yet reached stage four because. And then your explanation with the connection to the epigraph.


Hi everyone, Joe for jaspyscasebrakes.com coming at you with 2019, 2020, upper deck, the Cup Hockey, six box. Pick your team number 17 from jaspyscasebrakes.com. There it is, 1920 edition. And took a little bit to get there, but we finally did it. So I appreciate everybody digging deep and not only buying teams straight up, which I appreciate. I appreciate people being involved in those RNBs, those random number blocks. They're in different videos there. So this is for, I actually wrote Anaheim, it's for Vancouver, but that's the number block for those teams for that break right there. The randomizer results are in a separate video. We'll set that over there. And this is an eight teamer. So it's a serial number break just for those teams and only for that picker team right there. Also in a separate video, maybe I'll put this one over here. Let's look a little room. And here's the case itself, good luck. Here we go, good luck, good luck, good luck. Are we getting close to hockey playoff season, ladies and gentlemen? Like the basketball and hockey seasons are almost somewhat similar length. Maybe hockey starts a little bit later. Who are the surprise teams this year in the playoffs? Here's Brock Besser for the Canucks. 200 out of 249, so that'll go to Vancouver is zero. Mike Tower, few weeks away says Jens. We got Noah Dobson for the Islanders. 216 out of 249. I know the Islanders have been playing some good hockey. That's part of the eight team number block. So we go by that digit right there. So that's six. So Islander six is gonna be for Shawn Matic. Three-color patch autograph, Andre Shvednikov. 14 out of 50. Carolina also part of the eight teamer. I remember folks, my hockey knowledge is not strong. I have to let me know if these are huge polls or not. So Carolina four, that'll be for Mike Tower. There's Ray Bork, all-time alum, part of him. 14 out of 25. That's William with the Bruins. We've got a triple relic right here for the Rangers. Artemi Pannerin, let's try these names here. Mika Zbenyad and Jacob Truba. 33 out of 33 cup trios for Anthony and the Rangers. And Cody Glass to 249. Vegas, that'll be for the eight team group. So that'll go to Vegas six. That'll be for Shawn, Shawn M. Corey saying it's gonna be interesting because all the teams, right, have played each other, played the same six, seven teams all year. And what they're finally going to start playing different teams now. That's gonna be maybe a little difficult for the people who like to invest in the fortunes of a team and an establishment that sets odds for that sort of thing. William thinks Minnesota has been a surprising team this year. Right, that's with the, with that Curell, kind of Curell, Curell, Curell guy. Who's the Curell guy? People say he's pretty good on Minnesota. I'm just parroting what people are saying out there in the world. William thinks Florida's a little surprising. Here's Ryan O'Reilly for the blues. I guess that's why they call it the blues. 64 out of 249, that's just for Kenneth in St. Louis. 217 out of 249, three color patch and autograph Max Verneau, Verneau. I'm gonna go with that. Verneau, I'm gonna call him Rook. Goes to Ottawa, Stephen Kay with the Senators. Rem Pitlick for Nashville's 22 out of 24. That's a nice looking patch in there. Eric Jay with the Predators. And we got Kirby Dock. Nice blue ink autograph there. I don't think that's number. That goes to number block. If it's a number block group, it'd be randomized to someone in that group. No, the Blackhawks were picked up straight up by Sean Maddock, Last Bot Mojo. One of his Last Bot Mojo teams. There's Joel Farrabee. 122 out of 249, two color patch and auto for the Fly Flyers Fly.  And there's, I know this guy, Connor McDavid, 249 Oilers. Travis with Edmonton. Do these non-rookier Connor McDavid, do they have value on the secondary market? All right, next box. The Reds Add Dodgers on in the background. We got Jack Eichel to 249 for Joseph and the Buffalo Sabres. Buffalo, Rem Pitlick. Again, 175 out of 249, Nashville, Eric. Eric Jay building his Pitlick PC. Splendor Rookie patching out Kirby Dock, 29 out of 36. What up Dock? It's gonna be for Sean in Chicago. This kind of town in Chicago is 27 out of 35. Rossmas, Osblind, three color patch and autograph. Buffalo, Joseph Falsetti with the Buffalo Bill, Buffalo Sabres, different kind of Buffalo. Out of 15, Quad Relic and autograph, 15 out of 15 for the Florida Panthers. Foundations Quad Relic and Auto, Sergei Bobroski. Sergei goes to, goes to Chris, Chris Lombardo with that. And the plate is autographed, Joel Esperance for Dallas.  Straight up, now tell me, are you really gonna love me forever? All aboard the Big Hit Express. Woo-hoo. All right, next box. We're about half, we are halfway through this break now. Interesting, so there's a, thanks William for looking that up. William saying, a $6.50 bid, currently on a McDavid bass, with another at a buy it now of 50 bucks. So, it's not bad, I'll take that. Non-rookier bass card out of the Cup Hockey. 40, 50 bucks maybe. Maybe that buy it now goes for maybe 25, 30 bucks. Best offer. Is that the best Paula Abdul song? Sorry, that bass card I dropped there. Cold-hearted snake's pretty good. It's the opposite track with MC Scat Cat classic. So many to choose from. Up, up, up, up, up, up, up, up, up, up, up, up, up. 67 out of 249. We got Jacob Truba for the Rangers. What instrument you play? The Truba, he says. Anthony with the Rangers. Nico Sturm, 172. Ooh, we got a dual auto coming up. This is awesome. I know these two guys. And that's something. If Joe knows these guys, all right. So, there's Nico Sturm for the Minnesota Wild, for Steve Locke, and we have a dual auto enshrinement dual, Jack Hughes, and his brother Quinn Hughes. Dual on-card autograph. And that is gonna be sad times. That's gonna be a randomizer between the New Jersey Devils and the Vancouver. No, they're both a number block team. Wow, so that goes to one person. No randomizer, it's off. That's 18. Am I seeing that right? Yep, 18 out of 25. There's the eight right there. No random, no random. And that's Bradley Z, who bought a spot straight up. Everyone, people love these guys, right? Nice, there's Trevor Moore. 162 out of 249. Toronto. It's gonna be for the eight team number block. That's on the other side of me right here. And that goes to two. Toronto two is for Oliver Soria. There you go, Oliver. We got Jimmy Schult for the Vegas Gold 979 out of 99. Vegas nine is gonna be Brian Heyman. And there's Kirby Dock. That's for Sean and the Blackhawks. No one thrilled about the Hughes dual auto, huh? Usually people are like, whoa, Jack is, guess not. People aren't into it. I thought it was cool. No one in the chat did. But you watching at home, you might think it's cool. William St. Jack has had a better sophomore season than Quinn, but Quinn had the better rookie, had a great rookie season. And you don't wanna have any fun promos in their hometowns for their hometown team. So if the Dodgers pitching staff gets 10 strikeouts, this is a new one for this year. You buy like a medium drink and you can win. You can get a free jumbo jack from Jack of the Box. Any fun promos? Your neck of the woods, 223, 248, baseball stadiums? For the Islanders, Billy Smith. That'll be for the eight teamer, number block. That goes to New York Islanders three, Jason Sieber. Adam Boquist, 151 to 249, that is. Chicago, that's for Sean who got the Chicago Blackhawk straight up. Yeah, it's a lot of jumbo jack so far this season, Oliver. Maybe Jack in the Box is. Also, Dodger Wynn gets you a free CBK, free CBK pizza? There's two out of 10, Elvis Mers Lincoln's. Rookie, auto and patch. I hear this guy's pretty good too. Columbus is a number block team. So Columbus two is gonna be for Oliver. There you go, Oliver. And we've got Julian Gauthier, 23 out of 35 for Carolina. That's also gonna go to the number block. Carolina three is for Jason Sieber. Chris Lombardo says that Fenway, every time the Red Sox win, they increase the price of Fenway Franks. All right, that's a good promo. Russ Barney saying if the Tigers score three runs, we get free Curly Fries Marbies. Curly Fries are pretty good at Arby's. 17 out of 33, Morgan Riley, trilaterals relic for Toronto. Toronto seven is over here. Toronto seven is for Joel. And we've got signature materials, 88 out of 99. Three color jersey and autograph Victor Arvidson for the Predators. And that's gonna be for Eric J. Got the pred straight up. A pound card to saying when the Warriors were bad, they used to have a thing when they scored over a hundred points, you guys would all get a taco. I think the Lakers had something similar recently. If they, I think if they held, maybe if they scored over a hundred, no. Or maybe if they kept the defense under a hundred, something like, or if they kept the opponent under a hundred points like that, there would always be we want taco chance. We want tacos. Boop, boop, boop, boop, boop. Similar promo in Portland for the Blazers, William says, but it was a chalupa. That's right. Oliver saying held opponents under a hundred points. The Lakers did that. Yeah, taco chance. So we want tacos was pretty much defense, defense. All right, last box. Good luck, everybody. Cup hockey, pick your team, 17. So far, so good. Jonathan Druin, 183 to 249. Montreal, Montreal three, that'll be for Brian. We got Rasmus Sandin, 163 out of 249. Yeah, Toronto Maple Leafs. Toronto three is Jason Sieber. There you go, Jason. Yeah, Kyle Palmieri, 41 out of 50. New Jersey, New Jersey's up here. New Jersey won, Russ with that one. And here's Quinn Hughes again, 67 out of 99. That goes to Jonathan in number seven. Nice. Lucky number seven. We got Cup Trios and they're all Kings. Blake Lizotte, Thomas Bjornfoot and Kale Clegg for the Kings, Sean Maddock, Last Bot Mojo, trio of Kings and the last card is gonna be signature materials, John Klingberg. That's 92 out of 99 for Dallas, Dallas star Steve. Right, there you go, Steve. And there you go, everybody. I'm Joe for jaspyscasebreaks.com and that was a very nice break. Six boxes of the good stuff, the Cup Hockey. Keep your eye out for more on jaspyscasebreaks.com. I'm Joe and I'll break some more with you next time. Bye bye.


The horse with the speed of light, a cloud of dust, and a hai haio silver! The Lone Ranger! General Mills, makers of Cheerios, the ready-to-eat oat cereal that gives you go-power, and Wheaties, the breakfast of champions, present by special recording, The Lone Ranger! Fullback Bobby is a boy of nine. He can really hit that line. He's the star because he knows! He's got go-power from Cheerios! Yes, he's got go-power! There he goes! He's feeling his Cheerios! Cheerios! Cheerios! Yes, it's a fact. Cheerios does give you real go-power. You see, Cheerios is made from oats, and every delicious spoonful of Cheerios and milk is real muscle-building food. Each spoonful contains vitamins, minerals, and proteins your body needs. Yes, the good things in a Cheerios breakfast do good things for your body. Help you have healthy nerves, good red blood, strong bones, and muscles. And Cheerios is so much fun to eat, with its distinctive O-shape and its wonderful toasted oat flavor. So tomorrow morning and every morning, start the day right with a Cheerios breakfast. Then you'll hear people say... He's feeling his Cheerios! With his faithful Indian companion title, the daring and resourceful mask rider of the plains led the fight for law and order in the early western United States. Nowhere in the pages of history can one find a greater champion of justice. Return with us now to those thrilling days of yesteryear. From out of the past come the thundering hoofbeats of the great horse Silver! The lone ranger rides again! Come on, silly! Let's go, big fella! Are you silly? Hooray! Several of the most important cattle trails in Texas led to the railroad shipping point known as Trail City. It was a turbulent town that attracted outlaws and gamblers as well as common. Tonto, the friend of the lone ranger, what supplies in Trail City? When he rejoined his mask friend in the camp outside of town, the Indian told about a man who frequented the Red Dog Cafe. Him? Gunman, Kimosabi. Everyone call him Sasparilla Kid. Does him drink only Sasparilla? Why did you call him a gunman, Tonto? For him wear two guns. People say him sit alone in cafe for past few days waiting for man him want to kill.  No. Oh, him young, good looking. Kimosabi, him doctor. How do you know he's a doctor? You see, we're in Thai horse at Hitch Rail. We tie scalp long side and take quick look in saddlebag. You certainly were curious. Oh, how did you find the saddlebag? No, you curious. Yeah, I admit it. Well, we find bag of doctor's tools and medicines and paper that say him finish medical school, niece. Did you see the man's name on it? Ah, it say James Hubbard. I wonder, Tonto, why a man who took the doctor's oath to save human life is prepared to turn killer. Me, wonder, same thing. Tonto, you said Dr. Hubbard spent the last few days in a cafe. Well, that's what me hear. You know if he's there evening. Huh? In there all time. From morning till cafe closed. All right, Tonto. We'll go there tonight. That evening, soon after dark, the lone ranger and Tonto started for town. Meanwhile, the red dog cafe was crowded with cowboys, whose herds had been brought to trail city for shipment by railroad. Young Dr. Hubbard sat alone at a table in the rear, a bottle of Sarsaparilla, the only soft drink of that time in front of him. His eyes were fixed on the bat wing doors at the street entrance, until an old man sweeping the floor came close to the table and said, Mr. I heard you've been asking about a man named John Sork. Yes, I have. Why? For five dollars, I'll tell you where he is. All right. Here's your money. Where is he? He's camped about a half mile east of town. He got there this afternoon and set up his tent. His tent? Yep, he's a preacher. Well, then he's the wrong man. The John Sork I'm waiting for is one of the toughest cattle burns in Texas. He makes his own laws and lives by the rope and gun. He should be here with a cattle herd in a few days. How long is it since you heard about him? About ten years. He's the same man. Sork used to be what you said, but for ten years now, he's been traveling around holding revival meetings near cow towns like this. His daughter travels with him. Her name is James. He set up a big tent and aims to start his revival meetings tomorrow night. He calls himself Brother John, and he preaches some powerful sermons against lynching and gun fighting. Brother John? I don't suppose he carries a gun anymore. Nope. He don't need a gun to defend himself. Nobody would shoot a sky pilot.  I heard you. Not even a hot-headed gun slicked like Lightning Joe Crane. Who's he? He's foreman of the box-hole outfit, which just bedded down and heard a cattle outside the town. Last year... What happened last year? Lightning Joe was in town during the cattle-loading season, and Brother John was here at the same time. Lightning Joe started raising the ruckus, and Brother John disarmed him and threw him out of the tent. Never, never in all my life did I see a man as howlin' mad as Lightning Joe. That preacher sure has nerve. No wonder.  You'd better get on with your sweeping. I want to thank you. Yeah, better get on with my sweeping. At that moment, the lone ranger and total drew rain and dismounted in the darkness behind the cafe. Near the closed back door, they found a window through which they could see the entire length of the big room. Toto indicated young Dr. Hubbard seated at his usual table near the window. I'd like to talk to him, Toto. I don't care, enter the cafe wearing a mask. Me go get him? Yeah, I was asking him to come here with you. You'd better use the front door. While Toto walked along the side of the building toward the front door, Lightning Joe Crane and his pal, Brazos, entered the cafe followed by the box-o-cowboys. Lightning Joe and Brazos strode to the rear of the room where the Sarsaparilla kids sat alone. They saw the chance to haze a tender foot, and Lightning Joe said, Well, an Easterner with two guns and a bottle of sarsaparilla. Ha, ha! Look here, you pilgrim, you know who I am. No. I'm Lightning Joe Crane, and I've plugged half a dozen men in my time. I'll take your word for it. Well, now, no one who drinks sarsaparilla has any business packing two guns.  Outstands for my guns are level with yours. You want them? Try to take them. Oh, big talk for a poor flusher. I don't like to be called names. Lightning Joe staggered back from the unexpected blow to his chin. He reached for a gun and shouted, I'll kill you for that! The doctor firing from the hip smashed Lightning Joe's half-drawn weapon. Then with his other gun covered Brazos. Please, mister. I don't shoot. Reach for a gun, you'll get the same as your pal. My answer is... Come on, boys, he's asking for trouble. The box-hole men hesitated when Dr. Hubbard waved his threatening gun.  Get him, boys! I'll shoot the first man who takes a step and draws a gun. Then someone threw a bottle. Like this! Hubbard dodged. His guns wavered. In that split second, Lightning Joe leaped at him. I'm got him! All right, I'm holding his arm so he can't shoot. Struggling to break away from Lightning Joe's bare-like grip. Dr. Hubbard dropped his guns. Lightning shouted, Brazos, use your gun to the club! Right off. Crack his skull. As Brazos lifted his weapon overhead, a gun barked.  Holding two guns, he said, Stand back, you men. All of you. He's mad. He smashed my gun. I said all of you, stand back. Tahoe, who had hurried from the front door, jabbed his gun into Lightning Joe's side. Don't! Get back. All right, all right. Doctor, you pick up guns. I've got them. He got your horse behind Bill's.  But who are you? We're friends, Hubbard. Trying to get you out of here alive. I'll get the three of you for this. Don't anyone move. I don't understand who you are. There's no time for questions. Go, Otato. Your horse, right here. There'll be a bullet for anyone who tries to follow us. I'll get going. Easy, steady, big club. Easy, big club. One, two. One, two. By the time Lightning Joe and Brazos opened the door, the lone ranger and his companions were out of sight beyond buildings. The three soon reached the mask man's camp in the woods, off of town. There, the lone ranger gave an adequate explanation for his mask and told how Otato had learned the doctor's identity. There's one question you haven't answered. Yes, what is it, Doctor? Why did you and Otato help me? You needed help. You might have been killed. Life is cheap in this part of the country. Yes, life may be cheap, but your medical training is priceless. The West needs you.  If I were to kill. Could you practice your profession after violating the doctor's oath by taking a human life? What makes you think I'd kill someone? The way you wear and handle your guns. Oh. Why not tell Otato and me the story? Well, I guess I owe you that much. It began 10 years ago. I was 15 years old. Living with my father was a poor homestead.  No, she'd been dead for about a year. Dad and I lived near a wealthy rancher who hated homesteadies. Some of his cattle were stolen, and on the basis of flimsy evidence, the rancher accused my father of being the thief. Because of his charges, Dad was lynched. I'm sorry. Later, the real thieves were caught. They confessed, and Dad was proven innocent. But that didn't bring him back. I swore then that I'd kill the rancher. Oh? Before I could carry out my vow, the sheriff with whom I lived after Dad's death sent me to a rich lawyer in East, a friend of Dad's who adopted me and sent me through school. Yeah? After finishing medical school, I came back to Texas to get him. I found he'd sold his ranch. I didn't know where to find him, so I came here to Trail City, figuring he'd be here with cattle for a shipment by railroad. 10 years is a long time, Doctor. The rancher may be dead. No, he's alive. His name is John Thorpe. You don't mean Brother John? Yes. I learned tonight that Thorpe had become a preacher. That he's near Trail City. I've heard that Brother John does lots of good preaching against violence.  I don't know. I'm going to talk to him. I think you should. I don't know. I'll go with you. You don't need to. I'll go with you, Doctor. Please, give me your gun. We'll continue our lone rink, your adventure in just a moment. All over the country, in every direction, how you, how you do it, is the question, and you want to have the happy people have to say, Keaton, oh, we descend, do, do, and okay, okay. And that's the truth. Take California champions, for instance.  And Duke Snyder, too, is a West Coast man, a fancy slugger, and the Wheaties fan who takes his bat and scares them all when he knocks the hide right off the ball.  Wheaties, breakfast of champions. Keep party to your Wheaties, and you'll be do, do, do, and okay. Okay. Now, to continue. Meanwhile, most of the box-o'-cow hands had left the red dog and returned to their camp. A few townsmen remained in the cafe, also lightning Joe Crane and his friend, Brazos. The two sat at a table examining guns they borrowed from a couple of the ranch hands. That makes me sore when I think of my favorite gun being smashed. We're both here to buy new ones, Joe. Masked man's bullets smashed mine. I'd like to put a bullet through his head, and that goes double for that sospirilla drink in Easterner. I wish I knew where to find him. Maybe the barkeeper knows where he's staying. Yeah. Or maybe the old sweeper over there knows. I'll ask him. Hey, whiskey. Hey, speaking to me. Yeah, come here a minute. Yes, sir? You're always around here. Probably hear a lot of talking. You know where we'll find that sospirilla kid. You might find him with Brother John. Yeah, Mr. Gunnham. Here's five dollars. That's so you forget you talked to him. Thanks.  Yes, sir. I sure will. That sospirilla kid's not the only one who'd like to shoot Brother John. Yeah, you've got a score to settle with him, Joe. The way he threw you out of his revival tent last year. And I haven't forgotten that. I'd like to... Brazos. I know how to square things with both the preacher and the kid. Oh. Catch them together. Shoot them both.  Come on. Let's go. Right. Meanwhile, Dr. Hubbard, alias the sospirilla kid, accompanied by the Lone Ranger and Toto, grew rain and dismounted, a short distance from the big revival tent on the outskirts of Trails City. The Lone Ranger glanced at the lighted tent, which glowed in the darkness. Then drew from his belt the guns he'd taken from the doctors. He handed them to Toto, saying, Put these into one of the doctors' saddlebags. Ah, me do it. Let me put them into my holsters. I'll not use them. So you think Brother John will be wearing a pair of guns? It's hardly likely. Then why should you? All right. Have it your way. We go to the tent now? Yes, Toto. The shadow girl and wall at the tent. Must be Jane. She's John Thorpe's daughter. Shall I go in first? Yes, go ahead, Doctor. I don't know. I'll be right behind you. We're not ready for... Where is Brother John? Oh, he's in our living quarters, beyond the partition at the other end of the tent. You don't remember me, do you, Jane? Remember you? No, I... That man behind you. Please don't be alarmed because of my mask. Toto and I are friends of Dr. Hubbard. Dr. Hubbard? Jim Hubbard? Yes, Jane. It's been ten years since we saw each other. Ten years since you swore to kill my father. And now you're here with a masked gunman and a savage Indian to carry out your vows. No, Miss Thorpe. Don't lie to me. Father and I know about you, Jim. We've heard about the way you practiced every day with your guns, and we knew why you did it. Jane, I admit I swore to avenge my dad and came from the east for that purpose. But when I got here, I learned that your father had become a preacher.  That's not true. I'll tell you why my father became a preacher. It was because he so bitterly repented the mistake he made, the mistake that made you an orc. He sold his ranch, his cattle, everything he owned, and he gave part of the money to charity. The rest he turned over to a lawyer in the east, a lawyer named Hawks. Hawks? The man who adopted me. Yes. Did you really believe he was a friend of your father? No, that's what you were supposed to think. But actually he was my dad's agent to raise you, to give you an education. I didn't know that. He kept dad advised. We knew how well you didn't school and how you were constantly practicing with guns. Jane, please believe me. I'm sorry. Oh, dad. Who are these men? This is James Hubbard, Dr. Hubbard. Jim, I'm glad to see you. Mr. Thorpe, brother John, I'm glad to see you. I've so much to say to you. Are these men your friends? Yes, this is Tondo and I don't know the mask man's name. I'm glad to meet your brother, John. He and Tondo saved my life and I'm glad to know you. You've done good work. So have you. Jane told me what you've done for me. I didn't even suspect that you'd spent all your money. I didn't do it for you, Jim. I did it for myself. Ten years ago I made a hideous mistake. I hope that by doing my best to make it a fusion, I might earn forgiveness. I've your hands, Ollie. Watch it. Keep them high. So they say, Tondo. Bronzo, swightling Joe. If anyone makes a move, I'll shoot the girl. This is luck, Joe. We'll get square with the mask man and the engine as well as the others. It's our night for revenge. Put down those guns.  Yeah, and I'm here to get square. Shoot any one of us and you'll both hang. Not a chance. Everyone in town will think the South Florida kid did this shooting with the help of his pals. Who? You. I have a gun. You will have when they find your body. It'll be the gun that shot that preacher in his door. You two think you'll get away with the murder of all five of us? Yeah. And we'll start with the men who wear guns. You and your engine pal. Bronzo, if you drill the engine, I'll take the mask man. Right. You scum! Yeah! That was an explosion of action when Joe and Bronzo tightened their trigger fingers. In that instant, the lone ranger and Totto gambling with their lives stuck low and charged. And in the same instant, brother John walks forward. The first shots went wild. But Joe and Bronzo still held their guns and struggled for the chance to use them. The young doctor joined the fight. And under his gun head, I'll do the rest.  You will not get paid on my wrist. Drop the gun or I'll break it. Bronzo dropped his gun, but lightning Joe fired once more. The preacher staggered back and fell as Totto finished the fight with a hard blow to Joe's jaw. Good work, Totto. They knocked one out. I've dropped my gun. Don't shoot. On your feet, Bronzo. You're through. My father's been shot. He's unconscious. Give me a gun.   While Totto and I tied these would-be murders. My surgical kit is in one of my saddle bags. I'll get it. It was about half an hour later when the doctor finished work on the wounded preacher and looked up. He saw Bronzo's and lightning Joe seated on the ground, tightly bound and guarded by the lone ranger and Totto. Jane, who had been kneeling in prayer, lifted her head when she heard. How about a doctor? Brother John will live. Thank heaven. And thank you, Jim. Dr. Hubbard. It was a difficult operation, well performed. You're the kind of doctor who's needed in the West. This is my country. I belong here. Here are your guns. I'll not leave them anymore. Only to help Totto guard these prisoners until the sheriff takes over. That's right. Are you sure my father'll be all right? Yes, Jane. He should regain consciousness very soon. The sheriff will be here soon. Good. Me, we... Adios. Goodbye.  We glad to help. Jim, who is the mass man? Jane, in his way, he's a combination of doctor, preacher and lawman. He fights to save men's lives, their souls, and their human rights. He's the Lone Ranger. The Lone Ranger, a copyrighted feature of the Lone Ranger Incorporated, is produced by Kendall Campbell Muir Incorporated. The part of the Lone Ranger is played by Brace Beamer, your announcer, Fred Boy. Listen to the Lone Ranger brought to you by special recording Mondays through Fridays at this same time.