My name is Diane Heeler. I'm the OpenShift Origin Community Manager at Red Hat and I'm really happy to be here at OpenStack. Once again, I've been coming since the days of Essex and I, a big fan of OpenStack. It's all the wonderful things all of you people do. My colleague here, Chris Alfonso, is so nicely down on his knees, going to play then a white, he's going to dance the slides for us. And then once we're done with the slides, we're going to make him stand up and do a really awesome demo of taking the OpenShift and deploying it on OpenStack with heat. So how many of you here have heard of OpenShift before? My work is done, I can go. Great. So I've been doing this talk and versions of it for the past three OpenStack summits. So that means we're doing something right. Next slide. So because you've heard of OpenShift and we are one of 100,000 open source projects at Red Hat Facts, then you know a little bit about our ethos at Red Hat about taking open source and making it work in the enterprise. And as you can see, we've created basically a wonderful opportunity to use a pure open source cloud. The guys from Centos are here with us. I didn't get time to update the Gloucester piece to add Seth in, but the Seth folks are here. Over, guys, we've got a lot of work going on in the JBOTS community, and we're here with the RDO team. We're really pleased to be included in this today's talk. But we're the people on the bottom of the little panda. We'll get to the next slide. This is the OpenShift Origin Project. OpenShift Upstream feeds OpenShift Online and OpenShift Enterprise. Enterprise is our on-premise offering. It is a platform as a service group, and it's right here on it. So it is the open source project.  We deploy OpenShift Enterprise. There's no switching between the code bases on online. It's been up and running for over 18 months now, live with over a million applications running on it. It is production ready. It is being used for enterprises. We have lots of customers. We have a few other cloud providers. GetUpCloud is doing a wonderful job down in Brazil, where I just came back from with this wonderful pool. And they have hosted public pause for the media enterprises down in Brazil. So I don't need to explain to you what infrastructure is. Services or pauses or sales, because you guys are the ones building it for us. So hit the next slide. But what I am going to say to you is that from a developer's perspective and from an end user's perspective, infrastructure really is not enough. What you're building here with OpenStack gives us all the cloud compute resources that we want on demand in an elastic and a wonderful way. And now in a wonderful open source way. Hit the next slide. It gives you basically the network, the storage, all the compute on demand. But basically what it's giving me is a server in the sky. Server in the cloud or server in some server farm. But as a developer or an ops person, you're still on the hook for configuring and managing and updating those servers or the environments that the applications are deployed on. But what platform as a service gives you is everything that application needs. The application and runtime environment. The entire lamp stack. Getting light lamp stacks. Makes that for you in... Bloody well, every configuration. And it basically gives you all of the tools to manage that infrastructure that is required for the application to run on the compute resources. Whether you're on top of OpenStack or bare metal or anybody else put out for the name. It really makes the cloud very useful for people. So the way that we kind of think about it is you code your app if you're a developer. Like me, if you're doing Python, you can pick on DJ, you can call me on Twitter and see how bad of a program I am. And you can take from GitHub whether you're using clips or you're using a command line. Or you get out of a repository. And take all of the pieces, whether it's your databases, your Apache, all of those wonderful things. And configure and deploy that application with its entire configured lamp stack.  And it's really a wonderful way. It's maybe want to be a programmer again. And it's really giving me now everything I need to become a more effective and agile developer. And that's something that's been being played with in the enterprise all over the world now. As I said, I just came back from Brazil. I've been over Europe. It's pretty much one of the standard things that people are now deploying on top of their infrastructure as a service. So today what we wanted to do was try and talk a little bit about how there's many different ways to deploy on OpenStack. And we really have been focusing in our team on making sure that the heat orchestration tools worked really well with OpenShift. And we've been doing that for quite some time. We put in the OpenStack heat template directory all of the Fedora 19 scripts for deploying those heat templates. We have the OpenShift Enterprise ones, which we'll show you in a little bit. And we also have now, because CentOS has now been working with us, we have come out of the closet as CentOS lovers, as well on the OpenShift team, because we've actually been doing most of our test and build environment, has been on CentOS for quite some time. So we just added in with the help of Jeff Peeler, who may be in the room or may not, from the heat team, the CentOS 6.5 templates for doing that. So basically, if you think of the cloud, the platform as a service is everything that your app needs to deploy in the cloud. So I talked a little bit about some of the applications, but someone asked me a question a few minutes before we started about OpenShift. And we have this metaphor, which we call cartridges. So that layered cake that is the cloud, our piece of it gets many flavors. And so I know I'm very Python centric, but OpenShift comes out of the box with a whole lot of languages that it's already supported. So Python, Java, PHP, Node.js, Ruby, Pearl. But there's also a way for you to extend that platform. It's a very highly extensible one by creating your own cartridges. And the cartridges then can be made available to everyone in your enterprise, or they can be specific to a project. And that allows us to extend our platform and add new things like Go and other languages pretty easily. And they're also different from other approaches in that these are made available across the entire OpenShift platform. So if you deploy Go, for instance, you can take that and push out Go, not just for your own application, but for everybody's. And maintain and version that across the ecosystem that you've installed. So as I said, we host in lots of places OpenShift online. I will admit at the moment is running on AWS. We'll work on that. We run on OpenStack. We do run on CloudStack. We run on BareMetal. We run on Rev. And all you need is a Red Hat Linux, whether it's RHEL, Fedora, or CentOS, and we can create that for you. So what makes us different than other cloud platform as a service and things like that? Well, one, it is the RHEL and the Fedora capabilities, and that's built in. We also maintain a really high level of security on the multi-tenant containers that we're creating. We're using SE Linux and C groups for our multi-tenancy, and we are working very closely with the Docker folks. And if you've been reading the PR press releases or seeing any of the demos that we did at Red Hat Summit, we're doing a lot of work with Project Atomic and GearD to help bring true Docker support into OpenShift. And we can talk about that separate from here as well. The other thing that we do really differently is we do something called automatic application scaling. So if you take your application in the cloud and you deploy it, you say, okay, I have this much set resources. A lot of other platformers of services will scale things for the PAS. They'll add more resources for the platform as a service. But we actually go to the next level and scale your application up and down. And if your application isn't getting a lot of traffic, we have another concept called application idling. We will take your application and we will acknowledge the fact that you're not getting a lot of traffic and spin it down and not charge you for or charge your department for that. Can we save the questions to the end? Thanks. Because we squeeze this in time. So we do a lot of that. That makes us pretty different. The extensible architecture that we have based on cartridges and soon based on Docker. The other thing is we have a real good support and a relationship with the Java folks and the Jboss folks. So anybody who's interested in that, we do a lot of work with them. And the other thing that's new and interesting is our support for .NET. Yes, we did bring .NET to OpenShift and a lot of heads turned at Red Hat. And I love the fact that the gears and the are called on the windows nodes, windows prisons. I think that's probably the best name for anything and the fact that I'm going to have to put Visual Studio on my Mac. It's going to scare everybody soon. But one of the things that we've done over the past couple of months is partnered across the community with a company called YouHeroSoft who made a huge donation to the community of all the code base to support .NET in OpenShift. And we're really happy to have them on board as part of our community now. And that's another separate whole talk too. So I'm here all week. If you want to hear that or see that demo, I'll give that to you separately from here. So one more slide, my friend. So if you want to find out any more details about OpenShift itself, you can go to origin.openshift.com and check out the blogs and the articles or send me a note there. And we'll get there. One more. So what we're really here to talk about is the interesting thing for OpenStackers. How many of you have used Heat? Awesome. I don't have to talk today, do I? You've got it all down coal. So this is really about some really cool cross-community collaboration. And as a community manager, I'm really pleased with the way that all of these communities have come together, whether it's the Docker community or the Solom community or the Heat group or the OpenStack folks. They really have been amazing people to work with. And one of the projects that we're really happy to have been working with for quite some time now is the Heat group. And as I mentioned, Jeff Peeler, Steven Dake, there's a whole crew of people I can't list that have been just marvelous to work with in terms of teaching us about Heat, teaching us about creating templates. And so my man here, Chris Alfonso, is going to take it over for a little bit. And he's going to talk about putting the paths in OpenStack. All right, thanks, Diane. Just to give you guys an idea, I guess this is our third year since the Heat project has been in existence. It's grown substantially over time and has integration points with many of the OpenStack features. The Heat has really been the basis for many integration points from the Red Hat perspective of being able to get our projects deployed on OpenStack. Over time, you'll see that integration basis expands substantially. We've got a project called TripleO to manage deployments of OpenStack. You have integration points around security, around storage, around monitoring, and image management and command line tools and web UI integration points. And those all have touchpoints with Heat. I'm going to show you an example of really what I spent a lot of my time on is OpenShift Enterprise being deployed on OpenStack. And just to give you some background on where Heat came from and why it exists, its real mission is all about infrastructure orchestration. There's been a lot of conversations around, well, is it a configuration management tool? Where's the dotted line stop between different components of your infrastructure and what's actually running in your infrastructure? And Heat has really held true over time to just being in the business of managing orchestration and leaving that as a core competency and leaving integration points around what you actually run in instances running in your infrastructure to configuration management packages. And really the user data section of instances is really where that handoff happens. I'll show you some concrete examples of how OpenShift actually utilizes that integration point. I won't spend too much time on this one because we're sort of doing a lightning talk on this one. I think we have about another half an hour. If you're interested in looking after this presentation at some of the Heat template examples that we've prepared that you can try on your own, you can go to github.com, look in the OpenStack repository or namespace, and you'll see Heat templates. There's things like a highly available directory that has ReadMe that tell you how to deploy a multi-node OpenStack or multi-compute node OpenStack infrastructure with multiple brokers and multiple OpenShift nodes running altogether for one OpenShift fabric. So go ahead and look through there and start at the basics that we'll go through today. And you can look as deep into that as you like. This diagram is up here not really to teach you about OpenShift, but to give you an idea of the infrastructure that's required to successfully deploy an OpenShift enterprise or OpenShift origin infrastructure. For all the services to coordinate together and be running and be secured, there's a lot of infrastructure configuration that has to happen. You have things like mounted storage, you have security groups, you have instances that are able to use floating IP addresses. They all need to talk to each other. What I'm going to demonstrate to you is how you would set up a two virtual machine infrastructure that one is an OpenShift broker, one is an OpenShift node, and it actually becomes a multi-tenant aware node application hosting service. So I'll show you how you do that. And I've taken a video of this in time lapse package installation that we don't have to sit here and watch paint dry because it actually does take longer than the summit lunch lines. So there are three steps to the... I just bleached my retinas, that's great. So there are a couple different steps to getting your infrastructure up and running in OpenStack. So the first thing you have to do is have images registered with OpenStack Glance. And you can either just download a prepared image or you can create your own images and save them as snapshots, customize them. What I like to do is the end state of deploying an OpenShift infrastructure, my intent is to be able to bring up an OpenShift node as fast as possible so that when I'm in a production environment, if I start to run out of capacity in my OpenShift installation, I want to be able to bring up additional compute capacity very quickly. So normally when you set up or install... create a burst machine, install an operating system, install packages, configure any configuration files, get everything up and running, that's a lot of latency. You have to wait for packages to download. Even if you have local repository, you have to go through an installation process, a configuration management process. So what I like to do is prepare a virtual machine image beforehand, get it all ready and just maintain that in a library such that when it's time to instantiate it, it comes on line as fast as possible. So one of the OpenStack tools that makes this possible is called Disk Image Builder. And Disk Image Builder is essentially a binary that will run through a templatized version of... it looks at every stage of what you need to install. So from startup to package management, configuration management, what you want to have happen one time or every time a machine comes up. It's very extensible and what I've done here, and I'll go ahead and just play this... I created a RHEL Disk Image Builder element and what that looks like is... I'll go ahead and get a tree view of this going here so that you can... This is also on GitHub. You can look at many of the Disk Image Builder elements. Let's make sure this is actually... There we go. Okay. So I'm running this on Red Hat Enterprise Linux 6.5 and I'll go ahead and show you the Disk Image Builder tree. I'll load the wrong file. Let me make sure... Okay.  And this is going to build a broker image. I've blurred out a couple of things just so passwords and such, but you can configure things like the Disk Image Size and what elements you would like to load onto Disk Image Builder's path and you can tell what type of image you're going to build. I've said to... That I'm going to make a virtual machine and it's going to be a RHEL operating system installing all the OpenShift Enterprise broker packages. So I'll go ahead and... The lag on this is completely terrible. See if I can catch up here. Okay. Well, not only did I time lapse that, I quit it just now so I can skip to the next one. All right. So the end result of running a Disk Image Builder run is an image that you are able to register with the glance service. And so at the end of that clip, you would have seen a glance registration and then it would look like this. If I run a glance index, I can see that I have a broker and a node image registered. And the reason why I need to register those is that every heat template for a virtual machine instance, you need to reference the glance image name or the image that's registered with glance by name so that heat knows which virtual machine to instantiate. And before I show you this video, I'm going to just jump over to a text file and I'll blow up the text here just to give you an idea of what we're talking about when I mention a heat template. So a heat template is just an ASCII file in YAML format that has a bunch of declarations, things like, well, really a descriptor of what your complete infrastructure is going to look like or at any snapshot in time, what your infrastructure is going to look like. You can pass in parameters at runtime when you instantiate heat to say, set up all my infrastructure. You can say, well, what's specified things like, well, what is the domain name that I want to deploy this infrastructure under? What's the name server I want to use? What size machines should these, or what instance flavors should these be using? What type of resources should be allocated to the VM, et cetera? You specify things like auto-scaling parameters. You specify things like, well, this one is OpenShift Enterprise Specific, so you'll see things like what's the RHN registration credentials and subscription information, et cetera. But infrastructure-wise, so there are things like neutron network subnets and networks and ports and things like that you need to declare in your infrastructure. You would want to specify things like, well, what security group should these instances be set up in? So what should the firewall rules look like for ingress and egress? You would want to specify things like, okay, you see the neutron port that gets created here, the floating IP that gets allocated to the broker and so on and so forth for the node. But where the real meat is when you deploy infrastructure like this is, well, what happens when the VM comes online and we talked about, well, how is heat really helping us set up an OpenShift infrastructure? Well, all the components that we talked about already, those are really for any infrastructure and what makes this an OpenShift Enterprise deployment is what happens when a VM comes online and the user data section of a broker instance or a OS Nova server instance is everything that gets initialized by Cloudinit. So Cloudinit's going to look at whatever's passed in this user data. There's a lot of environment variables that go on here. They get passed to an OpenShift installer, the OpenShift installer interprets all that, installs or configures a bunch of packages. It will update the machine with any errata that's happened, that has been published between the time the images were created, make sure that SEO Linux is on, things like that and really that's all that happens.  That sends a signal to the heat metadata server and says, hey, the server instance is running, go ahead and notify heat that this machine is done being configured. And so I'll just show you a quick video on how that happens or what happens when we run this and hopefully there will be no lag here. So this is a command line utility for heat. You can also do this through the Horizon web UI, but this one will just fire off the create command. I'm going to call, give it a stack name and I have no idea if you can, you probably can't see any of that text. So I actually don't think this refresh is working at all. Well, we may be cutting this a little bit short if there's no, yeah, there's no having, unfortunately this video is not even refreshing. Yeah, yeah, I could pull that up too. I know that this has a little bit of different editing. But yeah, let me go grab that real quick. Don't mind bearing with me real quick. Oops, go to the blog and I believe it's down here somewhere. Let's see. So you're getting a good tour of where all of the content is for OpenShift and he's got... Let's see what the resolution ends up being like on this. There you go. Yeah, we'll see. Okay, so here's the disk image of the other part here. We'll just jump past all the package installation. Okay, so here's the actual heat creation. Let's see how well this refresh is here. That would be considered a local laptop for monitor issue. Alrighty, that is awesome. Well, give it a couple minutes and then I will ad hoc a demonstration. Yeah, I'm working on that.  Yeah, okay, so maybe it's actually going to work at least. Okay, so I showed a create there and that is really small and blurry. So let me just kind of talk about what's happening here in this video. Now I'm looking at the horizon dashboard just to see the instances were created. You can use the heat command line tool to look at the status of a stack build. So you can use heat event list or to look at the specific events that are actually being fired off. And when you look at the list of events, it may be really confusing when you first look at it because each record that's recorded is not updated. It's actually a sequence of events. So you'll see create in progress, create in progress, create in progress, but you'll actually see event names or resource IDs duplicated down as you look down the list and you'll see things like create complete and that way you know that resource has actually been completed. And you'll see things like a wait condition. And when we look at that CFN signal part of user data in a VM instance, whenever that gets fired, that's when you know that the wait condition has been satisfied and then you can look in the heat event list and you can see that the event has actually been completed. So here in the video, I've finished set up the OpenShift infrastructure and logged into the broker and run RHC setup, which is the OpenShift command line tool. I'm doing an RHC setup, setting up my domain name, making sure I set up an authentication credential or authorization token, set up a domain name space for this one I'm using, funzo, and the output of that is basically a set, a number, a list of application runtime languages or web frameworks is what we call them, that you can create an application with. And for this demonstration, I think I'm going to create a, either a PHP 5.3, yeah, PHP 5.3 application. As soon as that create app run is done, DNS will be configured and propagated worldwide and I'll be able to pull up that application in a web browser and we'll do that in just a second as soon as DNS is done propagating. Okay, the output of that is a lot of information around your application, an SSH URL, you can log in to your gear, you can look at what's running in your gear, running in that node VM. I've set up my network preferences here, pointing to my broker because I'm running Bind on my broker server VM and because I do that I can go to this PHP application and just pull it up. Another thing I can demonstrate with this is a simple update. So if I go into that test PHP directory, I can update the source here and do a simple update to the index page, save it, commit it, and push it. Do a get push and the application will just be redeployed and it's up and running. So it gives you a way to set up infrastructure on OpenSack, set up OpenShift on there and be able to, as a developer, be able to have an application created, all the configuration around it around having a proxy around having all the ability to scale up the application, scale it down, have it idled, have it be one of many tenants on a node, have it be secured, have all the firewall security set up and your code sharing, your get repository, all set up so that you can add members to it, you can have set up teams of developers and you don't have to do any other configuration other than just what I showed you to do so. And then you can use the developer console to create other applications. We have run times and if you do this online, you can see a lot of quick starts that we don't ship with OpenShift Enterprise because we don't ship them because we don't support them, we just enable them. But if you go to OpenShift online or grab origin, there's a lot of quick starts that you can just pick blogs and different types of bleeding edge frameworks to create applications with, but here you can see the same process. It's like boiling water here, so it's, if I use the right scheme. And so there's my Ruby application. And that shell, that is what HEAT has been able to, has enabled us to do, is deploy an entire infrastructure. So the demo was, it was canned. It was, we'll admit it and you can tell it. If you throw up the slides there. Could you go to the Git repository for the templates too, just so people see where that is again? Sure, yeah. I think we have about five minutes left in our time, but this is github.com slash open sac slash HEAT templates. So everything that he showed you there, the templates, I saw people taking pictures. I'll post the slides up in slide share slash open shift and you can have them all and I'll tweet it out. But everything that he showed you there, for the enterprise, for Origin on Fedora, Origin on Centos is all in the HEAT templates in the open stack repo. So what we're looking for is for you guys to go out and play with it and test it and give us feedback. Make pull requests against it if you find something that you don't like. Fork it, create different versions of it and give us feedback on it. That's really, it's been, we've been using it for six or seven months for enterprise deployments and for a lot of Fedora folks have been playing with as well. The Centos stuff is relatively new, so we would really like to get you, if you're a Centos fan, to give that a try as well and give us your feedback on it. Let me go back to my slide. I'm not sure what I left for slides for you. Some of the best practices. But we've got about five minutes for questions. Yeah, so why don't we stop and let's see if we can get some questions. You want to stand up? That's correct. And really the idea behind that is in order to have RHEL, you have to have subscription. And so it just targeted, kind of allocated our time to what we thought people would want to use. But the stuff that's on Centos should be directly applicable to RHEL. Yes. It looks pretty similar except for the user data. Yeah. Right. Well, the origin stuff. So you saw that I was using an OpenShift.sh. It's a bash script for our OpenShift Enterprise installer. The differentiation between what you'll see with origin is Puppet-based installation configuration. And with Enterprise, we do a few other things. And it actually predates our Puppet work. But in the next little bit, you'll see some other interesting things with a tool that is called O-Install. And that will be shipping with OpenShift Enterprise 2.1 that will have compatibility with the OpenShift.sh as well as vagrant-based installation. Yeah. That's a known bug. And the heat team has been working on that. I don't know if they made it before. What's that? It's Icehouse. What was your work around for those that are... To the wakeiness. Okay. Right. Is there any other work around? You can use nested templates, but that specific issue with Icehouse has been addressed. And for debugging here, have a USB key from us and thank you for that. Send us the... Any other quick questions that we can fit in? In the back? The applications are actually being run in the VM itself. So what I demonstrated was a two virtual machine infrastructure setup. One is an OpenShift broker and one is an OpenShift node. The applications that are created are created inside that application node virtual machine. We're using PAM namespaces. We're using C groups for resource allocation and SEO Linux labeling. Yes. That's not addressed with this. So there's a couple different scaling ideas here. One is that you're referring to is OpenShift-based scaling. And then... Right. And so that's... Most of that implementation is in our HA proxy control daemon. So there's that aspect. So there's some... a long list of issues to address there. There's also making applications highly available, meaning, well, what happens when brokers are introduced or taken away or actual nodes are introduced or taken away. And then there's also... then there's the infrastructure auto scaling that HEAT has the ability to do as well. But... You can have multiple HA proxies now. Yeah. So that's a fairly new feature. You have to set your... Paz admin has to set up the user to allow HA proxies... or HA applications.  So that's a new feature. Yeah. The scaling algorithm tries to place those gears on different... on different virtual machines or different bare metal machines. You can actually take a one-level audience. Yeah. Yeah, we could spread that out a bit. But there... Yeah. I've tested that a bit and I've seen some wonkiness there of some unexpected results around the scaling algorithm. So it's definitely a possibility to end up on the same compute post. Yeah. Yeah. Do we have time for another question? One more question, anybody? If not. Thank you all for knowing about OpenShift in advance. Thanks for your patience with my demo video lag. Thank you very much.


Welcome back folks, Dow finished up seven Nasik down 12 S&P's off six and a half. Let's go over to IMM. It's the Basel Chapman. As we do each and every Thursday at 20 past the second hour. And don't forget, folks, Basel does an outstanding show here. Every trading day, 12 to one Eastern standard time, also has a great newsletter, the opening call. The way you get the opening call, folks, come over to our website at TFNN. You're going to hit newsletters and you're going to see the opening call right on the right hand side. Bottom line, Basel has it out every trading day. You can subscribe to the opening call for $128 for one month. You can get six months for $595. That's a savings of $173. You can get a year for $995, which is a saving of $541. Now they all come with a $38 money back guarantee, folks. So bottom line, nothing to lose, everything to gain. Check it out on the front page of TFNN right under newsletters. Basel Chapman, what's going on? Well, what's going on is that we've got a very interesting market here. If you look at the different indexes, you've got the QQQ, which is the index 100 trading vehicle yesterday making a new recovery high. You've got the, let me go in sequence, so you've got the QQQs. Then you've got the S&P, which just squeaked yesterday to a new recovery high above. It went to 28.21, and the previous high was at 28.16 before that very sharp five-day sell-off. Then you've got the Dow, and you'll see that the Dow is way lower. Look, the Dow is way off the high, 26,241, and it's trading at 25,709. Then you've got the IWM. So when I put this together for subscribers, what I'm saying is, you see, as the IWM at 154, the high was at 159.50. This is the Russell 2000. So I think what we've got here in this diversion, and you can see it now also in some of the stocks that are already tech-oriented, you just spoke about Adobe coming out with earnings, and it was looking fantastic. And it went to a new recovery, actually to a recovery high, but just under the all-time high. And here it is, comes out with news, and it's only up 67 cents. So this is a very important phase as far as I'm concerned. What I am looking at here is for subscribers, we still long in certain stocks and certain sectors that I think are kind of under the radar, and they're doing very nicely. And interestingly, we're still along the dollar from almost a year ago from April. They did have quite a bit of a pullback from 97.71 to the low yesterday in the 96.40 area, trade day 96.78. So I still think it's digesting big gains that it made earlier on about going into the high that was made in 97.71. So I'm looking at this, and I'm thinking, I'm still a little cautious. We did take some money off when we were short going into the low that was made, but I'm looking at this and I'm thinking there's a lot of work that needs to be done off to such a spectacular move from 21,712 in the Dow back in 26th of December, all the way to 26,241. I mean, that's a 20% gain. That's a gain that sometimes you can rate a year or two to get that kind of accumulation in an index. So I still think there has to be some digestion of that. I'm still bullish longer term. I think the Dow does go to all-time highs. But I think we need to, to me, this is just a period of rest. And we can see that on the one hand, Boeing normally would have just knocked the market down. You can imagine Boeing is part of the Dow. That should have been a whopper of a down day. And in fact, the Dow turns around on Monday and it ran up sharply. So that's saying there is internal strength. There is, there are enough money managers and fund managers that are wanting to get in. But I'm looking at this and I'm saying, you know, on the other hand, I'm looking at kind of overbought in a shorter term, a daily marker for me in most of the indexes, but the weekly charts are improving a lot. So it's a mixed market. I'm looking at certain stocks. I said to subscribers, we've got our list. There are stocks that if they pull back sharply, those are the ones that we'd like an opportunity to get. So I'm looking at this as if it's an opportunity, but I do think we're bumping into some strong resistance. And you can see that by the way that some of the indexes have gone to new recovery highs and others like the Dow and the IW, the Russell 2000, the kind of, I wouldn't say they're struggling, but they're not doing as well. Well, yeah, you can see, I mean, what's going to get intriguing here, folks, is that because, you know, the Dow is a price-weighted average, without Boeing, the Dow is going to have a problem. I mean, you know, point-wise, folks, it's an astronomical number, how much just Boeing alone had put into the expansion of the Dow industrials. I think it's something like 2000 points over the last couple of years. I mean, that's huge. Yeah, it's 11% of the index. So yeah. And that is one big number. There's no doubt about that. Yeah, so we'll see where this whole thing shakes out. That's right. And one of the aspects that I'm looking at here is the VIX normally, I say if the VIX is in the 13 to 12 area, that's usually very bullish. You should get in the Dow, you should be getting 100, a triple-digit move on the upside. So something's telling me that, yes, the VIX is down on the 13s, but we haven't got that next leg on the upside. So I just think there's a little waiting period here. I just want to see how the Dow's at 25,700. I think 25,520, 25,460 somewhere there. That should be good support. If that support goes, then it's going to be a longer consolidation. And on the upside, a break into the 25,900, I have to say, whoops, we're on our way up again. And that could mean that maybe Boeing's seen the worst of it. I don't think so. And Apple actually has taken a little bit of the lead. Apple won the lead. Apple definitely would have happened, as I just said a little bit earlier, when Boeing was all the negative folks in the Dow industry.  Apple had gone from 169 up to 179. And that put juice inside the Dow. Well, every stock did. That day, the only negative stock was Boeing. And bottom line, it wasn't as bad.  If you go back there. Oh yeah, it was out over 200 points. Yeah, that was a big move. Boeing had got down to 365, closed out to 400. And then the next day, it just got smoked all the way right back down. So there's no doubt it's going to be interesting watching this whole thing check out. And then tomorrow, so tomorrow we get option expiration. And you get the reshuffling folks, reweighting of the S&P 500 on the close tomorrow. So there is going to be some big action as these money managers have to go in and out and rebalance their portfolio.  We'll see which way that market wants to go. Absolutely. So in the meantime, back at the ranch, the positions that we have, I like the positions. I'm watching, I'm looking at different areas that are potentially good. We spoke about the grains. And now all of a sudden, you can see we just done it very nicely today. It's just a start, but it hasn't really taken off. So I'm watching to see how money flows into the different areas. And maybe finally we get the agricultural area to just get a little bit of strength and allow money to go somewhere where there's a good uplift to come. Yeah, that doll is still hanging tough. And that's what's going to have to crack for those commodities, no doubt. Right. Listen, folks, you're moving to our website at TFNN. You're going to go right in the newsletters. You hit newsletters. You hit the opening call. You get it for a month, six months a year, all with a 30 day money back guarantee. Bowser, you have a great one, safe one. Hey, what's the weather like up there right now? Very nice day today. Sweet. Mounting the snow. Oh, you got snow. Oh my God. Thanks so much, man. You forgot about that. That's N-O-W. That's N-O-W, yeah. Stay right there, folks. Come right back.


trade deficit. So in this section we will compare the trade deficits between China and United States. China to United States and United States to China and see where all this energy picture comes in, where does that pie comes in. We already talked about the US deficit with respect to China and you see all the slices that are here. As I mentioned before, the one missing country here is Saudi Arabia. They import quite a bit of oil. The majority is imported from Canada, but they still import quite a bit of oil from Saudi Arabia, but they export so many goods to Saudi Arabia that it all balances off. Only this year, 2023, that the Chinese trade from other than United States went to other countries, not to United States. Otherwise, there was a lot of things, luxury items, basically cars and stuff like that that are imported by Saudi Arabia. If you look at the Chinese trade deficit, you can see that for United States is a positive quantity. Yeah, here in this case, it's a negative quantity. As I said, it is approaching a trillion dollar in 2022, 2023. But for the Chinese case, it's a positive number. That means they are giving more goods to United States than importing goods from United States. And the biggest thing in this is oil. So the rest of the United States is China, so it's one thing. And if you look at the Saudi Arabia from someone else's point of view, the Saudi Arabia has a positive trade deficit from almost everything. The reason is that most of the oil in the world goes from Saudi Arabia. It has a very economic impact on the world. So these prices, because of which this trade deficit keeps going forward, it will have to be understood a little bit. How does this price generate? The price of oil, as I will tell you right now, where does it come from? What are the contributions from someone? So as it is written here, price of liquid gold. So the oil is called liquid gold because it depends on a lot of the economies. So you see, there are a lot of countries, they have their gasoline price, these are the numbers of 2022. So Venezuela is the lowest, 0.022. Venezuela, now you will know how bad the political conditions are in Venezuela. But despite this, since the country is small and their oil production is very high, their oil prices are very low. Libya, Iran, both look at how bad the political conditions of Venezuela are. But there is still less oil. Iran, Algeria and everyone. Saudi Arabia is now bigger, $0.62 per liter, now it's bigger. Now we have, now their entire policy had changed, when the crisis came in 2020, 2020, so all the prices have changed, now the prices of oil have also increased. So you see, there is a list of countries in which these prices are very high. Now all these countries that depend on all the imports, their prices are very high, in which there is the UK, Singapore, Monaco, all these things, Norway, Scandinavian countries are very high, which imports a lot and depends on the imports, their prices are very high. The United States is now $1 per liter, which is very close to Pakistan. I saw it here yesterday, it was in 2023, that here it was about 300 rupees, so it was equal to a little more than $1, China's $1.3 per liter. So what are the prices that contribute to this? And what are the effects of these things? So this is one thing that the political crisis of all the things in the world, its immediate effect, immediate effect. Now look at all these things in this graph, all these things, how much of the Iran-Iraq war is a big jump. Iran and Iraq all share a huge number of things in the world. So when they were fighting in the Iran-Iraq war, the prices were absolutely ahead. And apart from that, the recession of Libya has all the things, small things, although Libya is a very big exporter, but in its uprising, the case that happened with Qadhafi, it was completely increased. Libya is a country. So you see how much sensitivity there is in oil prices in the world. And all this history, from 2018-2019, look at all these spikes. Now you can say that this happened, this is why the price is increasing, this is why the price is increasing. So all this is political, right? Apart from this, there are other things, like I told you before, the weather is a very big thing. All the refinery in America is in the south, the eastern world, the Dallas, and all the storms come from there most of the time. One big storm came, two, four refinery were down, prices are absolutely increasing. So you see so much sensitivity, that these small things are absolutely great prices. And the oil prices are related to the prices of other things. The price of eggs is related to the oil prices. Why? Transportation, right? The price of carrots is related to the price of oil. Why? Transportation. Now look at these different prices. From which I was telling you that the price was negative. You have seen this graph on the left side, you have seen that the price is going to be negative. And the problem was the same, Saudi Arabia and Russia's national start was because of that. Today's price is the price of March 6, 2020. I mean, two days ago, when I saw it, it was like this. Now, look, it's just a matter of a few days, and in a few days, their prices are so great. And $80 fee barrel, $80 fee barrel. And you see, this was a lot of time, that $160 double price, $160 fee barrel. Now those countries, small countries in which they produce, like Ghana, Ghana has a little oil, Norway has a little oil, all their economies depend on that oil. If half of it remains, the price of oil means half of your economy remains. So these small countries suffer a lot because of this fluctuation. The most important thing about this is how they can be controlled. And there is no way to control it. Because there are forces, there are different political forces, there are geopolitical forces, they are all combined, they can control the price very difficultly.


Charity begins at home. Justice begins next door. Charity has left the home. She left the home when she decided that the critical task of raising your child to be a decent human is someone's health's responsibility. Charity has left the home because we are now raising children without discipline, without instruction, without direction, without boundaries, and ultimately without a conscience. Charity left the home the day you chose that meeting, that appointment, that event, that friend, that similar or gendered line, over your child.      Child on child crime and abuse has carried over the past 20 years to as much as half the percentage of adult crime. Let me put that in context for you. For every two adults and there's a criminal, there is one juvenile child. I shudder at where that statistic will be in another 20 years if we do not take drastic actions starting today. I can see in my parents words as early as I remember saying, remember the son of whom you are. That phrase as simple as it was carried weight. Carried weight because they were not just referring to themselves as parents. By saying those words, they were opening a whole itself instruction, discipline, direction, and yes, home training. I mean, it's called home training for a reason. Many parents today look at their children in the eye. Sorry, let me say that again. Many parents today cannot look at their children in the eye and say, remember the child of whom you are because there is nothing to remember. They haven't done the hard work. Many children today are bad boys and bad girls and are celebrated for it. We must start to reprogram our kids to respect plain old decency in a world where good, bad, moral, and immoral have been heavily subjectivized. Without taking the responsibility away from schools, the task of raising a decent human is the primary responsibility of the parent. I repeat, the critical task of raising a decent and responsible human is the primary responsibility of the parent because if you don't raise your children right, somebody else will. In some cases, that's awarding the prison facility or other inmates. Social security is what I advocate for. Criminal legions must be truly criminalized. Parents must be held fully responsible for neglecting their roles and let's bring charity back home. At that point, just drop the mic and we'll... I mean, I don't know. I really think that what you have said is so true. You've hit the nail on the head and the question that comes to mind immediately is that where did we get it wrong? What is happening in the home?  At what point? Yes, and I really think that maybe when we look at it, when you see the situation, is when they crush the desire for the finer things of life and how I don't want my children to suffer the way I suffered and how I want to give them a good life, all that stuff becoming the norm. But because when you talk to some parents and you're trying to tell them that, oh, this doesn't make sense or this shouldn't have done it, look at it like, what are you talking about? I mean, there was a time when I was in love with etiquette classes. And at some point, every time we say, we almost got that sense of, oh, really? Do they really need it?   And so do we, the parents don't think it's that important? So let me tell you something. So I left Nigeria at six years old. I went to boarding school at the age of six to the age of 18. My parents never relocated. They were here. I can tell you, every day of boarding school, my father was in my head. He had done that walk at six years old. To this day, the man is still inside my head. So it's really important in those initial, we call it the early intervention years in the special needs community.  So it's really, really important that parents clue into this. You cannot leave your child for the nanny. Absolutely Niger. What I'm going to say, I was just thinking about something. You called the remer, it came to my mind. There are two things here. Parents should think about the future of their children.  If you go to the, if you go to America, George Bush, George H.W. Bush, Betty, George W. Bush, do you know the amount of work he impacted in the life of his children? That he had one of his son, a governor and a president, another one, a governor, right? Do you think it was just because he was a president? That's why they became president? No. That was intentional parenting. And then the other aspect from, away from parenting, the school, those that go into education, I want to be a teacher. Many a time they don't go for the glory of teaching and impacting life. They go because of, oh, that's the work I really want. I just want to do it. I don't care. My only just to collect my money and leave it. Please. We need hello to talk. You hit a, you hit an issue. And I know how you're sitting there wanting to say something particular on this point. Yes. In fact, I think I love all of you. That's what I'm saying. You're all speaking my language. You know, I think it's really, really, really, I'm always one for trying to be against our home. And I, and I concur with Tonya because I also went to school in the UK and every time I wanted to make a wrong move, I would just remember my father.  That was his words.  So I sit down in my quiet moment and I'm thinking the parents of these young boys who have now been identified as the suspects of killing this young man, what would those parents be going through? You see, it's a tragedy all round. It's a tragedy all round. Absolutely. And I'm very, very sure that if you look at it holistically, we have to mourn for both parties. Sylvester's parents have lost a child and five to six other parents are more or less going to lose their children as well. It's a very bad time. I had a total hit on something towards the end of his intro, which kind of hinted at, do you prosecute the parents? Like I kind of got that thing in terms of this, the ramifications for the parents security abroad.  Well, in Nigeria, that might be in Nigeria, that might be a bit of a relief for them. Just take them. We should probably have those kind of things in place. I think it's a good time to have a moment of silence for the daily part of children over the last couple of years or whenever that's having victims of bullying or physical abuse. I mean, their souls rest in perfect peace. Well, time is never a friend on this program. However, the advocacy continues on our social media platforms on Facebook, plus TV Africa, hashtag the advocate NG, and on Instagram, at plus TV Africa, hashtag the advocate NG. To catch up with previous broadcasts, go to plus TVAfrica.com slash the advocate NG. Don't forget to subscribe to our YouTube channel, plus TV Africa. Like Catherine Jenkins said, children should be able to live a life free from bullying and harassment. And it's time that we all took a stand against this. Till next week, same time, on this same station. Let's keep advocating for a better society. Yes.


Hei. It really is a privilege to get to present my research to a public audience, so I'm very grateful that you're all there and I have this opportunity. What I'm going to do is tell you first a little bit about omega-3 fats, then a little bit about how obesity leads to disease, and then I'll take you through some of the work that I've done during my PhD. So omega-3 fats, they're a type of unsaturated fat that our bodies cannot make. We have to consume them if we want to increase the amount to our bodies. And they have effects on the body that are different to the other unsaturated fats or the saturated ones. The main sources of omega-3 are from the sea, and fish, crow and algae are the main sources, and you can get them from eating those or from oils made from them. However, these molecules are also highly reactive, which means that they go off or oxidise very easily during storage. The main reason that people take omega-3s are either to prevent heart attacks, prevent cardiovascular disease, or during pregnancy they're often taking with the hope of improving the intelligence of the child. And it would have to be said that in the last 10 years, both of these have really not been born out in most of the studies. Nevertheless, there's still the main reason people take them, and they're taken by a lot of people—about 17% of Americans in one study and 20% of pregnant women in New Zealand. Now, everyone will be well aware that obesity is a massive problem for us. It's a global problem. There are now 500 million obese people in the world, and New Zealand has a big problem with this as well. More than half of the population is now either overweight or obese. The reason this is important is because obesity leads to higher blood pressure, higher cholesterol, and the development of diabetes, and together these lead to cardiovascular disease, which are the biggest killer in this country. Importantly, the underlying problem that's linking obesity to these problems is that insulin, the hormone that controls your blood sugar, doesn't work as well if you're overweight or obese. A very special group that we should think about as well is women who are pregnant. We know that the offspring of women who are obese while they're pregnant are more likely to become obese themselves and have a higher rate of diabetes and metabolic problems as they age. And this, too, is probably because insulin's not working very well in mum. That leads to her to have higher blood sugars and fats that cross the placenta and have long-term effects on the baby. So, this raises the possibility that insulin-sensitising treatment, when it makes insulin work better, could have a dramatic impact on these populations. Now, could omega-3 fats be this treatment? Well, in mice and rats, treatment with omega-3 fats does restore insulin function. So, that's what we got excited about and why we've done the research that I'm going to describe. We've had four really important research questions. The first is that could omega-3 supplements improve how insulin works and people who are overweight are obese? Second is, if we gave omega-3 fats to obese mothers, could we improve the health of their offspring as they age? We also wanted to know, are omega-3 supplements offered at the time they're purchased by consumers and does that make a difference to how they work? So, please follow me down the wrapped hole that was my thesis. So, first, are these supplements oxidised when you buy them? The short answer to that is yes. I surveyed most of the omega-3 products on the NZ market and I measured how oxidised they were using a standard test. And this dotted line represents the recommended level of oxidation. You can see that almost every product exceeded that and some by a large degree. Now, what does that mean for people taking them? We're not sure. That dotted line is actually the dotted line for whether the oil tastes bad or not, not for whether it changes its function. So, it's a really important question to ask, given that everyone is taking oxidised oil. The next question is, could we use an omega-3 supplement to improve how insulin works and people who are overweight or obese? To find this out, we enrolled overweight middle-aged men into a trial and we randomised them to receive one of two treatments, a krill-based omega-3 supplement, which is a small crustacean fished up in the sea, or a controlled oil. And they took the supplement for eight weeks, we assessed their metabolism before and afterwards and then they had a break and took the other supplement. So, they didn't know what they were taking at each time, but every person got both supplements. And it's worth pointing out that neither of the oils we used were oxidised. That can't explain our findings. So, the first thing we found was that at the start of the trial, before anyone had taken any krill oil, those who had more omega-3 in their blood, insulin worked far better in their bodies. Those with the lowest level, insulin wasn't working very well and it was quite a big difference. So, that so far so good. However, when we gave them krill oil, we actually found that their insulin seems to be got worse. Insulin wasn't working as well as it was before we gave the krill oil. And it's actually quite a large effect. This suggests that if these men took this for years, it might have increased their risk of diabetes or cardiovascular disease. How did this happen? Why? We don't actually know. It's probably not due to the omega-3 fats in the krill. We think it's probably another compound that's unique to krill and probably not found in fish. Supporting that, a recent study from Europe has shown that giving a purified omega-3 supplement improvements on action and reduced the development of diabetes in adults. So, it looks like omega-3 probably is good for metabolism, but that krill is not the way to get it. The next question we had was, could we use fish oil in the offspring of obese mothers to prevent them developing metabolic disease? Now, to first test of this, we had to do it in animals. And the reason for that is because if we do an infection in mothers and have to wait for their children to grow up to be assessed, that takes years and years. And so, the first study was done in rats. What we did was we assigned some pregnant, sorry, some female rats to a normal diet and some to a high-fat diet. We know that a high-fat diet in pregnancy is similar to an obese pregnancy in that the offspring still become obese and they get problems with how insulin works. And so, the rats took those diets after we mated they continued on them and then we gave them an extra treatment, which was either fish oil or water, which was our control. And what we're aiming to do is see if, by giving that fish oil to the high-fat groups, we could prevent this problem with insulin action. Once the offspring were born, they fed an ordinary diet for their whole lives as much as they wanted to eat and we assessed them in adulthood. So the only thing we did was change what mum had during pregnancy. We also added one more group, which makes it look much more complicated. And what we did here was we took some of our very fresh fish oil and we oxidised it so that we had an oil that was identical, except that it was oxidised. So what happened when we did this? Well, the first thing was dramatic and completely unexpected. Once the pup started to get born and the group whose mother had had oxidised fish oil, we saw an incredible rate of death. Almost a third of those pups died very soon after being born. But it didn't happen in the fresh fish oil group, which tells us it was the fact that it was oxidised that mattered. And we don't know quite why that happened. We didn't expect it so he didn't do the right tests to find that out. Those that survived were often different to other animals as well and so this little guy, next to a rat from a different group, is about a third the size and he didn't move normally either. That's where I'll stop talking about the oxidised groups. This was featured in the listener earlier in the year as well and quite an in-depth article. But what happened to the other animals? What this graph shows is how they gained weight from early life through to adulthood and high-fat diet means that mum had the high-fat diet. Remember that offspring have had exactly the same thing. Now this finding isn't new but it kind of blows my mind. I think this is amazing. By changing mum's nutrition in this very small window, we've had a permanent effect on their self-spring. That's amazing. Now, what happened when we added fish oil to this? In terms of weight, nothing. The high-fat diet groups still became obese. But there was one very important difference and that was an insulin action. So what you can see on this graph is if mum had an ordinary diet, the offspring are nice and insulin sensitive. If mum had a high-fat diet, they are much less sensitive. It's a big effect. But if we added fish oil to that, we completely prevented that and so we had obese animals that were more metabolically well. And that would still be an outcome that would be very favourable if it could carry through to humans. Now, what is a response to this quite shocking effect of the oxidised oil? The dose we used was high and it was more oxidised than what's on the market. And it's clear that women taking fish oil in pregnancy are not having a look their babies die. But if there were more subtle effects on things like growth, we might not know about that because it's not being looked at. Our approach to this now is to say, look, there is no compelling reason for women to take fish oil in pregnancy and we know if they buy it, it will probably be oxidised. So women who are pregnant probably shouldn't take fish oil and should get their omega-3 from fish. Saying that women who have been taking fish oil have probably not done their babies harm. And where to from here is two studies which we're designing and looking for funding for. The first is a careful study in rat pregnancy using doses of oxidised fish oil that are relevant to women to try to better estimate the risk of a woman taking fish oil. And we're working with the Ministry of Prime Industries and a toxicologist to design the sort of study the Government would listen to. The second thing is a human trial of using a very fresh fish oil during the pregnancy of women who are obese to see if we really can affect the health of their children as they grow up. And if we can do this, I'm going to be very busy. So I've made it sound like all my work was solely my own and of course it was into tax of village of people assisting. And I'm very grateful to those people. Thank you.


So here's a quick recap of what we've done so far. We've discussed several types of discrete probability distributions. We've introduced the idea of a random variable whose output corresponds to an outcome in the sample space. We've introduced the idea of a continuous random variable. And we've looked at using a continuous random variable to round to the output of a discrete random variable. And the important question is, why? And the answer is, because calculus is easier than algebra. Now, if you haven't taken calculus, that's not really true. But here's a crash course in applied calculus, in particular what we actually need. A region in the plane requires a specified top, bottom, left, and right. And we can talk about the area of the region below some graph above the x-axis with left side vertical line x equals a and right side vertical line x equals b. And this area is expressed using the definite integral written this way. Now, generally speaking, computing a definite integral is hard unless it's impossible. And in fact, for many important functions, it is impossible. What's important to understand, however, is the following. The value of an integral can be computed from its endpoints, in other words, those left and right values. Integrals are areas and areas are additive. What do we mean by that? Well, let's consider the following. Suppose y equals f of x is a curve entirely above the x-axis and we know the values of some integrals. And let's use it to find the value of another integral. Now, we know nothing about y equals f of x except that it's above the x-axis. But if we look at this first integral, this gives us the area under y equals f of x above the x-axis and from x equals 5 to x equals 8. And we find that that area is 0.3. Similarly, the second integral tells us that the area under y equals f of x above the x-axis and from x equals 8 to x equals 20 is 0.5. Now, the area we're looking for is under the graph of y equals f of x above the x-axis from 5 to 20. And that means it's just these two areas put together. And so this area must be 0.3 plus 0.5 or 0.8. And so that's the value of the integral. And so this leads to an important idea. Suppose x is a continuous random variable. A probability density function, the original PDF, is a function f of x where the probability that a random variable is between a and b is expressed as the integral from a to b of f of x dx as long as a is less than b. In other words, our probability density function is a function that allows us to find a probability using an integral, I mean, using an area. So as a quick example, suppose x is a random variable with probability density function looking like this. We can compute the probability that x is between 5 and 10. So that probability is the integral between 5 and 10 of f of x dx. And since x is greater than 0, we'll use the formula e to the negative x. And since this isn't a calculus class where the details of the integration would be important, we'll leave the computation of this value to a computer algebra system and we find... Suppose f of x is a PDF for some random variable x. We note the following. First of all, since probabilities are non-negative, then the integral of our PDF over any interval must be greater than or equal to 0 for all a and b with a less than b. Also, since the sample space includes all possible outcomes, then if I integrate over all possible real numbers from minus infinity to positive infinity, that integral must be 1. And finally, since integrals are areas, the integral from a to a is going to be 0. And if you want to think about this geometrically, this is looking at the area of a region where the left and right are the same wall. And this leads to an important result. Consider the event a less than or equal to x less than or equal to b. Now, this event can be broken apart into x equal to a and x greater than a and less than or equal to b. And since these events are mutually exclusive, their probabilities can be added. But this first probability that x is equal to a is the same as x being between a and a. And so using our probability density function, we can evaluate these two probabilities as integrals. And since the integral from a to a is 0, that gives us... And the previous argument can be applied to the interval a strictly less than x, strictly less than b, or a less than or equal to x, strictly less than b. And this gives the following result. Let x be a continuous random variable, then the probability that x is between a and b, well, it doesn't matter whether you include or exclude the endpoints. In other words, the endpoints don't matter. Now, you should be careful with this. Suppose x is a continuous random variable that models the number of defects in a 100 meter coil of wire. So explain why the probability of having 5 or more defects and the probability of having 6 or more are not the same. And here's the fast wrong way. Five or more defects is x greater than or equal to 5, so we want probability that x is greater than or equal to 5. But since endpoints don't matter, the probability that x is greater than or equal to 5 is the probability that x is strictly greater than 5. However, if x is strictly greater than 5, then there are six or more defects. And so the probability x is strictly greater than 5 5 is the probability that x is greater than or equal to 6, and putting everything together, we conclude that the probability that x is greater than or equal to 5 is equal to the probability that x is greater than or equal to 6. The reason we can't do this is that x is a continuous random variable. So 5 or more defects. Remember we have to look at things that will round to 5 or more. So this is really x greater than or equal to 4.5, while 6 or more defects is x greater than or equal to 5.5. So while it's true that the probability x is greater than or equal to 4.5 is the same as the probability that x is strictly greater than 4.5, we can omit or include the endpoints. We can't get to this other probability from there, and so our two probabilities are not going to be the same.