I am obsessed with how the best become the world's best. You know, when I was young, I would read all these books on spiritual masters, because I was always intrigued to learn what were the practices they did to supposedly be able to perform these miracles. But now later in my life, I'm more interested in the practical aspects of mastery. Like if you took the top athletes, the top musicians, the top authors, and you could learn exactly how they think and how they act. Wouldn't you want to know that? Now in this video, I'm going to share the three key practices I've learned from Anders Ericsson's The 10,000 Hour Rule, as well as how you can apply this to become a master in any field. Hey guys, Alex Hein, author of the book Master of the Day. One of the key traits I've noticed in a lot of masters is the habit of journaling. You see it in Da Vinci, Einstein, in Benjamin Franklin, Nikola Tesla, and many successful business people. The first link in the description is how I use journaling to completely reinvent my life. So if you'd like, check that out, get the free little PDF, and you'll get a journaling lesson every three days that's free, just an email course on how to get started. So the first question you need is to figure out who the best are. Now that is easy in a field where there's performance. You know when there's a martial arts death match on a square platform in your village and one person lives and one dies, you can be safe to say that you know which one's better. But how do you compare art? How do you compare the best doctors? How do you compare the best musicians? So how do you come up with these criteria to figure out who the best really are? Now I'm going to use this to apply it in my own field. I'm doing a doctorate in traditional Chinese medicine, so how would you find the best traditional Chinese medicine practitioner? Since they are not getting up on a platform and seeing 100 patients each and comparing the results or punching each other in the face, how do we know who's good? I came up with three criteria. The first one is who do the people that are in practice send the most difficult cases to? Who has a busy practice? And who seems to get consistent clinical results? You hear through the grapevine, this person is always getting great results. Those are my mastery questions. You could apply that to becoming a YouTuber, becoming an author, or becoming a top athlete too. The second exercise is you do kind of like a yin-yang exercise, this divergence. What makes the best practitioners good? And you often can know that by looking at what makes the bad practitioners suck. So what makes the great practitioners in my field good? The first thing is they've all studied one particular lineage of writing specific herbal formulas that are clinically proven throughout time. They all use one particular diagnostic method, a training technique, which is the pulse diagnosis. And 90% of them use a certain method of treatment, which is herbs, to treat chronic conditions. So if you saw these three consistent traits and the top performers in your field, those are the things you emulate. But sometimes you don't know unless you compare them to the people who are not very good in your field. So then we can say, what are the bad performers in my field do? So the bad performers in my field tend to be people who have modernized biomedical training versus a traditional lineage, a mentorship type approach. They write generic herbal formulas and do generic treatments that are not individualized for each patient. They tend not to use herbs rather than a traditional mentorship with a doctor that has been standing the test of time and has experience. The next thing is what Anders Ericsson calls mental representations. Now, all that means is, how do the best think to get the results that they get compared to how the worst suck? For lack of a better word. What are the best doing in terms of their mindset, the way they approach their craft that allows them to become good and stand out? So there were three lessons I came up with for mastery in my field. The best people don't treat symptoms, they treat the whole person and the pattern. The best people use one specific training method for honing in on a more accurate diagnosis. In athletics, you can compare this to a very specific way a sprinter may train for faster performance. Now, the last question is, how do the best people train to get those results? Because ultimately, you want to emulate their training methods and their way of thinking to get those same results. So the few things I came up with here are the best practitioners in my field, instead of like reading textbooks, they train with traditional case studies. So when you read case studies and case reports, you can learn how great physicians before you think. And so you can spot blind spots and poor ways of thinking. The second thing is they use traditional mentorships. So again, rather than just jumping into their own practice or trying to emulate people, they work closely with a previous physician or a doctor in their field. So they know exactly, oh, you're making this consistent mistake and the experienced person can point that out. And lastly, because my fields consider alternative medicine and you're dealing with mind, body, and spirit, the best practitioners I've seen have come up with their own criteria for an objective clinical assessment. So how do you deal with treating emotions in a clinic where a patient reports they have anxiety or depression where we may see it on them, but it's really a subjective complaint they have. The best practitioners come up with their own criteria, maybe sleep or bowel movements or appetite or the pulse or physical facial color. That's how they assess their performance and their improvements, rather than just relying on what the patient subjectively reports. So once you've done this analysis in whatever field you want to become a master at, you can say, this is what the worst do, this is what the best do. You know, now we've got the best, we take them like this and we break it into the mind versus the habits. How the best think and how the best train. You can apply that to do anything in your life and I feel very confident you will become the top 1%, no doubt in my mind at all whatsoever. And if you emulate how they think and how they act, you will reach that too. So that is my own plan to become the top 1% in history in my field. And again, if you want, one of the best ways to get started is journaling. Obviously, I started doing this exercise for myself by journaling out these traits and this kind of mental analysis of what the best do versus the worst. So you can check out the first link in the description. They'll give you a free journaling worksheet as well as a journaling email course on how to use journaling to reinvent your life and has your most successful year ever. And again, you can check out my last videos also right there and there.


Fishing these remote wilderness ponds like this. It's quite a haul getting in here And that's why I wanted to try packing a lot lighter. Hopefully that'll be comfortable tonight. I think it's gonna be pretty good Kind of looks cozy doesn't it? Let's see how I fit. I think I think I'm gonna be alright


Hey everyone, Drew at GeoArm and I am back to talk to you about enabling and disabling Voice Chime on your sensors in the GeoArm control panel. Very easy to do. Go ahead and hit the hamburger icon up there on the top left into your master passcode. Okay? Select devices. You want to choose the group that the device exists within, in this case it's within doors, and I'm going to choose my front door. Okay? The Voice Chime is located right here. Okay?  That ladies and gentlemen is how you enable and disable the Voice Chime option for your sensors. If you have any questions or any comments, please leave them below. Take care. Have a great day. Please like and subscribe to our page for helpful programming and installation videos, product reviews, monitoring, products, and more. Visit www.gawarm.com or call<PHONE_NUMBER>. That's www.g-e-o-a-r-m.com or<PHONE_NUMBER>. Gawarm, the worldwide leader in DIY security.


Welcome. This is Melissa Arma with the Stock Swish and Reviewing NVIDIA. NVIDIA was the Stock Swish Show Play of the Day today and it actually was the option of the day. So I'm going to go over the day trade first. Actually now let's go over the option first. So I called back. Let me tell you what time I sent this out. The 380 calls on the options newsletter in NVIDIA Thursday. So that was last week. This was Friday. So I felt that, you know, this was going to make a pot. Could have been Friday, started to do it, made the pop today. So again, the 380 calls, you can see where it went here. We opened today roughly around 406, slightly under 406. So it was a nice move up. So if you get out today right at the open, that was almost 26 points through the strike. Now if you held it through the rally, we almost got to 420, which was insane. We didn't quite get there. High of the day today is 419.38. Again, almost 40 points through the strike. Just a tremendous move. Tremendous move for this at a very short time. Again, 24 to 48 hours. I usually say this could have done it Friday. It did it today. Today is Tuesday because the market was closed yesterday, but a nice pop. So could this still continue higher this week? Absolutely. Will it depend partly on the market? Yes. Yes it will. So this is falling right now even though we went long. This is a day trade today, which I'm going to go over shortly too. But you know, this was a call on the options newsletter, which is a long. It had the follow-through gap up today, which was the move where you would have exited the trade today. Again, they were calls that expire this Friday, June 2nd, and then we did the day trade today and we get in and out fast, which is how I always like to do the day trades. And I, you know, I get out fast, but I definitely could have held this longer this morning. Let's go over the day trade. So again, it's rare that I go long, but if I do go long and I say this in the room, you know, if I'm calling 700 shorts, you know, and I happen to call one long, you better do it, whether it's on the options newsletter or in the day trade room, because it's probably amazing if I call it a long, you know, which this was. So again, closed here, gapped up, dropped, boom, we got in this, got the rally. Again, no matter where you get out in here, and again, I thought I had a good exit in here. It continued all the way up. So actually continued up here, looks like 951 set the high, but it was a nice day trade to get in and out fast. Five minutes, 10 minutes, 15 minutes, if you held it, whatever it was, I think it's best to always do day trades quickly because you only have to four o'clock on a day trade. And obviously that was a great idea today, considering what this did, as you see right now. Again, this is a result of the market falling. But yeah, I do go long. I mean, I do the bullish golden gap class maybe once or twice a year. I haven't done it yet this year, so probably only going to do it once this year. The bearish class I do every month, because we're mostly shorting in the room. But again, if I happen to call along, then man, it is good. And if you're on the newsletter in the room, you should do it. So there were people that did this, somebody in the room, Bill told me he did not do the trade last week in the options newsletter. He missed the move overnight, but he bought calls this morning in the NVIDIA when we did the day trade in the room, which is fine too, and that worked out. So congratulations to everybody that did this. If you're interested in signing up for the Golden Gap course, the class is June 24th and 25th. That is the class for June. It's a month away. But you can sign up and get in and start trading right now and start making money even before the class, which is obviously a positive and get a feel for what we're doing in here like this trade today. Good luck, everyone. If you'd like more information, email me Melissa at thestockswish.com. Have a great day.


This scoping review aims to provide an overview of research on digital health promotion and primary prevention in settings, assessing the range of scientific literature regarding outcomes such as applied technology, targeted setting, and area of health promotion or prevention, and identifying research gaps. The results show a huge diversity of literature regarding digital setting-based health promotion and prevention, with a variety of technology types, analog, digital, and blended settings, and most commonly focused areas of health promotion and prevention being physical activity, nutrition, and sexual health. However, the articles mostly reported on behavioral rather than structural health promotion and prevention, and research gaps were identified regarding the absence of valid definitions of relevant terms, and the lack of literature on structural health promotion and prevention in settings. Therefore, more research is needed to successfully implement digital technologies to achieve health promotion and prevention in settings. This article was authored by Anna Leah Stark, Cornelia Gookes, and Christoph Dockweiler. We are article.tv, links in the description below.


Have you ever seen a UFO in the daylight? Yes, sometimes they'll show themselves to those who are ready It can be the biggest UFO on the planet and you're pointing directly at it and the person you're with can't see it And that happened with me one time with my daughter I picked her up from school and we're driving back and I could see this UFO But it was easy to see because there was a billboard there So I'm like Brit check out that UFO and she couldn't see it I don't think she was ready then another time when I had this older pair of night vision goggles My sister Tara was there and I saw this huge UFO and you couldn't miss it I don't think she was ready to see it even though she wanted to see it I let her see it and she couldn't see it I take it back and I pinpoint exactly where it is give it back to her she couldn't see it Yeah, I've been seeing UFOs the first one It was probably around eight o'clock in the summertime So it was still light out where these three came up over Franklin Mountain in formation They hovered and then took right off and there was eight of us there and we're about to have a keg party We had the keg we were waiting for the tap none of us were drinking at that point But we all saw that and it was something that stays in the back of my mind


Warriors once painted their nails to prepare for battle. Now that's fierce. Your bright nails go all the way back to 4000 BC, when Babylonian warriors used green coal on their nails to intimidate their enemies. It's time to sprinkle a little substance into our beauty routines. By learning the roots of your favorite trends, who history's earliest trendsetters were, and how to rock the looks they inspired. Sheep mass! Before it's over, you'll be asking, can I borrow that? Here are the highlights of manicure history in under 90 seconds. As with many trends, we first got to give props to ancient Egypt for realizing how empowering a little nail color can be. Cleopatra and Queen Nefertiti would stain their nails with henna, and the redder the nail, the better, because they believed the bolder hues signified more power as a queen. We can thank the Chinese Ming dynasty of the 15th century for the first nail polish manicure. They would nix ingredients like beeswax, egg whites, gelatin, and vegetable dyes to create varnishes ranging from dark red to black. Things got interesting in the U.S. during the roaring 20s when the auto industry was taking off. The beauty world took a cue from car paint, and shiny, enamel-based polish was born. Revlon became the first established nail polish brand in 1932. But one of the greatest contributions was actually made by a dentist named Fred Slack, who broke his fingernail at work. He used dental acrylic to make a fake replacement nail that looked so real, he and his brother Tom went on to patent acrylic nails. We didn't see the extent of what the manicure could be until the more is more attitude of the 80s, when nail art caught on in the U.S. And someone who wore the look better than anyone in the public eye was Florence Griffith Joiner. Flojo may have been known as the fastest woman alive, but her nails legacy deserves attention too. Today, nails are next level. We're experimenting with colors, prints, textures, and jewels giving manicures a new life. I'm here with the extraordinary nail artist, Sabella. I have seen your work.  How do you draw something so small on a nail? A lot of practice and a lot of zoning out. That's why I have your guys' finger in my face, like for such a long time, to see all the tiny details. Your work is amazing. Thank you. And I already have my nails done. So I figured how could we add some spice and add some bling to the nails?  I love it because it's a built-in accessory for your nails. You really want to make it secure. So I'm actually going to roughen up the top part of your nail a little bit. So when we put the nail glue on, it's going to be really secure and not fall off. Then we're going to cleanse it. So I'm just going to get some alcohol. I'm just cleanse the surface. To make the alcohol dry, I always like my little hand fan. It just makes the whole vibe extend. This is so luxurious. Okay, so what kind of glue is this? So this glue, it's like a really awesome gel adhesion like superglue technically. I love using it because it makes the big stones last a really long time. So it's really good. Did you say superglue? Is this the hidden secret? Is it really common to use superglue? In this case, like a lot of nail techs they use superglue, nail resin. They use a specific gel. But in my personal experience with these big stones, the superglue really makes it work. It's really topical. So when you're taking it off, there's just different ways to just file around it and pop it off really easily. But it's secure enough that it'll hold these big stones. So that's the best part. I'm going to go in and I'm just going to put a little dab of glue on the center right here. Okay, I'm going to get the stone and put it right here. So how did you get started doing nail art? It's funny because I was an art major back in the day and I loved making paintings and stuff, but I couldn't support myself just making paintings. I went to Cosmo School and I was really good at manicures and painting my whole life. I figured like, oh my gosh, why don't I just like paint tiny things on nails all the time? I love that. So much fun. So I'm just putting a little bit of glue on the corners right here just to make it super sticky to get my little brush and dab it into the glue. Then I'm going to put it down and you only have a few seconds to really move it so you sort of have to be swift. Since I filed the nail before to put our big stone on, it's a little rough so it looks really matte, but that's why I put this called protein bond and it basically helps the top coat that we're going to put on top bond to it. So I'm just going to brush around the stones. All right, so the top coat that we're using, it's called Synergy Gel Gloss from Young Nails and I love this top coat because it's stain free. So no matter what with hair color, with turmeric, with anything that you're using that tends to really stain the nail, it's not going to stain at all. Wait, this is a big deal for me. Yeah, I am brown. I am a South Asian gal. Everything I eat has turmeric in it. It's so bomb. And then my nails look so bad because we eat with our hands. So whenever I eat, my right hand will always look stained and then my left hand will look gorgeous. So you're telling me that this would not stain my nails? Game changer. So I'm just going to get my little intricate brush and first I like to do a little coat and just put the gel around the stones just to really sort of hug the stones down. And you don't want to put the gel on top of the stones because with the faceted edges, if you put the gel on top of it, it's just going to look like a globe afterwards.  Yeah, I don't want that. And I want the shine. Yeah. All right, so can I look? Yeah, of course, then. Wow. Okay, beautiful, extraordinary. So now that we're done, we're going to cure this for a full two minutes. Then it's all finished. Let it bake. It's like a microwave. I am telling you, perfect. So what's my final step? Your final step, I always love to moisturize. I always love to do a massage too. But this cuticle oil is amazing. I put different flowers in it. Look. So I feel so much more confident now that my nails are done. Do you feel like your clients feel more confident after they get their nails done? Yes, definitely. Like it really makes a difference because I always like to say, no matter what's going on in your life, if your nails are on point, your whole life's on point. Yes, you are a true artist. What is your favorite type of nail art? And if you could have Sabella do your nails, what would you want her to create on your nails? Leave us a comment down below.


Preeclampsia is associated with increased risks of developing cardiovascular diseases such as ischemic heart disease, myocardial infarction, and stroke. This study found that women who have experienced preeclampsia are at significantly higher risk of developing these conditions compared to those who did not experience preeclampsia. Furthermore, the risk of developing these conditions increases with each subsequent episode of preeclampsia. This article was authored by Mika Gisla, Anna Soverlein in Peltonen, Alavi Ilococola, and others.


Pikeville Police, Fire and Dispatch came out to Pikeville Elementary School Saturday for the shop with the first responder event for local kids. In response, Mountaintop spoke to various first responders about the event and its impact on those in need. That's what it's about, just making sure the kids are taken care of. We go out and respond every single day to responding to people in their time of need. Maybe it might be their worst day, but on Christmas time it's about being there for one another. Whether it be for us between each department and for people out in the community. The kids are the main thing. We try different things throughout the year, whether it be school projects or this being Christmas. The shop with the first responder program, both departments working together to make sure the kids are taken care of on Christmas. In 2012, Eastern Kentucky was devastated by tornadoes. Within days, people in Western Kentucky stepped up to help the people of our region. Pikeville Medical Center is a Christian organization committed to helping others, and that includes our neighbors in Western Kentucky. Our commitment goes far beyond those who come to our hospital for treatment. That sentiment is echoed from all of us at Double Quick. The need is great right now in Western Kentucky, and we know the people of Eastern Kentucky are ready and willing to help. During the season of giving, please consider donating to those who have found themselves with nothing just days before Christmas. In-person donations can be made to all Pikeville Medical Center facilities and the register at all Double Quick locations. To donate online, go to www.givetopmc.org. With community sponsors such as McDonald's and Save-A-Lot, there was no shortage of support. This is absolutely showing the love and the care of the community. That's simply, and this is exactly what we need. We need all these folks in the community to work together to make sure everybody has something during Christmas. We want people to have fun and happiness and joy, and really I appreciate every single member in the community helping with this program. Physician at PMC and the list can go over and over. Firefighter, police department, businesses here in the community all work very, very hard on making this event happen. Afterward, we spoke with patrolman Larry Thacker and Zachary Bowens about their experience helping kids. It's an awesome thing that Pap and the police department does. Like I said, it's my first year in here. I'm very happy to be part of it. It's very important. I mean, we've already got to talk to a few of the kids. They're just excited to be here just so happy. It's all age groups from young to older to high schoolers even, and they're just so grateful and appreciative of this. We're glad we could help them and do it with them. For Mountain Top News, I'm Joel Borgel.


There is value in having a lifestyle that includes proper exercise. It positively affects all aspects of your life, while at the same time benefiting you as an aviator. With a proper physical fitness program, you will find that you have more energy and stamina, whether you're on the ground or airborne. You'll have the ability to withstand fatigue while improving cockpit management and overall situational awareness. From a safety standpoint, you'll be more resistant to the hazards of high-altitude flights such as hypoxia and decompression sickness. The purpose of this module is to provide you with the basic guidelines for developing a balanced physical fitness program and customizing a workout to fit your needs. It is recommended that you see a physician before starting any type of physical fitness program. An exercise physiologist or professional trainer can help you personalize a specific fitness program. An effective fitness program consists of the following components. Warmup. Flexibility and stretching. Aerobic conditioning. Anaerobic conditioning. Cool down. Stretching. Let's review each of these components in detail. The warmup is an essential part of your workout. The warmups should be adjusted to meet the needs of the type of exercise you plan to perform. Warming up gives the body a chance to deliver plenty of nutrient-rich blood the area is about to be exercised. This will warm the muscles and lubricate the joints. The second step in your workout should include stretching. This is part of the warming up process. Its purpose is to increase and maintain muscle flexibility. This flexibility is accomplished by increasing blood flow to the muscles. Stretching should never overextend the muscle or cause it to burn. With the increase in flexibility and range of movement another important aspect of stretching is obtained. And that is decreasing the risk of injury. Your workout should then involve an aerobic activity. Aerobic exercise is any activity that uses large muscle groups. An exercise that can be maintained continuously and is rhythmic in nature. The exercise is designed to overload the heart and lungs causing them to work harder than when it rests. The benefit is when your body is later at rest you'll have improved respiratory and circulatory functions that increase and better utilize oxygen consumption. The key is to get moving. There are many different types of activities to choose from. Find one you enjoy and do it so that your heart rate is elevated for a substantial time period. The recommended amount of exercise is 3 to 5 days a week with each of these workout periods having some sort of continuous aerobic activity for 20 to 60 minutes. The intensity of your exercise program should be determined after you see your physician and have talked to an exercise or sports physiologist. Here are some examples of aerobic activities. Aerobic dance, bicycling, inline skating, fitness walking, jumping rope, running, stair climbing, swimming. An aerobic or muscle oriented exercise is not only a must for those seeking high level cardiovascular activity but is of equal value when producing a reduction in body fat. There are two primary methods for doing an anaerobic activity using free weights or working out with machines. Both methods require that you have a good understanding of the equipment. Check with a fitness instructor to obtain equipment information before progressing into a specialized program. The following exercises are examples of ways to increase your basic strength. Bench press, lateral pull down, overhead press, bicep curl, tricep pull down, squats, leg extension, leg curl, abdominal crunch. Here are some preliminary guidelines for completing anaerobic exercise. Do a minimum of 8 to 10 exercises. Involve all major muscle groups. Do an anaerobic exercise at least twice a week. Do a minimum of one set with 8 to 12 repetitions per exercise. Exercise for body resistance that results in near fatigue. With anaerobic exercise, don't forget to stretch before and after each exercise. There are many benefits from having a consistent anaerobic program. Here's a brief list of some of the improvements you can expect from anaerobic exercise. Stretches muscles, tendons and ligaments. Increases mental and physical performance. Decreases the risk of injury. Improves physical appearance. Increases metabolic efficiency. Improves flexibility.  Improves strength, balance and functional ability, especially in older adults. The specific gains you receive from exercising will depend on the muscle group used and your goals of strength and endurance. If you are interested in gaining strength, you'll want to train with more weight, closer to your maximum lifting weight. If you are interested in gaining endurance, you should concentrate on less weight and more repetitions. It's best to determine your maximum lifts and repetitions under the instruction and supervision of a fitness professional. Another very important part of a workout is the cooldown. The cooldown keeps the body active, prevents the blood from pooling in your extremities and flushes the muscles of lactic acid. The cooldown should be performed at a low intensity of effort, starting with major muscle groups. Similar to the start of our workout, the cooldown period should also involve stretching. This is very important. Without proper stretching and cooling down, the blood coming from your heart is pumped at a very high rate, which can cause the pooling of blood in your muscles and can possibly lead to reduced blood pressure, dizziness or cardiac complications. A good cooldown with stretching also helps in limiting muscle soreness. Proper nutrition, fluid intake, rest and recuperation are important factors for any healthy lifestyle. As your exercise routine increases, these components become more important. The body needs adequate supplies of these factors to function properly. Eating well-balanced meals helps to replenish the nutritional needs of muscles and aids in recuperation from your workouts. A well-balanced meal involves being aware of your intake, especially proteins, carbohydrates and fats. Most individuals who are involved in a moderate exercise lifestyle benefit from a diet consisting of meals that are 50-55% complex carbohydrates, 15-20% protein and 30% fat. However, the carbohydrate and protein intake percentages should change depending on the purpose of your exercise program. Nutrition is very important. Consult with a doctor or dietitian before making alterations to the recommended standard percentage as a food. Dehydration is a problem for most people, especially when they begin a fitness program. Exercisers need more water than ever, and if an adjustment is not made, fatigue and cramping can occur. The average sedentary person needs two to four quarts of water every 24 hours to keep the body functioning normally. Depending on the workout, the weather and your current physical status, your water intake needs will increase. More information on dehydration is included in the module Thermal Stress. It has been proven that physical fitness is a major key to a long and healthy life. It can help you prolong your career in aviation. Your exercise program can be very simple or very complex in nature. Regardless, it should fit your personal needs, lifestyle and personality. When beginning a fitness program, start slowly. The old sports saying no pain, no gain can be very harmful and should not be used. In review, it is recommended that you see a doctor before starting any type of physical fitness program. Remember, an effective fitness program consists of the following components. Warm up, flexibility and stretching, aerobic conditioning and aerobic conditioning. Cool down, stretching. Warming up gives the body a chance to deliver plenty of nutrient rich blood to areas about to be exercised. Stretching increases and helps maintain muscle flexibility. Aerobic exercise is any activity that uses large muscle groups, can be maintained continuously and is rhythmic. Aerobic exercise is designed to overload the heart and lungs, working them harder than when it rests. Anaerobic or muscle-oriented exercise is a must for seeking high-level cardiovascular activity and helps you develop and maintain low body fat. Warming up and cooling down, along with stretching, are important parts of your fitness program. Additionally, proper nutrition, fluid intake, rest and recuperation are key components of the physical fitness program. Physical fitness plays a major role in leading to a long and healthy life.


But thank you so much for coming and doing this today. Okay, first introduce yourself and tell us a little bit about who you are and what you do at Red Hat and all the other good things. All the good things. Okay, my name is Sonko Kaiser. I'm team lead for the OpenShift PSET team. The PSET team mainly is responsible for enabling accelerators on OpenShift and one prime example is the GPU. We also enabled other accelerator cards like solar flare doing this right now with Melanox. In the process of enabling those accelerator cards, we developed a operator which is called the Special Resource Operator, which is the base for the NVIDIA GP operator for the Melanox operator and some other hardware accelerators that are using SRO to enable the hardware. Last week I spoke of the OpenShift Commons briefing about some details how SRO works and how it fits with the NVIDIA GP operator. But for today's session is more hands on a demo how to enable GPUs in OKD using the NVIDIA GP operator and NFD. Okay, I have here a OKD cluster at 4.5. It's pre-installed on AWS. We've seen a lot of installations today, so I don't think we need to see another installation. We have free worker nodes and free master nodes, free CPU worker nodes, and now we need to add a GPU worker node. The easiest thing to do right now is to go to the OpenShift machine API project and look at the machine sets that we have. We have a machine sets for workers and we can take, for example, this machine set and just pipe it into a YAML. And the only thing we need to do if this machine set is change the name, change maybe the cluster machine role to type, and the important setting is, of course, the instance type. I have a pre-populated machine set here, which I use for this demo, and we are using a G4 instance, which has a T4 GPU. On AWS, currently we get either V100s or T4s. T4s are mainly used for inferencing and V100s for training. But because of the low cost and easiest of deployment on AWS, we are using a G4 instance. We can add more settings, but the most important one is the instance type. So we just create our new... Oh, I forgot something to say. Another thing we should look for is replicas. I'm setting it to two. So if I instantiate this machine set, we will get two GPU nodes because I'm later on going to run a multi-node TensorFlow benchmark, so that we have already two nodes running. So just create to get the machine set. And we are seeing we have two desired, two current. They are not ready or available. So in the meantime, when those GPUs are instantiated on AWS, we are going to do another step. So for GPU enablement, we have targeted always Red Hat CoreS or Fedora CoreS, an immutable system, container-only system, to have the Nvidia GPU operator working. And that's where we developed the notion of a driver container. A driver container is kind of a delivery mechanism for out-of-tree drivers via a container. And we are currently working for Nvidia to add Fedora CoreS support, but for now we don't have any containers available, so we are going to build our own driver container. I have a document. Can I use the chat function here to post a link to a document? Absolutely. A link so people can follow and maybe add some comments on this document. This was all a little shared on the Opusher Commons briefing last week. I already checked out the needed repositories, so I'm just going to change the directories in here. We have a folder Fedora and we can run a podman build with the right tag. It's all cached, so we don't need to build it right away and we can add it to our private repository. I explain in detail in the document how to tag the driver and how to use the repository plus the name and how to instantiate the Nvidia GPU operator later on with some settings to make it run. Let's take a look at our notes. Okay, they are not yet up. When those two GPU nodes appear, we have a heterogeneous cluster. In the past, people were manually labeling the nodes as a GPU node or as a CPU node to steer the right containers on the right node. Since Openshift 4.2 and we are currently working on adding to OKD as well, we introduced NFD. NFD is a project which exposes node features to the cluster. For example, CPU flex, PCI devices and other hardware that is exposed. So the first step is to bootstrap heterogeneity so that we know and have the labels automatically applied to our cluster without manual intervention. We are currently in the working or to adding it to the operator hub for OKD so that customers can install it just by one click. But for now we have to check it out and call it via make plus the NFD operator. We changed the branch to release 4.5 and we can just run a pull policy always and make deploy. What this will do, it will deploy NFD masters which are responsible for labeling and NFD workers that are running on the workers for detecting the features. We just need to wait until the connections are made from the NFD master and the worker. All things are running. We can have a look at our nodes. OK, one of the GPUs is coming up, but we can, for example, look at one of our CPU nodes. I'll see describe node. And what we see is all the things that is here with the prefix feature node Kubernetes.io are coming from NFD. We have here the CPU flex one feature. How we using those flags is for optimized workloads. So, for example, if you have math libraries that you optimize with ABX 512, you can steer your workloads to this nodes. Otherwise, you will get, for example, illegal instruction if you're running on a later node or on later CPU. You can extract if SLNX is enabled and for the driver container to work, we need the kernel versions that are running. We need wherever the system is. For example, the operating system release. It's a Fedora 42. So we can, by taking the driver container in a specific way, we can steer only drivers that are pre-built for this kind of kernel version and operating system to the right node. And PCI 1DOF, I don't know what this PCI vendor ID is, but let's have a look if one of the GPU nodes is coming up. I'll see describe node. So this is one of my GPU nodes, and this is the other one seeing by the age. And if we have a look at the GPU node, we are looking for something like PCI 10DE. 10DE is the hex number, the vendor PCI vendor ID of NVIDIA. So now we have all the pieces and the nodes are labeled correctly so that we can steer our NV stack on the right nodes. One thing we need to do is we have currently a wrong cryo config in this version. There's an upstream fix for that. So we need to reload cryo with some corrected config. So that's what we're going to do now to enable the hook directory. How GPUs are enabled in a container is that NVIDIA has written a pre-statue. A pre-statue is called during the run time or stages or life cycles of a container, and the pre-statue is executed just before the command is run. It mounts all the needed libraries, binaries and devices into the container. And since we are here on a non-writeable system, we have no chance to write to slash USR. So we need to change the hook to slash ETC, which is the default where the pre-statue hook is installed. We need to look for the hook steer. So this is the wrong hook steer because we cannot write to slash USR. We need to change this to slash ETC, pre-DW, ETC, write quit, system, CTL, B, reload. And we are on another, on our another node, just change the same settings to pre-statue. So we prepared the host and the node so that pre-statues are placed in the right directory, and cryo is now able to pick up the pre-statue. Otherwise cryo wouldn't find this hook and slash ETC because it will just look in slash USR. The hooks are prepared. We've built the driver container. We labeled the nodes. And if D is ready, the next step is to install the NVIDIA GPU operator. We are currently using it, going to do it via Helm. Also in the working to edit to the operator hub to have it in OKD. So later on, it would be just a click in operator hub and instantiating a cluster policy with the right settings without feeling too much around. But for now, we have to do it via Helm. We're going to create a project for the GPU operator where we can save our stuff. And then Helm install. There are a lot of settings we are setting here, which usually are encoded in the CR when they're instantiating from operator hub. But since we are overriding the driver container, we need to add stuff like platform open shift true that we have the default runtime cryo because the GPU operator works also on Docker and container D. And adding our driver repository we created before a driver version toolkit version. And we are saying we have NFD enabled faults because the NVIDIA GPU operator is also able to install NFD, but this would be an upstream NFD and not the tested NFD that doesn't reverse, which is shipped by rail and which is certified. So let's hit this and OK, some leftovers from before. I was doing a driver and a half hour ago, forgot to clean up some of the pieces. This looks better. One, two, three. OK. As you get part, we have the GPU operator running here. As you get part in GPU operator sources, we have the complete stack starting to enable. Container toolkit will install the pre-stat hook. We have the driver theme set, which is the driver container we just created. Let us switch to project. So this is the one we created before we instantiated with the right driver container so that you're running a Fedora 32 driver container. Then the device plugin is used for exposing the hardware to the cluster. And after each of those steps, we are running a validation step. The NVIDIA driver validation will just run a small CUDA application, CUDA vector app allocating memory doing some computations to verify that the driver is working. After the device plugin is deployed, we are running a device plugin validation allocated an extended resource and running the same CUDA vector app to verify that the device plugin and CUDA is still working. Custom node exporter for NVIDIA metrics. I will show later on Prometheus integration for NVIDIA and set before the toolkit is for the pre-setup. We have a bug in the NVIDIA device plugin theme set. It's not restarting on error. This is from the early days where people were not using NFD and have the device plugin running since the theme set. It will run on any node. And so the theme set were running on a CPU node. And NVIDIA decided to adjust sleep on an error, which should be fixed in the next release. We can just also delete those ports for a restart. The theme set are not running to completion. They are just sleeping here and not at first should have checked that the NVIDIA driver theme set is... Oh, it's not yet ready. So what the driver container is currently doing now, it's building the kernel modules on the fly on the cluster. The other step was just to prepare the container with some... with the source code and the tool set we need. And the driver container will then figure out on the cluster when it's running the kernel version. Install kernel devil headers and other tools that it's need for building. And then build the drivers and the kernel modules on the fly on the cluster. Okay, one minute. Okay, wait 48.99. So this is good. So let's just look for the other driver theme set. Then let's get part. And we'll see logs F to start. Device plug-in, the device plug-in validation is going to be restarted. It's completed. Logs, you can see that the test path is done. We can wait for a restart of the NVIDIA driver validation, but we can also delete it. Make it faster. Of the logs of the NVIDIA driver validation should also say test path. And the complete stack is completed for the paths that should be completed and all the other paths are running. We can now look again at the nodes. I'll see this scribe nodes and one of the GPU nodes. Just to have a look on the exposed send it resource. You see here, we have a capacity of one GPU and allocatable of one. So we are now ready to run a GPU workload and a port allocating this extended resource. This I have prepared a MPI workload which runs TensorFlow distributed by Horowitz. Pretty simple. We just need to deploy the MPI operator which creates a CRD MPI job. We can instantiate a CR with an MPI job. It's all documented and linked in the document I shared. And let's just have a look. It is deployed. Okay, it's running. Next time I should switch the namespace. But as we see, we have here a launcher, which is the part that launches the MPI jobs and for each node we are getting a MPI job on a worker running. Let's just wait for pulling those images. They're pretty big. Then we can take a look at the logs that they're actually using a GPU and doing some training. Okay, what also works with GPU is auto scaling. You can create a auto scaler that references this very machine set that we created here.  The NVIDIA GPU operator will take care of installing the NVStack. The NFT will label it so the operator knows where to deploy all the pieces and the workload can run. For all the steps that are needed for this one, I linked it in the document I just shared. Let's just wait. But maybe this would be a good pause to answer some questions if there are some questions coming up. Actually, I think you're doing a pretty wonderful job of doing this and not a lot of questions are coming in. However, the document that you shared with the nodes, I think a few people are having some technical difficulties getting into it. I'm wondering if either after this demo, you can make this into something that's more public than the Google Doc so that we can have access to it maybe somewhere in the OKD repo or wherever Christian and the team think that. If there's something that's more publicly available, I'm happy to share it and update it as we are proceeding and adding all the parts that I have mentioned here that are still work in progress. So there's this great hackMD.io tool, which is like an etherpad, but it uses Markdown the same way GitHub does. You can actually store it in GitHub as well. And that you can put permissions on there similar to Google Docs, but it's more collaborative and more open. So maybe that's a good choice. Otherwise, a PR to the OKD repository would be super. Yeah, that's what I put it in the hackMD. We can all hack on it and add to it and get our feedback on it. But I think the long like getting into the docs, how to configure GPUs and stuff like that eventually, I think is a not long term medium term goal. As well. So we tend to do a lot of documentation by blogging. So we can clean some of that up. Yeah. It's a red hat hat. Yeah, maybe I should do a OKD GPU blog, but since I'm covering a lot of the... Yeah, maybe I should do it on the OKD. There are also some documents on how SRO and the NVIDIA GP operator work internally. If you're looking on an open shift for how to enable hot accelerators, there are several parts describing what a driver container is, how to use entitled builds, because SRO was always a template for hardware vendors to enable them because most of the steps will always repeat, like enable the hardware with the driver, which is a driver container, because as you can deploy a driver container on Reddit Core, as Fedora Core, as REL7, REL8, even on Ubuntu. So you don't have to fiddle around with the host because we said from the beginning, don't touch the host at all, keep it in a container, because then it's far easier for operator to pull those images or update the drivers and with the conjunction with NFD, we have all runtime information there to easily tag or pull the right container into the cluster. And then after the driver container is deployed, we have the device plugin, which exposes the hardware. Then we have the note exporter, which exposes metrics. And we also had in SRO a custom Grafana, which also exposed a GPU dashboard. And Nvidia is currently thinking of adding this as well, so that they have maybe their own Grafana dashboard just for GPUs and their metrics, what they have, because it's far lot of metrics that they can expose, like NVLink metrics, then if you're doing multi-node, all the stuff that you're bent with from node to node, and then all the GPU metrics and alerts, if you're overheating, if you're not using the GPU because they cost a lot of money. So a lot of stuff that can be added to the GPU operator, so we are still working with Nvidia to add the features that we already had with SRO. Besides that, as I said, there's always this template repeating, and we've developed SRO in such a way that you could just templatize. It's all templatized. You don't have to write any go code to enable another exorator. And that's what we've done with Melanox, for example. To enable RDMA, the only thing we supplied is a custom CR or some manifests, and the operator takes care of it, ordering state transitions, RBAC rules, and stuff like that. So we are at the end, TensorFlow Run here, GPU Workload Run multi-node with MPI and Horowitz distributed. And that's the end of my demo here. Awesome. I'm happy to answer any other question if they came up. Oh, I think... Is it... I'm not sure whether... Can you boot into the OKD dashboard from here? Just a... And on the screenshot, proving out that it is actually deployed? That is what deployed exactly. What that means. And it's tiny, tiny font that you have in that screen, so... Yeah, yeah. It's just a second. Yeah, that's okay. And you did make it look easy. So hopefully we can get this documentation up and accessible somewhere so that other people can test it out. A couple of people who tested it out. So Joseph Meyer, who is, I think, the next speaker, he's done that. He's done the document and made it run on his cluster. Our next speaker is, I think, Justin Pitman is coming on board next. And then Joseph will be on after that. Yeah. Yeah. Justin's going to try and attempt to do OKD on over and using IPI, living dangerously on the edge. Yeah, I just wanted to say this has been a feature that has been requested a lot of times, actually, in the working group meetings. Not only by Joseph, but I think others as well. So it's really great to see this works because we weren't able to definitively say it works as if nobody had tested it out. But that's super great to see. If you're supposed to be seeing your other terminal, we're not at the moment. Marco. Yeah, I'm just trying to log in to the console, having trouble. Let me just get me this thing. We'll be monitoring metrics and DCGM. So DCGM is the data center monitoring stack of NVIDIA and is GPU temp, GPU utilization, for example, run queries. And we've seen here that we've done some work. So the metrics are working, workloads, parts, all projects. We were in GPU operator resources. There should be the TensorFlow benchmark launcher. And if you look at the logs, we see the same logs we've seen before in my console. TensorFlow running. What else? I don't know what else to show to prove that it works. I think you've actually done something pretty awesome. And we're really grateful that you took the time today to come and join us. So I know we'll probably hook you up with a lot more questions afterwards. I'll join your email and your contact information. I'll put that out there on the working group. So if people have questions, they can reach out to you directly or post questions. Actually, that's probably a better question. Where is the best way to, if we have questions about the NVIDIA GPU and working with OpenShift and OKD, what's the best route to asking those questions? I'm on the Kubernetes slack. And email is always a good way. And I would say slack on the Kubernetes or email would be the fastest thing to ask questions. And then if there's some other problems that are not related, I can steer the people to the right context if something is missing or we need to do more work. But I'm tracking all the work upstream of NVIDIA. I'm the technical lead for GPUs on OpenShift. So any requirement, I'm happy to help get those things upstream or to have more features included. Perfect. And we're in talks right now for in October to do an ML AI OpenShift Commons gathering co-located with the GTCs event that's going to be virtual then. So we'll probably see a lot more from you and other folks doing interesting workloads here. So, you know, I look forward to all of that. And October should be a really interesting month because we'll have both that GTC event and I think we're going to try and do something with open infrastructure around OpenStack and an OpenShift Commons gathering. So we'll be busy on October and probably the ramp up to that. So also I'll share the link and chat to the video from last week that you did that was a deeper dive into it and we'll get all this up and running and up on our YouTube channel again in a playlist for today and great work. I'm totally appreciative that we all are of all the efforts that go into the Accelerator program. So thanks. So I'm not seeing any more questions anywhere. So what I'm going to ask, I put Charo on the spot. We have 20 spare minutes here about. Which demo, Charo, would you like to try? Rooksef or there was one other one, the MariaDB? Well, they need to go in order because we have to have storage to provision in order to deploy a MariaDB Galera cluster. So we'll start with the Sef operator and we'll go from there. Awesome. We're never at a loss for things to demo on OKT. Right, this is probably going to be a little less polished but we're going to do it anyway. And this, by the way, is what we do to all new employees.  Good luck. They can demo anything. I cheat sheet here. The Arata hot seat. OK, so a lot of what you're going to see here, I pulled the configuration that we're going to deploy directly out of the Rook project, which you should be seeing on your screens right now. So what you see me running here, I pulled from here specifically. Let me clear this out if you guys can see the screen on the left. The common YAML file and the operator OpenShift YAML file, those are pulled verbatim from this project. You can see the path here to get to it. And it's release 1.4. It's the latest release. I'm not quite brave enough to run directly out of master at this point. So back to the cluster that we deployed earlier this morning. You can see it is fortunately still healthy. There's a few errors being thrown, but it tends to do that in my home lab, network latency and such. So what we're going to do first is these three worker nodes that we deployed. What I didn't tell you when I deployed them was that I actually deployed them with an unused hard drive attached to the virtual machine. So it installed the operating system. It's using a SATA bus. So it installed the operating system on SDA, but it's got an SDB sitting there that is not currently being used. What we're going to do is we're going to create a SESH storage cluster to serve up block devices on these worker nodes. The first step is we need to label those nodes to give them a role of storage node. And so I just applied that label to them. If I hit a quick OC describe on one of those nodes, I can show you that it now has a role of storage node. So that's step one. We need something to tell Seth what it's going to be working with. Step two is we're going to deploy this common.yaml which, as you can see, is creating a whole lot of boilerplate that the Rook operator is going to need. And one of the things that it did was it provisioned for us a namespace, the RookSeth namespace, which currently is very uninteresting. We're getting ready to make it interesting by deploying the Rook operator. And this will take a little bit for it to bootstrap itself. The operator image right now is pulling down and installing. When the operator is up, it's going to create some workloads, some pods, on each of those nodes that bear the label so that they can discover the resources available on that node. And this will take just a little bit to run. Okay, and there you see the three Discover nodes that are spinning up now.  The cluster.yaml file is the thing that actually defines our particular Seth cluster. And again, the Rook project has a boilerplate copy of this for you to take and modify to your own purposes. This is the version of Seth we're going to be running, 15.2.4. We're going to have three monitor nodes running. I have set node affinity on those and that it's also going to be looking for a role of storage node. I've assigned resources for the various components of Seth, a limit and a request, just like you see in a typical deployment. And here is the piece of magic that tells it where to find those devices that it's going to create the Seth storage cluster on. And now our operator appears to be fully bootstrapped and up and running. So the next step is to go ahead and deploy our Seth cluster on top of that. All right, now this is also going to take a little bit and you're going to see a bunch of activity here as the operator provisions this cluster. There's the three monitor instances you just saw spin up. There's the CSI plug-ins. Here in a minute it will start actually dealing with those physical devices and formatting the storage for its own use. Okay, you see these OSD prepares. There's three of them. When they are done, they're going to go into a completed state. Once you see that completed state, then the Seth cluster is up and it is ready for use. It looks like we're still waiting for one of the crash collectors to go into a ready state, but everything else at this point should be usable. So to prove that it's usable, let's take our image registry and let's give it a persistent volume. I've created a storage class here that I'm going to apply. Its name is RookSethBlock and it's going to use the new RookSeth CSI plug-in that we just deployed as the provisioner. So I will apply that to my cluster. Now if I flip back over here, go down to storage, we should have a storage class and indeed we do. Now let's create a persistent volume claim, 100 gigabytes, because I tend to use a lot of container images. We should have persistent volume claim and the key here, you can see now it is bound to an automatically provisioned persistent volume that our Seth cluster kindly handed out for us. We can see that from the command line as well. There it is, 100 gigabytes. Now remember if you were watching previously when we deployed the OpenShift cluster, we gave our image registry an ephemeral volume. We need to remove that ephemeral volume before we give it the new volume. So caveat here, any images that you had put in between, you're going to lose those because we're yanking away the storage. You will have lost them anyway because this is an ephemeral volume. Going to put our registry back into a managed state. We're going to tell it to use the persistent volume claim, registry PVC. We're also changing the rollout strategy of this to a recreate. Because I created a rewrite once volume, the rollout strategy that comes by default is not going to work because it will try to do a rolling deployment. I need this to tear down the first instance and create a new instance so that it doesn't try to violate the rewrite once policy. So we just patched it. If we log back into our cluster and look at the image registry, there we go. We have an OpenShift image registry that's creating and should be binding to that persistent volume claim. So I'll pause there. Any questions on that? I know that was pretty fast. I think you're doing pretty good here. All right. I will now deploy a MariaDB Galera cluster. It's going to be a stateful set. What we're going to do, we're going to deploy this stateful set right here, which is going to create a three-node MariaDB Galera cluster from a customized image that we're going to build and push into the image registry that we just created. The first thing we need to do is build our image, which is the official MariaDB repository. It's going to install 10.4. Our Docker file looks something like this. So we're going to do some things to set up a MariaDB. The real magic happens in this shell script that is going to be run by the image when it starts up that actually provisions the MariaDB cluster, detects whether or not a cluster already exists, if it's the first node in the cluster, so forth and so on. I've got a short tutorial written up on this that you can see, so I won't drain it here. We'll just do the fun and pick it off. The first thing I need to do is make sure I'm logged in. I'm in the right cluster. Important safety tip, always make sure you're logged into the right cluster. I need to expose a route for the image registry. What I just did is I patched the image registry operator to say create a default route so that I can externally get to my image registry. Then I'm going to use Podman, and I'm going to log into that image registry array. It succeeded. Now I'm going to do a Podman build and build our MariaDB image. You see I'm grabbing the route from the image registry to tag my image that I'm getting ready to build so that I can push it to the directory. It generally doesn't run that fast. I ran this just a little bit ago to make sure it was going to work. That's why that build went so fast because it had already actually been built. All it did was add a tag to the already built image. Now we'll push it to the registry. Now our OpenShift cluster in its local cluster registry, it now has our customized MariaDB Galera image. Let's create a namespace for it. Create a service account. We're going to create a service account for MariaDB. The reason is MariaDB is picky about its UID. It's especially picky if it restarts and its UID has changed. It tends to get upset. We're creating a service account and we're actually going to run this privileged with this new service account. So that it can run as any UID. There is likely a better way to do this and so I am open to suggestions. Now I'm going to apply a config map that actually contains the MariaDB server.CNF file. By using a config map to do this, I can modify the configuration of my cluster without having to deploy new images. I'm now going to apply a couple of services. One of them is a headless service that allows the cluster to talk to itself on the necessary TCP and UDP ports. And then I'm going to deploy a load balanced service that will allow applications to talk to the cluster. I'm not sure why that's taking so long to come back.  So I'm going to deploy the stateful set and what you'll see in the console is a ordered deployment of the MariaDB stateful set. We should see this PVC. PVC bound. Now we have persistent volume and you see the first node in our three node Galera cluster is now starting. So just pause just for half a second. Someone's asking, Frank's asking a question. He missed the very first part of your Rook operator installation and he says he has no Rook operators with his IPI based cluster installation. Is the operator hub filtering operators based on UPI, IPI installation choice? Maybe clarify that for him. Okay, good, good point. I actually deployed the operator from the command line because it doesn't show up in the operator hub. See? Not there. Not sure why. It may be one of the ones that we need to, as a working group, add in. There's a community version of it on operatorhub.io that works with generic Kubernetes, but I think we need to do some work. I think it's one of the ones that's on the priority list for us to work on as a working group. Yeah, and that's why I deployed it by using the operator configuration that is provided in the Kubernetes set examples in the Rook project itself. All right, so our second cluster node is coming up and he's doing ordered startup and an ordered shutdown so that you can gracefully stop and start this cluster and it will retain its state. And when this is done, we have a three node MariaDB Galera cluster that is a full multi-master database cluster running in our OpenShift with provision storage. Wow. Well played. Thanks, Charo. That was pretty awesome. I think, and I keep emphasizing in the chat, too, is, well, some of the operator work is the next things on the roadmap that we're trying to get folks to work on. So getting some of those default operators from Operator Hub into Community. We'll be working on that. So you've filled the time very nicely. Justin Pittman's here and he is going to try and outdo you on bare metal.


If we think of the traditional plagues of human beings over the last thousand or more years, we realise that some of these infections came into the human population at the time we started more intensive animal agriculture. Or when people came together in communities, measles virus as a case in point, measles virus is really very similar to rindipest virus, the disease of cattle, which has now hopefully been eliminated worldwide. We celebrated that several years back. The increasing bringing together of animals in larger numbers, together with human beings, as is now happening in Africa, as we seek to develop that resource for food production, does pose threats because there are a number of diseases in wildlife, some of which we know, some of which we don't know, which could be potentially amplified by the human-lifestock interaction. And that's why it's particularly important for ILRI and for various state and national governments to be aware of this and to be probing and testing for it. And of course, with modern technology, with genomics and PCR-type techniques, we can move very quickly on that. And that minimises a potential threat, which could be a global threat because these things can go globally very rapidly if they happen to jump from animals to humans and then spread rapidly between humans. We haven't seen that recently, except of course in the well-known instance of the influenza A viruses, where components do come in from wildlife or from domestic animals to infect us. And the 2009 H1 influenza outbreak was a case in point. But it's something we need to be constantly watching as we realise that there are many more infections out there that could potentially damage us. The Ebola outbreak was a case in point. This is a virus which comes across from bats into primates and or humans and as we know, can cause devastating epidemics.


Welcome to the Kaiser Permanente Clermont Mesa Medical Offices located in the heart of San Diego County. All design decisions for this state-of-the-art facility were guided by our mission to put the Kaiser Permanente member at the center of their care and enhance their health care experience. Let's take a closer look. Because we believe that a healthy environment leads to better health outcomes, we took great care to create a functional, beautiful, environmentally friendly, cohesive campus. Reflecting Kaiser Permanente's commitment to the environment and to being carbon-neutral, this facility's design includes a planned solar array that will offset 100% of the baseline electrical load. The building uses LED lighting on the interior and exterior as well as landscaping with drought-tolerant plants that create natural ventilation in the front porch areas to reduce energy demands. Medical services offered at this new facility include adult primary care, allergy and allergy research clinic, complete care management, a family medicine residency program, optometry and vision essentials, and pediatrics including pediatric endocrinology. The building also proudly houses the John Richards Developmental Clinic for evaluation of children with ADHD and school challenges including learning difficulties and behavioral issues impacting school performance. Other services available are laboratory services, a pharmacy, imaging services, and a cafe on site. Let's head inside. Upon entering, you will be in our public square. Here you will have several options for checking into your appointment. If you've not already checked in before your visit using the KP.org website, you may check in at our main reception desk, on one of the self-service kiosks, or at one of the reception staffed floating check-in stations located throughout the public square. Once you've checked in, you can see real-time information about your appointment on one of the many dashboards located throughout the public square and front porch areas. They will show any wait times and the directions to proceed once the departments are ready to assist you. The time beforehand can be used to have a healthy snack at our refresh cafe or to visit our courtyard to enjoy the outdoors. If you choose, we will send a text to your mobile device when your appointment is available. As a next-gen medical office building, our high-tech exam rooms offer a wide array of tools to enhance your patient experience. The design of our exam room puts the members at the center of care. Key measures including weight and blood pressure can now be done inside the exam room using high-tech chairs for additional privacy. Large monitors have been installed in every exam room to view quick educational videos during your short wait. They may also be used to video access our Kaiser Permanente Interpretive Services to personalize your care further. These monitors are also able to mirror what the physician or staff member sees on their computer so they can share it with you directly during your visit. And as always, following your appointment, you can log on securely to kp.org to view notes from your office visit, test results, or future scheduled visits. Thank you for visiting the Kaiser Permanente Clermont Mesa Medical Offices. We look forward to serving your healthcare needs and helping you to be well, stay well, and thrive.


It's I'm Corbin. I'm Rick and we're in a car. Yeah, and it's raining This is weird for you the the tightness of the shot the the lighting Sorry, wait, we just went to our first Indian film since the pandemic happened in a theater Experience yeah push-pa the Tolugu film starring a lu Arjun and sprinkling of Fafa just a pinch of Fafa. Yeah, but So the reason it's right here is because this theater is not really close to Rick or I house And so we wanted to get and it's also late And so I wanted to get to you as fast as possible And so we wanted to do it here so I can just go home and edit and upload and that would be it So that's that's why this is it if it's this is weird for you. I'm terribly. Sorry This is just we wanted to get to you as fast as possible, but since it's new we're gonna do Mostly non-spoilers. No, so non-spoilers just in case you are gonna go watch it and whatever And then maybe we'll get into some non-spoilers at the end, but it's I don't know. I don't actually have the IMDB in front of me So I can't actually the director right give director cinematography and all that is I think his name starts with a nest I do a public and and is the story creator and screenwriter as well but we're very excited to see this from the trailers and I could tell you probably safely that we were both probably pretty disappointed Rick you feel like that. Yeah, what what makes you say that? Yeah Yeah Without I don't want to give too much away Although there are some parts of it I did like and I actually enjoyed part of the theater experience because one of the three we actually got this for the first time Like when like whistling and cheering a little our hero on the screen We had people whistling and cheering. Yes, they had like when he did some cool stuff stylish moments That was so like I've probably probably enjoyed some moments more than we would if we watched it at home Absolutely sound is better in a theater the overall experience with everybody So that was really cool and there were some parts. I did enjoy it, but overall I think with where it fails and you can tell me if you agree is they marketed this wrong All right. Yeah, the trailer doesn't even come close. You thought this was gonna be like RR like action-packed I'd say there's less than a fourth action in this entire thing. Yeah It's mostly dialogue or a I think a pointless relationship agreed like right I I agree and I'm I hate that I had to say it because I was actually very excited to see this I was too, but I feel like I was thinking that while we were watching it I was like I enjoyed the trailer more because I thought the trailer was what this was going to be and This isn't what the trailer conveys they they marketed it as almost a KGF, right and right actually towards the beginning I was actually enjoying I was like, okay cool. We're in for the you are June first 20 minutes I was like, okay, here we go a big action star Yep, and I actually got this for the first time because a lot of people talk about this what there's their favorite stars They're very stylish, right? Yes, a little Arjun in this He's nothing but style. It's all style, right? And so I was actually enjoying that and kind of like in KGF He's he's very stylish in that and he does a lot of these these over-the-top things. There's no physics Nothing. Yeah, nothing believable in in KGF Like this action parry and there's a story and it keeps you engaged correct this thing man It dragged. Yeah, and I I just one why would you market it that way? And what you could have cut an hour if not more out of this it's three and feels like five. Yeah Yeah, it's it's it's so disappointing Yeah, I really wanted to enjoy this so that I was doing everything Enjoy it and then at about the two hour and 15 mark. I was just I had given up and okay, so that's that's the piece It's it's just did the guy next to me. He took three phone calls during the movie Like three or four times yeah, and so that's that's probably the biggest issue with this film one It's it's way an hour to an hour and a half too long way too long like they could have I think because there Some good parts like there was some good action parts that I was like, okay good Let's stick with this keep driving with this and they don't they just go to some different thing either with the pointless love interest Yeah, or to a bunch of dialogue that I'm like, okay I thought we already rehashed this part like twice already Yeah, and they just keep going back to it and like I just I think you could have cut an hour out And you could have literally made it like all fun Jungle defying physics fight scenes save god Here's how you could have saved time and money cut all of the sequences where you used bad CGI for logs in water That that happened way too much. Honestly, you could have cut the entire love relationship Yeah, that we didn't need that even though I thought the actress was good I'm but it was like almost pointless the entire thing and also the relationship was a little problematic Like yeah, it was it was I'm not gonna give anything away because I was in the non spoilers But it was like a little strange the way they built this relationship. It was It gave me the feeling and none of them are this long But like this will probably be appealing for people who are just fans of This style and of him in the same way that like you could never talk people out of loving Jean-Claude Van Damme or Jason Statham They're gonna the fans are dedicated. They love it.  Yeah, that's what's gonna happen with this movie Yeah, I definitely say so, but I even think some of the fans that were in there. They were really excited I feel like a lot of them got bored. Well, God, there was a lot of getting up Yeah, there's a lot of getting up and it was quiet It was quiet for most of the film outside of a few moments And I thought we were gonna get a lot more action scenes in this. Yeah, because that's what it Promoted it. Yeah, it almost promoted like it was either KGF or our arc. Yeah, I'd say of the three hours. There was probably 25 minutes of that of action. Yeah And people don't go into John Wick expecting to see a lot of dialogue and acting from Keanu Reeves They go into see headshots and some cool stunts. Yeah That's why you go into these films and so I feel like they didn't know what kind of film They were making and I know India has these Missala films But I feel like you there's got to be a structure to it right at least at some point Yeah, I mean, okay, so the things I did enjoy I thought a little Arjun and what he did I thought was like he did what they wanted him to do Yeah, I thought it could have been a lot better if they would have shortened it and made him just a Stylistic star that was kicking ass the entire time, right, but they didn't stick to that No, and it was really incongruent to to see him be the stylish Kick-ass dude who's quite boyish with well, I didn't find it to be charming I found it to be incongruent. Yeah when he's around the girl. Yeah. Yeah, and I thought even though it's again I thought the story was pointless. I thought the girl did well And and all that and I the songs they were good. They were in they would like But it was like by the here's he was the issue with a lot of the good parts by the time they came I was like, okay, exactly Exactly, so I was like that's a little song with Samantha really sexy song Sexy song rate number and a couple of cool moves in it, but by that point you're like, yeah one of the credits Yeah, and like you had a couple good Songs with the girl and then at the end there was this cool song that I think if we watched it alone We're like that's a really cool song would have loved that last thing as a standalone. Yeah I think they're they're good good songs. Yeah, but it's like by the time you get to them You're like, oh my god I mean at least I enjoyed this five minutes of the song Yeah, cuz like it just drags man, and then by the time we got to Fafa. It's like it was like I Was actually hoping when they do the reveal on him It was just gonna be the end. Yeah, and then it just continued and even with Fafa. I was like, oh Great. Yeah, and I like they built it up to this second part. I'm like why You literally could have just had the good villain the entire time. Did you I got to ask a question This is a slight spoiler it's not because you guys know that this is part one Yeah, but there's a there's a moment when it said second interval It's at the end yeah cuz they want you to know that this is part one they're reminding you again But when it said second interval, I thought another intermission Yeah, totally agree. So but I thought it's Fafa, right? But they one they had this weird overdubbing thing. Yeah, which you know, I kind of accepted towards the beginning but That it always takes away from the performances for me But I wasn't going into this film expecting like no crazy performances Fafa did well obviously Fafa doesn't do bad But it's like by the time once again by the time he came on I was like well I wish you were here in like the first yeah two hours I'm not kidding. I'm not kidding. Mm-hmm Daniel Day Lewis could have walked onto the screen and I would have went oh cool Man, it's it's it's it's disappointing. Yeah, it's cuz like I wanted to really enjoy this film Yep, I was excited for it I was in also like the the even though the cinematography was nice It didn't come across as nice as it did in the trailer correct like cuz I was expecting to be blown away by the visuals The way I manned in Sanjay Lila Bansali kind of films right but it even though it was nice It didn't blow me away. No, I remember commenting on how beautiful the lighting was for day shots on the trailer Didn't convey in the big screen. Yeah, and it was like it was nice But it's not it wasn't like I was expecting to be encapsulated by the visuals me too of it all and that wasn't there Yeah, it was It's weird man, and I'm sorry sorry if you guys are mad at us for this and like, you know We hate to luga even though that's not true at all But it's just no but I will say if that's a particular thing That's the vein in the same way that I mentioned like you have the kinds of films that are adjacent stathom film or or Because those aren't just action films or Jean-Claude van Damme Yeah, they're a very particular kind of action film that strains credulity and which is fine. It's fine If that's what you like I Just I wasn't expecting this to be that kind of So it adds the disappointment. I would have been totally fine if this was all like the big like, you know Pushing people 25 feet by you know that I would have actually been totally fine I was like, okay, I'm in for this right right we're in for the ride Man, there was barely any of it. It was like they had like an hour of just boredom in between each thing Yeah, and it was just it's not what it advertised and that was just it was disappointing Yep, it's like if we went into RR and they barely had any action I'd be disappointed. Yeah, cuz you're what you conveyed to me was that you're gonna bring me fun Action, right and that's what that's what I wanted and you just that's not what I got. Yeah Yeah, yeah, sorry guys. Sorry guys But you know, let us know what you thought about the film and if there's a This is our first a Lou Arjun film, but he wasn't really the issue with this film No, in fact, I don't have any complaints about him. I think he did what he was supposed to do Yeah, and he was I thought he was stylish. I thought he was like you I mean We actually didn't get a great dance number from him, which I was hoping for no But they were fun and you know, I liked him But I wish the filmmaking would have helped him in the film love like not being three hours long Yeah, that could have helped a lot a lot. So, yeah That's the review guys Well, it was our first time we're actually gonna be going to the theaters a lot here and thankfully yes with you know Jersey 83 are coming out and all of that. So we're gonna be going back to the theater So that's very I was glad to see it was mostly full. That was mostly our little tiny theater Yeah, we know spider-man just came out That was good to say so let us know what you thought about the film and what should be the next a Tolugu film that we watch down below