What's up everybody Jason here for jazby's case breaks calm We just sold out jazby's nine box moonshine baseball mixer random teams on our website again 30 total spots Everybody gets a random team name. I'll be all card ship. Hey, there you go So this makes you include one box of 2020 tops chrome sapphire all the way down to 2020 leaf autograph baseball and then there we have a 2019 Bowman draft sapphire. We also have 2020 select We have Ginter chrome. We have tops black chrome and a box of dynasty as well pretty strong little mixer here So good luck everybody. Let's roll the dice And we got ourselves a one and a four or five times So the customers that bought in straight up are right here from Brent down to David the rest won these in mini Select mini number 30 and 31 gave away. I believe 18 spots over there Or 16 spots, I just say sorry And then here's the teams so it was a one and a four or five times. Good luck one two three Four and then five four Jack down to David all right a five times here one two three four five Astros down to the Philadelphia Phillies So Jack with the Astros Andrea with the Giants Brent with the Marlins waltz with the race Christopher the D-backs Kyle Jack with the Red Sox Brad with the Pirates Margot the ace Tyler you have the Mets Daniel with the White Sox Sean with the Reds Kyle with the Orioles Ryan with Indians Richardapolis with the Braves Daniel with the Dodgers Kevin Benedict with the Angels Ryan Cruz you have the Cardinals Oliver Smith with the Nationals George Cobb with the Cubs Alfonso with the Brewers Collin with the twins Chris parent with the Tigers Daniel you have the Yankees Steven with the Padres Chris brother Rockies met Arnold with the Mariners and Royals Daniel with the Rangers Richard with the Blue Jays and David last by Mojo Phillies So if anybody wants to trade guys maybe guys Some time about a minute or so We'll go grab a cup of water. So if you guys wanted to give each other some trade options do it now And if not, we'll stop the trade window close it Back in the 90's Nothing late going in the first half James Washington makes a catch breaks a couple of tackles and this point is It's 11 of it for you see the numbers in their career. We're leading by 14 points rock the win essentially Well We will watch you just try to get on the board it's What they did Box running That's it In the ball Take the ball. Where's the ball Steve? Where's the ball? Rock has stopped John, I think we need an explanation sir Not here what we need to bring in after we solve the ball clock was stopped so we just clocked the ball We will wind the clock on my ready Okay, then now there's no cable now Smith you see But Chris was like, I can take the ball right? No you can't I got the ball My time was not pleased Does it matter if the flag was on Pittsburgh and the half kids is two Probably all right All right, so what are we gonna do guys Barber All right, let's just close the chairman of them Pete the teams that people want it looks like either not responding or they're denying it. So Matt Arnold's gonna keep the Mariners, which is no problem. I mean, hey You have chances at some really nice hits, right? So Keep your teams guys try to trade couldn't trade module Let's see if either the Marlins were to hit because if somebody was interested in A's giants Who knows? All right, we're gonna go start off with the elite box first We'll work our way to some black over here. I wouldn't say this is 2015 The first 2015 released to feature prospect veterans or retired players in college uniforms Pittsburgh What damn chris did you see you got two spots in the filler and you actually won both spots I thought you said you got two spots in the last filler. It looks it looks like you won both of them It's pretty strong man. I went two for two So Matt Clark almost passed them Milwaukee first base as it says right there Milwaukee brewers that's going out of the phone. So I think they were first up for trade, weren't they? Got a rally here of Jose Abreu, which I believe is a second here, I think I Don't know mark. I want to say that they probably will because looking at it now the the Washington football team and and the giants are like they're pretty much two games up on us because I mean, it's only a game and a half, but it's actually two games because Because of the half game, but yeah, they're pretty much up by two full games And a half so I'm assuming that I think they think that What's it gonna hurt now if it hurts was we're to go in and take over if he does well great The only other thing is that I I think he'll probably do a little bit better than once at this point in the season, but I mean, I don't know if that line's gonna really protect them. He still managed to get sacked like twice Yesterday you threw a touch that which was nice, but he also threw an interception too.  I think in the beginning they kind of held it off because they still had a chance to go to the playoffs and You know, they were running away, which is fine That is steven moya for detroit, but now I think that they're probably figuring it out Well, you know what why not give it a shot see how he does um And then we'll see what's gonna happen for next year Yeah, I mean he's always gonna get the blame the quarterback always is he hasn't played well I don't think it's all on him, but you know It's just he's in a tough spot I think the eagles are also in a tough spot because they also have to still pay him for the next two years and Looking at their salary cap if they Don't trade him and try to cut him. They're gonna lose a lot of money. So it's kind of be honestly Unless someone shows interest in them, which I think people will People will show interest in them just because you can't fully evaluate them with the type of team the eagles had around them um so I mean it like the only good thing about Hertz is that he's a rookie So even if he does take over guys I know it's going to look wrong that the rookie's going to start over the 30 million dollar man, but At least in the books You're not paying Somebody like 10 15 mil to be the backup. You're only paying them about a million or so To the salary cap because that he's a rookie. So it's not going to look too horrible But I do honestly think people are going to give interest in them And hopefully it does. I think at this point He's just had a pretty rough career to start off. He had that one great year his second year You know, like I said without him leading us to a first round buy You know, I don't even think we win in the playoffs to be honest that home field advantage was big Comes back next year kind of struggles gets injured And then last year takes over what outfalls right behind them Starts off a little shaky, but last four or five games just takes over right and proves to you why he's the number one Make the playoffs.    All right, let me look at group rate checklist because I think we're gonna go by the checklist for this break Or for this box. I should say sorry And this is leaf ultimate draft But that holy rodrigo should be going to seattle mariner. So I believe he has a prospect of them But yeah, I think there's more to just the eagles players. I think the management Some coaching I don't blame all the on duck piercer. I just think that there's no offensive coordinator that he has And no quarterbacks coach. So I think you need to shake it up a little bit. So like I said, it's just more than just karsten wenz It's the line um It's just the lack of production from a lot of a lot of positions So I think there's gonna be some house cleaning this off season. Okay, so I have the checklist here guys Give me one sec And yes, holy rodrigos is mariners and I'll drop this checklist for you guys too Yeah, I guess so mark. I mean, but The one position that you need to have established to win in this league is a quarterback And not that I don't see it in jail and hurts. It's just um I guess I just have to see him play a little bit more, right? I think I've seen enough of Of herbert to to say that about him But I just think now it's uh, the charge is just better um They better protect that dude because If he doesn't get well protected, it's just gonna waste the waste career I actually liked your lot to be honest, but jerry jones 15 out of 25 I just think uh, I don't know what it was. I didn't really watch the game this past week, but Um, I just I don't the players just don't want to play for him anymore Uh, so jerry jones is pirates I mean, trust me. I got value. I mean, I'm a big herbert fan in general So all my herbert cards are not for sale whether I make money or lose money But I've actually made money off of them if I wanted to sell them. I bought them so cheap early on I'll be forced to starter But like I said, I'm a big herbert fan. I'm a big ore index fan. So To me it's not gonna hurt my valley because it's invaluable to me But that's how it is with rookie quarterbacks guys You have to sell in the season And the rookie year because unless they turn out to be a patrick mahomes You know or I like to use this as an example as karsten wednes did his second year and you know It was pretty much mvp. His cards were at the peak. That's when you should have be rid of them because Unless they're gonna continuously do that every single year like patrick mahones You're never gonna get as much money back as you did the originally the rookie year or Like the peak of it Like I said, um ever's in prayer Best time to get rid of a rookie quarterback is his rookie season if he's starting and when he's killing it like right now Last week, of course, this past yesterday was a downer, but I don't think it's all gonna affect his prices too much But I'll tell you what guys if um if tua Yankees for this one if tua's team makes it to the playoffs and they potentially win a game or he does play well enough People are gonna kind of forget about her for a little bit just because his team's on the playoffs But if you're in it to sell herbert sell now In offseason his stuff is gonna drop just like everybody else It's gonna happen We got 12 out of 50 chris mcman Do you think he's overpriced?  I believe Believe you're a broncos fan too, right? But you know like I said, you just have to sell now. I don't know I just feel like that's just the way it is if you're trying to get maximum value All right, so that's rockies for chris Football is to me it's compared to like basketball when it's in season and people players are performing Sky's the limit. It is it is it's crazy I mean look at what herbers with stuff we're selling for before Before um Pirates for this one as well before he started, you know, I mean But again, thank us and the pandemic for getting customers back into the hobby Because if it wasn't for that guys This hobby wouldn't have exploded like it did this year And I think people are gonna hear are gonna be here to stay for the hobby. I think they really like it the way it's evolved Like I said a lot of customers I hear of kasey martin xrc 101 printing plate Um nothing compared to what they started off with when they first started breaking kasey Kasey martin's fillies. Yeah guys. I was the same way. I had a lot of one stuff back in 17 I got rid of it. I made some good money And uh, I don't regret because I figured that was his peak right there Unless he was gonna be Patrick with homes over here Yeah, I feel you guys and I mean it's gonna drop a little bit. Well, I mean everything drops in off season too I think a lot of people witnessed that in basketball I think a lot of people that didn't know this hobby once basketball shut down for the last month or so Everyone was like why is Zion stuff is tanking the market's tanking Everything's tanking. I'm like dude. It's off season. People are not people are not worried about the basketball right now They're worried about football right now, you know But It'll go back up again It'll go back up again The thing is that it's applying to man You know, you might have been one of the few bronco fans here this year, right with us Now there's probably another 10 more bronco fans, you know, and then just around the world We're in the united states. They're now in the hobby now.  It's it's grown a little healthy Since the pandemic and I think they're here to stay because I cannot tell you how many more places I've tried to open up in this LA area and do breaking now or do like personals and everything like that You know, but yeah, it's it's good though. It's good for the hobby. Like I said There's more than enough out there for all of us In this hobby So the more people that buy into this The better prices we're gonna get You know All the charges. I know mark. I did put you and you and your girlfriend A good amount man. So that's awesome I love the stuff though guys I don't honestly gamble as much as I should but But I love the hobby in general.  I want to say I would be honest, but I think uh The only thing I can ever say is that and I'm not trying to be like, you know coffee or like that But the heat kind of tells itself So You'll know when I'm really excited because I'll raise my voice just a little bit You'll hear you'll see my hand shaking. That's more of my excitement I'm not really one to just yell And just scream I just don't like to do that, but I'm glad I do pool heat because I probably Probably a horrible breaker by the pool heat We got a duvon and I have no idea. This is my first time seeing this But out of 99 there you go Gala. Wow, this is some really nice stuff I was I just thought this and then like premium stock Hoops coming out this wednesday Man smart decisions chrome everybody loves chrome Chrome is like the best now blackman refractor Oh, you know what I remember that chronicles break those two in the same in the same one right same break What am I looking for here? Is there how many autographs are in this box? Is it just relics or autos to it's a refractor there Hudson look for chrome autographs It's just chrome autographs Chihuahua refractor Green clements or clements are Like Is there autos are guaranteed right gotcha gotcha. Thanks, man. Stuff is nice though AJ puck There you go Well premium stock hoops is coming out on wednesday guys and i'm really excited for that I looked at the quality control photos from penny Stuff looks nice I actually can't wait if they actually have marvels. Do they have marvels? Do you guys check that out? Can someone look that out for me? Do they have marvels in chrome? Like premium stock because if they do that That's gonna be nuts Really nuts All right, another one of my favorite products that just recently came out is this one right here Tops chrome on black bangers It is called premium stock hoops, uh basketball. So basically hoops With just optic feel chrome feel For nano tautis jr. We got a rookie shogo and a chris brine refractor And how about a david right autograph for the mets? Tyler with that one It's pretty big at one point right guys david uh david right a lot of injuries though All right next one 2020 select and I hope they have marvels in there Yeah, premium stock feels like really nice though Yeah, original hoops hobby will always have that little special Special warm feeling to 2020 collectors or 2019 20 collectors because Hoops is usually the first product in their mba uniforms But like I said, you bring in that chrome that optic feel To premium stock it's it's just gonna explode But also bring it back eminence basketball for the first time since like three four years Ah that is crazy Like eminence used to be the most expensive product. It was a $5,000 box Back in like 2015 when it first came out. I remember me and nick were like $5,000. Are you kidding me? That is so expensive and then A year later in 2016 tops just dropped the whole transcendent at 20 000 plus and we're like We're like what the hell's going on here? And I was like, yeah eminence coming back now $5,000 is probably not what's gonna cost now because The hobby has dramatically changed You know because $5,000 box that's like nt boxes now for basketball So I figured eminence is gonna be around 10 grand Is that galleon rookie? We got a Brock work got you a super jumbo bowman draft and I'm torn I would say hold on to it man And if the prices just continue to skyrocket and you feel like you're gonna want to buy one in the future I always just say why don't you rip it because you're never gonna find it at that price again, right? Gary Sanchez I'm gonna be coming in early guys super jumbo or for a bowman draft jumbo logan allen I'm thinking that we're gonna try to do a close to 24 hour stream probably so I'm starting at like seven in the morning Breaking from seven to like 1 p.m. Till joe gets here Boba shot to 199 Very nice Blue jays that is going to uh, Richard Miller and lance lin to 99 whoa playing young kim this looks like that uh Little packs they did for football select Tri-color james paxton silver clean kershaw And we got a dustin may relic for the Dodgers And adrian morjean a little relic here mookie Dodgers edition as it says law sands will start at the bottom to 149 laddie silver party of solar and hunt your dojo All right, guys, so let's uh, let's do this 2019 bowman draft and we'll go to top's chrome sapphire And we'll do the little baseball and then we'll end it off with dynasty. The adley ruchman is a big one in here, right? These will all be penesty for you though. All right guys JJ goss rookie or sorry bowman's first wearing shoemaker One or franco fridderer cj abrams first JJ bladie revero Quintana Schultz we got henderson to 99 And we got christian santana for the dodgers to 50 shunks slayton grumbell Fitzgerald Wyatt polio rodriguez mcconnell Why We're off the mount 24 24 24 24 45 seconds And you get a stop You get your orientalizes They do it at the half top That's so That's super That's super That's super That's super That's super 27 Since All right coolio guys guys leave all that for you guys All right, let's go with tops chrome sapphire 2020 Uh, yeah, eric.  So yeah, if you grab the calves, that's the last spot Like I said, if you grab two or more teams, you have a chance to win up to $500 a break credit But five winners of a hundred bucks So basically the more entries you have the better odds you have to win some money But five out of the 15 total possible entries if there is 15 entries We'll have a shot to win some money. It might be less entries. It might be 13 Might be 12. Who knows? Depending on how many people actually bought two or more teams. All right, you guys good luck And we got Abraham Thoto autograph very nice Dylan Cisricky And we got Garrett Cooper for the Marlins Brent out of 25 I Look Yeah, if you guys want to try to fill up that little filler to unlock the football mixer plenty of time still tonight guys Like I said, I feel like we can definitely do that football mixer And if we do that tonight then we sell out Oh Oh Oh All right guys two boxes left autographed baseball edition and again This will go to the team that they're currently on our teams are clear for the longest unless there's like a Dodger emblem or something on the baseball then it'll go to that team, but Should go to the teams are currently on We'll play for the longest and it actually says the name of the player at the top of the baseball Let's see if anybody right most of this is Hall of Fame 83 guys We'll skip the little mic for tonight. Just so I want to have more time to Break open that mixer Hall of Fame 83 What team has got play for So play 15 seasons that MLB guys play for multiple teams actually with the third baseman in the first baseman Hall of Fame 83 That is George Kell Which I will show you guys really quick. He's also part of the Hall of Fame born 1922 actually is not with us anymore guys passed away in 2009 but Did play for multiple teams, but the team he played for the longest is Detroit seven years with Detroit Played four years with Philadelphia plays three years with the Chicago White Sox Boston Red Sox and two in Baltimore But the majority of his careers was in Detroit And it's probably looks like it's prime because it looks like those years. He was like all-stars And was MVP and most of these right here as well So there you go Detroit Throw Tigers on a crisp parent. Alrighty sweet Alrighty and the last box guys not last but not least could be potential monstrous hit heat hiding Good luck. Oh, it looks like a Chicago White Sox pinstripe. Come on Luis Robert. Come on Luis Robert No, that's C. C. Sebasti. Wow. It was actually blinded That's actually Yankees pinstripe C. C. Sebasti a six out of ten actually look like White Sox there for a second So there you go Yankees that's gonna Daniel very nice hit right there strong And there you go guys that was the mixer This was the nine box moonshot baseball mixer on Jasper's case breaks calm.  So I'll top it all this guy. So appreciate you guys Jasper's case breaks.com


we're down to the wire here night of the demon trash or treasure it is treasure i'm voting treasure too yeah besides the fact that the budget wasn't there to pull off a movie with this type of idea it worked for the most part it worked yeah it was a very enjoyable movie very intriguing and it kind of got the point across right it's a fun movie you know like the kills are fun the mystery is fun the plot is good would this movie make a good remake


Another question I hear often is, what if I don't have any spiritual leaning at all? And I'm not religious. Oftentimes people put religion and spirituality together, and I don't see that they go together really. And I can see why it is that we put them together. It's just not really a fully accurate way of looking at either of them. Religiosity involves dogma. It involves belief systems. And it's nothing wrong with them so long as they agree with you. Where we get out of sorts, or we may even outgrow a certain belief system, we may find that we're actually building resistances because this is something that we were told as a truth. So I was raised in the Catholic Church, and I didn't go to Catholic school, but I was raised in that environment, and have a great affinity and understanding of what it means to actually have the beliefs that are steeped in church. But that actually doesn't say who you are or what you are. And we don't necessarily need a church or somebody else's dogma to answer those types of questions. The spiritual questions are, who are we? What do we hear for? What is this journey about? That is very different than just a religious belief. So whether or not you have a spiritual leaning really doesn't matter. I'm ordained as a minister in the church of all faiths and spirituality and health, and my background is a master's in theology, not because we need to be theologians, but because, as the Greek said, it's really the opportunity to know thyself. And it's the study of the self that ultimately brings us to an inner peace.


Another one is to reduce GST to 10% over three years. That's on your website right now. That's not what the manifesto currently says. That's what your website says. Well, it might say that, but that's not a current manifesto statement. Well, who writes your website? Well, someone who's not authorized to say that. Someone's hacked into your website. That is not our policy. It never has been. We also want GST reduced to 10% across the board. Well, on your website, it says to reduce the rate of GST. Our policy was to oppose it in the above 12.5%. So you're not promising to reduce GST, no? We're saying that our policy has always been GST at 12.5% maximum. We also want GST reduced to 10% across the board. They said that GST at 10% was written in stone. That is not our policy. It never has been.


Hello, I'm Bob Sione from the Institute of Utah, Salt Lake City, and we're going to talk about vitrectomy for cataract surgeons. So why is it that we occasionally need to do a vitrectomy? Well, several things can happen either before, during, or after cataract surgery. The most common is intraoperative vitreous loss, due to an iatrogenic, iatrogenic pusher capsule tear, or zonular dialysis. However, sometimes we know there's going to be a problem even before surgery because the patient's had trauma to the zonules or caps or bag, and that invites vitreous to come forward, or they may have some disease or congenital conditions such as pseudoxfoliation or Marfan syndrome that allows vitreous to come forward through weakened zonules. So why do we need to do a vitrectomy in the first place? Well, vitreous in the anterior chamber is just not a good thing. It can cause an implant to be de-centered, it can cause an implant to tilt, and cause refractive error, it can misshapen the pupil and cause glare, it can cause chronic inflammation, cystoid macular edema, retinal tears, and retinal detachment. So in general, vitreous does not belong in the anterior chamber, and if during surgery you find it there, you should get it out of the anterior chamber. So what are some of the general principles for vitreous management during, in the face of cataract surgery? Number one, if you have nuclear pieces or an entire nucleus that falls down into the vitreous cavity, never chase it. Let it go. You can put an implant in, in front of it, you can suture to the iris, suture to the scleral wall, put an anterior chamber lens. Just make certain that the vitreous is not in the anterior chamber, close up, and you can refer that patient later to a vitreo-retinal specialist, or if it's the entire capsule or bag of nucleus in an elderly patient, that can probably even stay safely and not need to be removed. Second principle, never let the anterior chamber shallow. If you have vitreous that is starting to come forward, and you allow the anterior chamber to shallow through, let's say, a leaky incision, or an instrument that's going through an incision that's too large, you'll find vitreous come forward very easily, and then it's starting to come out of your incision, and that complicates the issue. Thirdly, never perform a wex cell sponge vitrectomy. If vitreous is coming out through an incision, you can carefully identify it and quickly lice it using a wex cell and a Van S. scissors, but you never want to wrap up vitreous around a wex cell sponge that tugs on the vitreous base and is very likely to cause a retinal tear and subsequent retinal detachment.  Doing so allows egressive fluid around your retrectomy cutter, and with a fluid will come vitreous, and it just promotes more and more vitreous prolapse. Triumph sinolone helps to identify vitreous in the anterior chamber. Vitreous can be invisible, and several years ago, a former partner of mine, Scott Burke, identified that putting triumph sinolone into the anterior chamber is almost like throwing a sheet over a ghost. It's suddenly identifiable and easy to manage, and we thank Scott for his contribution there. When you're doing vitrectomy, you want to pull the vitreous posteriorly, not anteriorly. If you pull it posteriorly, there's less stress on the vitreous base and less likely that you're going to have a retinal tear at it felt. So those are the general vitreous management principles. All in all, probably the preferred technique for vitrectomy is pars plana. Why is that? Because you are pulling that vitreous posteriorly. It's much more stable for the vitreous base. You want the vitreous to be in the vitreous space anyway, so pulling it back into that space instead of anteriorly where it doesn't belong is a safer procedure. It's definitely preferred. You don't want irrigation down in the vitreous space though. You want it in the anterior chamber. When performing a pars plana approach of vitrectomy, you still want your irrigation anterior to the iris. This is a slide that was given to me courtesy of Steve Charles. What are some key points from performing vitrectomy, either through two small incisions in the anterior chamber or through the pars plana? As you're making your sclerotomy, you clearly visualize your MVR blade in the pupil to make certain that you're through the uvial tissue in addition to the scleral wall before you place your vitrectomy cutter. You want to visualize your cutting port at all times and always move the cutter towards the vitreous. Don't pull away. Any pulling, any tugging on the vitreous can cause retinal tears. Never use aspiration without cutting if vitreous is present at the tip. There will be some times when you can use aspiration without cutting and we'll cover those times, but not when there's vitreous present at the aspiration port of your vitrectomy cutter. Always use the highest cutting rate available. You'll see in some of the video that the cut rates are as high as 4,000, which is now available on some of the machines such as Centurion and some of the cutting rates are lower, such as 800 from some of the older machines such as the Legacy, but whatever the highest cutting rate is available is preferred. Here's an example of things done wrong. The surgeon's name has been cropped out, so we can protect that identity, but we'll run through some things that could have been done better in this case. You see it's a very dense lens and tri-pan blue is being used, but it should have gone in before the viscoelastic was put in. It stains the capsule much more, much better than when you try to place it after viscoelastic is already in the eye. When making a groove in these dense lenses, you want to make a groove a couple widths wide. It allows better passage of the sleeve of that fecotip so you don't push the lens around too much and so you can get a deeper groove that is easier to crack. You can see the surgeon wasn't able to get a very deep groove and despite all attempts it's not able to crack this lens completely through the posterior plate and that's just going to make things more difficult. The surgeon is working more peripheral in this lens material and as you can see the fecotip is punching through the back portion of the lens not only engages iris but probably when it was back there it's very likely that it hit the posterior capsule too. So if there's a possibility that the capsule is open you do not want to pull suddenly out of the eye. What does that do? It allows the chamber to collapse and when the chamber collapse vitreous comes forward and as you can see we have a large opening in the posterior capsule vitreous forward and once again the surgeon comes out of the eye. Instead a better technique would have been staying the eye turn irrigation off and put viscoelastic in the eye to tamponade any further vitreous prolapse. And now the vitrectomy is being performed but it's being performed through a large incision so you can see vitreous material and fluid coming out through the large incision around the shaft of the vitrectomy cutter so no matter how much vitrectomy is being performed more vitreous is coming forward. Ideally you want to make a second side port incision and use the vitrectomy cutter through that side port incision and once again the surgeon is doing the same thing removing vitreous through that large incision when it really should be done through a side port incision. Now you will get away with it but it's going to require a lot more vitrectomy work and then it's necessary and it's much more likely that you're going to leave vitreous in the anterior chamber when it where it doesn't belong when it's done in this fashion. An anterior chamber vitrectomy is fine as long as you keep that vitrectomy port behind the iris plane most of the time. It might occasionally need to come anteriorly to remove some vitreous strands but in general you want it to be behind the iris plane. You can see that the attempt of placing this three-piece lens failed the first time partly the reason was that the surgeon was trying to get it into the ciliary sulcus right at the get-go while incision. It's easier to place it into the anterior chamber first and then manipulate it behind the iris. The surgeon is trying to manipulate the haptics behind the iris. It's a difficult maneuver to do so. Another way to do this is to grasp it with MST forceps while it's in the anterior chamber and manipulate the haptics behind the iris still holding on to the optic and then bringing everything forward. So this is actually a video of me doing this technique showing you a better way to place that three-piece lens preparing for iris fixation of those haptics to the posterior surface of the iris. And then each haptic can be sutured and we demonstrate this in another lecture but I just show it for completeness here. You can then place that needle around the haptic through the iris, externalize it and tie the suture with a seeps or not. The surgeon in this particular case is using a mechanical technique to fixate that haptic to the iris, not the best manner to fixate the haptic because the width of the cornea is interfering with getting that knot down tight on that haptic. And although the lens will center nicely at the time of the procedure, there's a higher likelihood that with it not being quite tight that implant may rotate and down the road and have some late dislocation. So here you see the surgeon back to the original case placing the haptic behind the iris and using the mechanical technique suturing the implant. Again, seeps or technique would be a better procedure for this, a better way to fixate the suture. Final detractomy is done here as well and you can see going through the large incision more vitreous comes forward and now there's iris prolapse that is encouraged by the vitreous prolapse. So once again I know I'm hitting it again and again and again, but please don't do your detractomy through a large incision. It's very easy to make a very small stab incision that's appropriately sized for the small diameter of the detractomy cutter. So this is a patient with a posterior polar cataract and they had an opening in the posterior capsule and I'm showing this video to demonstrate how you can prevent vitreous prolapse. So there's a large opening and notice that I'm using an appropriate sized INA tip and before I come out with the INA tip I'm going to fill the eye with viscoelastic while the irrigation is off that prevents vitreous from coming forward and then make a side port incision a small appropriately sized incision for the smaller bimanual INA tip and then we can very safely remove the remaining cortex without inviting vitreous prolapse. Once the chambers fill with viscoelastic we're going to then put in a three piece lens and capture the optic the haptics are in the sulcus the optics in the bag and that optic capture creates a seal so vitreous won't come forward. Now the second case is a patient that had late dislocation of a large single piece PMMA non-foldable lens and notice once again we made two small incisions so there would not be fluid egress along the shaft of the vitrectomy cutter. The vitrectomy cutter is initially brought into the anterior chamber where vitreous is forward and then it goes behind the optic to remove a layer of vitreous that is is resting just behind the optic. The optic is too large to create a capture so the vitrectomy cutter can be used to open the capsule or opening. Once the capsule or opening is more appropriately its size we there should then be able to keep the haptics in the sulcus prolapse the optic through that larger opening and that will create a seal between the anterior and the posterior segments and you can safely come out of the eye remove viscoelastic place myocall the myocall is there to not only reduce pressure postoperably but more importantly confirm that the pupil rounds uniformly meaning that there is no vitreous coming forward. Now this video shows that paris planavitrectomy approximately three millimeters posterior to the limbus or behind the implant and this is my preferred technique irrigation anteriorly vitrectomy posteriorly and that pulls vitreous back behind the eye along the vitreous base so you don't have that increased risk for retinal detachment. This last case is is demonstrating once again vitrectomy through a two anterior incisions notice that the vitrectomy port is posteriorly this is with an older machine but notice that now the cut rate is at zero so once vitreous is free you can turn the cut rate to zero and remove cortex if vitreous comes forward you immediately turn the vitrectomy cutter rate up again remove the vitreous and then when you go to remove further cortex you go back to a cut rate of zero and remove the cortex like it acts like a bimanual INA handpiece so you can go with the cutter on and off and that allows you to clean up that cortical debris in a safe manner without tugging on the vitreous. So in conclusion the trectomy can be performed safely by the anterior segment surgeon if anterior foetrectomy is performed do not use the main incision you should make two small incisions that are appropriate for the size of the instrument and that will prevent further vitreous prolapse. Parsplain of the trectomy is preferred because you're pulling that vitreous posteriorly that challenges the retina at the vitreous base less and when possible if you have it accessible try and sit alone injected into the anterior chamber will help stain and identify the vitreous so it's easier to see so you can be certain you remove it in its entirety. I'm Dr. Sione from the Institute of Utah in Salt Lake City, thank you.


you've only experienced that sort of cold like side of them for the amount of time that you've been dating them. And then suddenly you get this crazy, crazy person who's wanting to connect with you emotionally, just zero to a hundred. And that scale, that zero to a hundred scale, it's a good thing to look back on because it may be that they do feel those emotions and they do want to connect. It's just overshadowed. They can't see it. They can't categorize it. They can't put this on. You know, they can't feel the emotion at a low level and say, oh, you know, I'd really love to connect with someone like that. As I said, get them in the right environment. Pow! It all comes out.


Good morning. Good afternoon. Good evening and welcome to another edition of get ops guide to the galaxy I am Chris short executive producer of open shift TV, and I am joined by the one and only Christian Hernandez. Hello Christian How are you today, sir? I'm doing well. I'm doing good. I'm Excited because I'm wearing a tecton shirt. I just actually so on brand. Yeah. Yeah on brand, right? Yeah, so exactly So doing good doing good. We're back. We took a little break from from streaming to do kubecon to do the Get ops con right and so fails for those of you who Grab that playlist. Yeah. Yeah, if you grab that playlist drop it in the in the chat We did get ops con we did a day zero event for kubecon That went absolutely amazing far beyond what I expected and hoped for All of you out there you guys are awesome even with the digital fatigue even with the Meeting fatigue you guys stayed on the average three hours. So that's a long time for someone, right? That was a long time for you guys to be To be sitting at a computer and watching talks even after all the digital fatigue that we've been feeling so Which is part of the reason why we took a break, you know during kubecon and just that way you're not just inundated with stuff So so we're back right and thank you everyone who who attended get ops con and Chris is gonna drop a link in the chat. Yeah, I got a playlist take up the place. Yeah. Oh, yeah, I'll take your ticket Too many tabs, right too many tabs exactly This week so this week I'll be talking about application sets and app of apps design. So I'm first. I'm gonna do let me show my screen, right? So let me get this up and running I It's never where you think it is. Okay, of course not. No. Yeah helpful. Yeah, so let me know when you see my screen Is that yeah, it's been good. I got cool So I can't talk about Application sets without first talking about app of apps so in So let's talk a little bit of more about app of apps If you if you Google app of apps is the first hit. So This is a this was a now. Yeah. Yeah Well, it's kind of weird not seeing an ad first, right? So that's that's how you know, this is very specific So what's app of apps, right? So in the show description It starts off with the chicken egg problem. So that the chicken egg thing is Okay, well, I have all these applications I want to deploy in a get-ups fashion, right? So like I'm I'm using Argo CD. I'm doing get-ups. I have all these applications. How do I? How do I bootstrap in a get-ups way, right? How do I get my applications? Bootstrap deployed and managed in a get-ups fashion, right? And this is what I'm gonna make this a little bigger But if you don't see it's And let me drop this link here as well because it's it's a good read It's the It's what we call app of apps pattern. So since Argo CD Deploys only just it all essentially is it's doing it's it's applying YAML, right? Or it's applying manifest, right? It could be we we always assume YAML. I guess most people use YAML, but I mean, I guess you could also do JSON, right? That's a valid Manifest right that that Kubernetes takes so you have that all since all it's doing is applying YAML then The The manifest for the application is also YAML, right? So the the the idea was basically saying well I'm gonna create an application that does nothing more than just deploy applications, right? So it's an application of applications, right or app of apps, right? And here in this in this little diagram You can see How that works basically, right? So you have an application that says hey deploy this application this application this application that application and then And then it'll go ahead and deploy Those manifests, right? So then this does two things, right? It's really dead simple to bootstrap meaning that I can apply one manifest and get my entire You know infrastructure cluster up and running with one manifest and then you kind of also kind of by By extension you get this convenient a watcher app for all your applications. So So let's say here in this example like someone accidentally deletes the guestbook application well The application that deployed that application says hey, that's missing Argo CD then redeploys it.  So it for those of you who don't know what that is. There is another I Did a stream about resource hook and sink waves and things like that. So Let's drop that playlist Red dot HT.  Yeah, right. So I think I have that as a short command Oh, do we have it? We have it as a bank command. That'd be cool. So Yes, not this nice. There you go. Let's say if not there should be um, I just need to change that arc that link But yeah, yeah, well, no, that's yeah. Anyways, well, it it points to the same thing So we well, it's funny is me and Chris had the same idea, but we create a different Bitly links for it. It points to the same thing. I know at some point someone's gonna come along and trample your get-ups thing So I gotta yeah, yeah, exactly. So it's good. It's like those those Instagram people is like, this is my backup account, right? Except this is for bitly, right, I guess the tech the marketing equivalent of that Um, so yeah, so sink ways if you have you haven't if you haven't seen that I did a stream about that You get that as well since it's it's nothing other than just an application either place other applications Another ways the people tried to solve this problem was with helm, right? So they actually did a helm they created a helm chart of a of a Argo CD application, right? So they they kind of laid it out there Right as a as a standard helm help template helm chart, right? And they They parameterized it, right? So they basically made it parameters saying hey And this was kind of a convenient way to quickly stamp these out Right kind of stamp the saying hey, well if I have one application to many companies Too many clusters and I have any clusters to find like how do I do that? You can do that with app of apps or you can do that in this helm fashion where you just kind of say You provide your values.yaml file And then you can just quickly stamp them out like one, two, three, four classes, right? So, um So that was another way of of Of doing this, right? And this is kind of it was a It was an interesting way to solve the problem And so the some of the maintainers of Argo CD says, huh Why can't we just that built that into Argo CD, right? So, um So they came up with something called application sets Argo CD, right? Let me google that. I'm doing this is very Oh, yeah Yeah on the fly On the fly Well, I'm doing this very, um, what do you call it Andrew style, right? Like I'm just kind of show you how how I look look things up Yeah, um So this brings you here, but actually there's an actual documentation site here. So I'll uh, I'll bring that over Here to chat And so The application sets is meant to make this a little bigger. Oops wrong one I was like my discord screen got a lot bigger. I'm like, that's the wrong one. Okay Um And so, uh, I got application sets. So the idea what the application set is essentially a um A graduation or a a a uh, the the next iteration of what application sets work It's just like, all right, let's since everyone's doing application sets and these home charts. That's kind of Mixed things things together, right? Like actually just make this a thing. So they call that an application set so an application set is nothing more than I would like to say an application factory, right?  So it's kind of like a like a You know, it's like Everything yeah sound effects money counter going yeah money counter going and it and it spits out applications, right? So it's it's um, it's a simple. It's essentially a templating agent to create applications, right? And so, um before I go into Like how to like how to define it and you know, how to use it Let's go to there's this, um Use cases every go so there's there's a few use cases, right? Um That it solves here. So this It gives you the zoom in like one more notch if you could just one more notch. Yeah Is that good? I didn't change the graphic size There we go. There we go. Okay Um, so yeah, you got the little argonaut right here. So essentially you got a a team working on a git repo They think you have argo and then you can stamp out your applications in You know, kind of like a hub and spoke and this is kind of the example i'm gonna go through it in a little bit Is um, I got a central argo and then many kubernetes clusters and One application set one application set can manage all of this for you. And so that's the that was the um One of the uh One of the use cases right that it solves is that if you you know here It says it I think perfectly if you need to scale across large number of clusters and automatically respond to the life cycle of new clusters So it's essentially hub and spoke management model so another one let's go over here is um If you have different teams, right? So if you have like an infra team working And uh, like another another team working on like say an application team two is working on another application um You can use application sets to manage all that for you, right? So it's supposed to be flexible to be um kind of a hub and spoke kind of design or a um, what do you call it? Um application scoped right where it's like argocd can handle You know, what do you call that? Um Oh man, it's been a long week The word is because i'm even blanking on it. Yeah. Yeah Multi-tenancy is what i'm thinking There it is It's a multi-tenancy, right? So it's meant to handle that as well. Um and then um You know, it's also uh supposed to be handling things like uh self-service of applications, right?  So, um And so with application sets There are things called generators right and so um Here in this if you go to the generators it'll list them um There's different types of generators. There's one up up and coming that I'll explain. Um at the end uh, there's one that's um list generator And then um, I'm going to go through this really quick because I actually have examples to go through here and I have a cluster gen cluster generator um uh and then Hold on uh the git generator the git generator actually has two sub um generator categories is uh one called a directory and one called a file Right, so there's three main there's three main generators. Um List cluster and git and git has you know a sub sub generators, right? So let's go over um um Some examples here that I have if you guys want to here I can hard link that in the chat as well. So let's Um, let's go over to vizier studio right initial studio code Let's look at the definitely blow that up dude blow that up. Yeah, okay I don't even know what I have the set to Okay, so there you go This generator Here we go Is that good? Maybe one less How's that? How's that look? I know noreen Uh, noreen's on us now. Yeah, is that yeah let us know if if I if I go one up or down here So norenda have a question. Uh, oh, yeah. Yeah, what what is the difference between multi tenant and multi cluster? Yeah, so um, which is very valid point. Yeah, it's a very valid question. Yeah So multi tenant means it usually means that you have one cluster But many users in that cluster and they don't necessarily know about each other, right? So you have like this is the idea of like a centralized cluster um Where you know team one is working on an application and team two is working on another application and they don't actually Necessarily know about each other. I mean, I guess they can right? It's the central cluster in your team, but um plus up on size, please Just one plus, okay They don't necessarily know about each other that's that's multi tenant, right? So you have many tenants in in one cluster whereas multi cluster is exactly what it sounds like you have many clusters so Um, and it's not like or right you can have multiple clusters and all of them be multi tenant Right, so it's um, it's not one or the other so Application set so I have this application set. Um, this one is the list generator List generator takes um, it's a simple kind of like you're just listing elements, right? Um, you're doing essentially key value pairs, right? So cluster. I'm gonna call it cluster one URL. This is the URL of that cluster Right, and then I just go through the list cluster one plus two plus three um And that's the the generator section And in the template section, I'm just taking um What I listed up there And just plugging them in kind of like the helm template idea, right? So this is looks looks very Um, the helm helm charty thing that that I showed you earlier. This is kind of essentially that same idea They're taking those key values and just using those to populate these things also in this case My name of my cluster is gonna My name of my application is going to be Each iteration of cluster um and then When I'm building the the source repo, right? I'm taking things like cluster Right. I'm dropping it in here for my overlay and then My server url.  Yeah, it's just just right now. It's a huge how about that? Okay, there you go. All right, so let's do um I have I've already um, I have A management cluster and three clusters, right? So um like here cluster one plus two plus three, right? So I have three kubernetes clusters Um, and then I have a central management cluster that I installed argo cd on so I can you can see this with um config What does it get yeah get context? This will be hard to see so I'll just do dash o name um, I have three clusters that I'm connected to I have You know one integer and and three of them on aws cluster one plus two cluster three um See how this looks like this is yeah, that's ugly, but that's essentially what I have here, right? and so um So then I have if I do uh to get cluster, right? So then I have argo cd this clusters I think Uh Cluster list is it yeah, okay Right, I'm already let me let me clear this I've already um You know I have I already attached it right in cluster means the cluster that I'm running on Uh, so the ah, okay Status unknown is because you're there. Yeah, because I'm there. Yeah um Yeah, because do you like I'm already running here. So I don't need to add myself. It's kind of weird that does say status unknown, but um Let me go back here to the argo city and since I can see that here as well Uh clusters right I have cluster one cluster make this bigger about that. Oh, yeah Cluster one cluster two and cluster even more go bigger one more go bigger global home, right? Right like the fact there's gray space Yeah, yeah Just get rid of all the gray spaces. Um So I have this here uh three clusters cluster one cluster two cluster three right and this um in cluster This is the the one running on edge here. Um, so What ends up happening is that um when I go back to My application set is that essentially this is going to build three applications One in cluster one one um cluster two one in cluster three. So I'm going to have I have one app um called bgd deployed across these clusters cluster one cluster two cluster three And depending on where it is it's going to show different colors. So how do I What can I control click here? Yeah Yes open high trust high trust myself Yeah, right like I I think I turned that off a long time ago, but yeah, it turns itself back on from time to time. It's super When you do like an update or something, right? Right. Yeah Let me do this. No, I really meant for you to save that setting Yeah, this okay. So here I have overlays, right? So this um, it's kind of it's it's kind of hard Um to visualize this so bear with me. You may have to watch this video a few times It took me a while to kind of like piece everything together. Um, so Here so when this runs the first time It'll pick up cluster one Right, and it'll drop it in here, right? So here application sets this generator overlays cluster one so application sets this generator overlays cluster one and the change here Is there might not be a change it is blue, right? So I'm gonna have to show a blue square This for those of you who've been watching a while. This is my Yeah Application that shows the blue squares, right? Um When it runs the second time Right, it'll go over overlays cluster. So the second time is cluster two. So let's visit that cluster two Uh oops wrong file I'm gonna make it green and then the third one when it runs the third time It'll do yellow. I've added support for yellow. So it's not just blue green. It's blue green and yellow So fancy stuff going on. Well yellow and blue make green so this only makes sense Yeah, exactly. So I was thinking about Andrew was uh saying do cm yk, right? So oh god, no, we can get crazy like that Um So yeah, so this is essentially it'll create three applications. So um, It'll it'll load this it'll run three times and I'll end up with three applications So let's uh, let's do that. Let's let's have a little fun here. Um see apply get Give them examples application sets a list, right? So we're doing the list generator um, and then So go go. This is the the burr thing I was telling you about earlier. So yeah So it's doing that. Let's go to our go. Um So now here you see it created three applications boom ice Right created Here cluster one right here in cluster two and here in cluster three. So if I go to this guy here um And let's go to this guy's route I can't wait there. So there's an update on an argo cd I was actually talking to engineers today about it that anytime it detects like a route or an ingress It gives you that little external link It gives you a little icon that you could click that takes you to that route or ingress point Instead of now I have to actually click on it Wait until it loads scroll for infinity until I find it Copy it Open a new tab paste it hit enter like it it makes my life easier. But anyways, um So here it has the blue square, right? So Let's go back here. Let's look at Uh, Narendra has a question about namespaces. Um, like I'm assuming you're just using default because it's a demo kind of deal and whatever for No, there's actually, uh a An actual um, I'll answer that question Right right here after I showed but there's is that a really good question. I'll I'll show you What's going on? Um, and then cluster three we should expect the yellow. So let's look at the yellow I hope william tam is watching because this is what I have to do No, that's the that's the this is how you submit issues nowadays. That's how I submit issues I'm publicly shaming people. This is awesome So there's it goes yellow, right? Um That's how you get our fees in right? So that's yellow, right? So blue green yellow Um in different clusters, right? So I have so there's a few things going on here Um with one manifest I was able to create three applications spread across three different clusters. Um So now to nariv A nariv's question, right? So here, um Here I'm the application set actual manifest lives in a namespace called open ship get ops um here I am deploying the application to a To a namespace called bgd, right? So if I go to say here cluster one, let's make this a little bigger oops Control shift That's maybe one too many. Oh well So if I do k get a namespace Well, I can actually do here bgd, right? It'll show up Like bgd. So he actually I'm actually deploying the application in bgd here um when you see default here This is a project but in In the context of Argo cd. So Argo cd has its own concept of a project If I go over here, uh, yeah, one of the filters here Project it has a project here. I haven't created other projects inside of Argo cd. So the reason Um, that's the multi-tenancy aspect of it, right? You can create different namespaces inside of Argo and give permissions to those namespaces to different developers. So Um So yeah, so there it is So that's the answer to that. So that default project Has nothing to do with a kubernetes default project. It's kind of confusing a little bit um, but yeah, um, just because it's a project, right? Like because it's called project, right? Yeah, and also They don't behave the same either. No, they're completely different things, right? Yeah, they're different paradigms even so it's it's kind of Maybe I should do a show about that like how maybe I'm yeah How how how it differs, right? Because it is a mental shift that has to happen. Yeah Exactly and so cool. So, um Uh, so that's that's what that is there. So I deployed an application there if I go and um Delete this right Puster one for shame for shame Puster one bgd I do a foreground delete Um, it'll actually delete the the application but the application set since it's watching it Automatically recreates it.  Well, I'm gonna recreate it and so that's the um That's that, you know overarching watcher. So Um, kind of recap. It's kind of a um keep value pair to in order to build um the The application the actual application, um manifest, right? And maybe I should show the actual application manifest. So if I do k get applications can shift Get out Right, I should show three, right? Oh, and if I if I want to show, um, oops application sets, you just add ETS to it right and it shows the bg application set So if I do applications and I do, uh, you know, um cluster one bgd Actually, let me edit this so we can See as you see it just built the um application manifest based on the template so so, um This is a fair question. I'm gonna ask it Are you using Like what shell are you using what enhancements that kind of thing? Shell in In your terminal window here. Yeah Uh, I'm just using like as an ash or power line. This is actually, uh pure line Pure line. Okay, which is which is kind of like power line. So if you look at power line get familiar with that And then there's um the the only problem with power line is that it launches a python sub shell so all so, uh Anyways, what's hillary called? Yeah. Yeah, by the way, hillary cover your ears I don't want the overhead of python running So there's this there's this other thing called pure line that does everything power line does except in bash. So So there you go.  Um There is an rfv to make that any key value pair Uh, so that's out there. Um, they're actively being worked on and then um Uh A way around that today is there's this unknown Um field called values And that could be any key value pair, right like foo Equals a bar, right and then down here instead of cluster you can do things like, um, you know Values foo, right so you can kind of get around Uh, the fact that it isn't just a key value pair um, so so that's the list generator so The next one one of my favorites. Let's let's delete that. Um Let's delete these applications. Uh delete Very cool one manifest this should all go away Yes, so now it's starting to delete. So the next one I want to talk about Is the cluster generator so, um Cluster generators here we go and so here Um, let me remove some of this stuff here so that way you can clearly see this is these are my notes um Because as you see I'm learning is because this is new. Oh, this is one thing I forgot to mention chris that we got yelled about yelled at about um got yelled at about We did Yeah, so application sets Um The open ship get-ups operator is ga application sets come along with the get-ups operator. However There are tech preview. So right there we go. That's your so thank you for saying that. Yeah. Yeah. Yeah Yeah, I just completely forgot. I'm like, whoa, I should say that these are tech previews. So tech preview meaning that um You call, you know, if you have an issue you can call red hat for support, but you may not get the same support, right? It's like best effort. Um, right So it's not a fully big set of support docs and everything else yet. Yeah. Yeah, and then as as you see this is um It's still an alpha, right? So if you um if you see the first line It's not v1. It's v1 alpha one. So it's technically, you know, it's it's tech preview Yeah, it's new new so there will be breaking changes later, right? So like, you know Assume that assume. They'll be breaking changes. So, um So the cluster Generator A little background about cluster generators. So if you go here, um, if I do Argo CD cluster list or list cluster cluster list. Okay, cool. Um The clusters Argo CD has a list of clusters, right? So where does Argo CD keep that? In the database. No, this is cloud native. Um We don't want state stateful stuff. Um, we we use ecd for stateful stuff. So if you do, okay get Secrets, it's actually starting the secret. Um, oh, cool. Get ops. I'll per not a gaps operator open shift. Get ops. There you go. Oops, there we go Oh, okay, let's do. Oh, that's because your font so bad. You're yeah It was so big Greppo That's a weird kind of cookie. Greppo. Yeah, Greppo Um, so here so there's there's a secret um For each corresponding cluster, right? So if I do let me clear the screen Uh, get secrets We should get ops and this This secret, um, let's edit this here. Oops My fingers aren't where it should be. Okay edit so, um Each secret each cluster has a corresponding secrets in argo There is in the secret is data config and this config is just nothing more than the, um, cube Cube config file Um The name right so the name is base 64 encoded and the server is also This is base 64 encoded. So if I take let's just say name Right and then I do an echo Base I believe I can do right. See there you go. It's a cluster cluster one. There you go cluster one. Cool. And then, uh, let's look at the other one Right and then server Right and then we do that base 64 base 64 Right and it just shows the the connection of the right. So, um, so the reason i'm showing you the secret and the, um the fields in there is because this is what the Um The cluster generator uses right and so it'll Uh, this name right here corresponds to the name field in the secret Um server here, right in line line 26 corresponds to that server field in that secret, right? So basically it takes the secret it'll, um It'll, uh, um glean that information from the secret depending on the the the fields in the in the secret. Um That's how it it builds it, right? But how how does it know where to deploy the application, right? Um, and this is where the cluster has something called, uh labels, uh match label selectors and so, um Here I have a label. I'm saying bgd colon dev. So anything that I want to deploy the dev Version of my application, right? So here again, remember, um, I'm specific. Oops, specifying dev Um, I'm gonna label I'm gonna use that label in order to assign it right and and how do I assign it with the label is I basically label the secret. So what's gonna happen is I'm gonna label the secret Then the application says says, okay, you want this cluster to have the dev version Um, I'm gonna build it based on the information that I'm getting from the secret And how that looks is so first let's Um first let me close this because I think I've accidentally made a change. Don't save there we go And then let's let's open it up again. Oops Here we go. Um Or are we yeah, okay, so do uh apply So apply I don't want this generator. I want cluster generator and then I want, um Um application set right And so boom it's created, but if I go back here nothing happened right, so, um The reason nothing happened is I haven't labeled anything already. So And this is a good opportunity to talk about, um troubleshooting if I do okay get pods in, um Open shift get ops there is, um A pod called application set controller. So this is the one um That you want to take a look at right so just kind of To be clear application sets aren't built into argo It's actually a separate controller that all it does is that it builds application That argo knows how to consume So it's not like a um, it's not built into argo. It's just something that interfaces into argo. So That way they can have different life cycles in terms of coding So if I do a um K logs of that guy So one of the things here Yeah, so this here generated zero applications All right, so it generated simple applications because they didn't find anything. So if I do, um Let me clear the screen again Get secrets Could argo cd use only cluster labels? Like cluster and node labels. Maybe is that possible? That's a question from chat Yeah, uh, oh from william. Hey william. Um I only want a cluster only cluster labels. Can you clarify that? Yeah, just a little bit. I I cluster plus node labels. Is that possible? Oh, you don't want to use argo labels at all on this Well, no, I think do you Are you are you talking about? Yeah, I think that's a that's a separation of like you want to deploy to a specific set of nodes On a cluster. I think that's what you mean if you can clarify that. Um, yeah, we can So here, um, you know going back down this path So for those of you who are using acm. This is um analogous to Oh, okay. This is analogous to I'll I'll I'll reference that in a little bit. Uh, this is analogous to placement rules, right? So if I do a k um label Um This uh, I think I have to have to do secret right k label secret And then what um, what key value do I say? Oh bgd dev bgd dev in um Open shift get ops Right. So as soon as I label that guy, um, it creates the application on cluster three and so, uh So like this is cluster one. It should be down Cluster two. It should be down Plus three should be down, but maybe it'll no, it's not it'll it already deployed. So it um deployed the application on cluster three So if I wanted to deploy it, let's say, okay. Well, that that that's awesome. Let's go to cluster two Uh cluster two here If I label that guy Let's go over here Applications and then all of a sudden cluster two, um gets this application. So If you want to Whoever said you should get a yellow square sweet yellow square. So if you want to um, so this is so for those of you Familiar with acm. This is similar to placement rules.  All you need to do is just label the secret and then it'll go and deploy Um that application there. So now um Uh to williams question, right? So uh, the answer is no you're labeling a cluster You want to deploy the applications to that cluster if you wanted to um Deploy it to a specific set of nodes You would have to edit the manifest the actual like actually actually going here And doing uh node selectors in the actual deployment of the application. So Um, although that that's an interesting use case where it's like, like Can you do that for me? Right? Like, right? Like it'd be nice Yeah, like why not that's actually a pretty pretty interesting use case because um, I don't want to have to worry about managing my labels In each one of these like directories, right? Like right because then I would have He says his use case is deployed to a cluster with label x that has no types of gpu. The gpu is yeah Like that that and then I think that makes complete sense. Um So the answer is no and the way you would do it is just put in the deployment However, I think it's a very interesting idea because Then at that at that point I just have to Sky's limit at that point. Yeah, the sky's limit at that point, right? Like I can I can start mixing and matching there. So So there that's the um, that's the idea of the cluster generator. Um, so So the next one that's up, uh, let's um, let's delete this here Oh, one thing I do have to uh, I want to mention I do have this other one here if um If you want to target all clusters, right? Like if you just like I don't care about selectors just Put it in everything Um in every cluster that I have If you just provide an empty an empty list of the clusters, it'll deploy to all the clusters. So Yeah, William says yet another rfv. He has like so I um, William is uh, one of our telco architects And I speak to him um semi regularly There's a few rfvs that we we've come up with just by chatting about these use cases. So And also since it's alpha, if you have use cases, feel free to reach out The rgo cd team um engineers, especially the ones at red hat are very receptive like they they love these use cases right because you know You know, just imagine you're just like in a corner coding all day It's kind of hard to kind of you know, like if you're just coding all day It's you know, you don't have a chance to get all these use cases out They're very appreciative of uh of use cases and very open too Shout out shout out to shubik release that team. He's a great team At red hat here. Uh, let me see here Next is yeah, so if you want to target all clusters just give it an empty set empty set means all so All right, next one next one is actually my favorite one And it's one of the ones that I use a lot It's the let me close these because we don't need these anymore Don't say Where am I get dirt so the get dirt generator. So this is um Get hub directory generator. So this here it All it does it looks at your get repo looks at your directory structure And then just deploys applications depending on your directory structure. And so, um, Since chris, you know, I'm very Uh, I guess I guess there's no easy way to put it opinionated about directory structures Yeah um This is one of my favorites because um, all it There's no Need for like key value pairs or there's no there's no, um, there's nothing There's no logic that you need to to built into into it. It's just depending on how your Get repo is laid out. It'll lay out your applications that same way. So Hilary braided silver says opinionated I guess that's a That is a nice way of putting it. Um And so so here I'm to get basically the generator you say I'm gonna give you a get repo Right. Um, and then look in this path and you notice how there's a star Um There right basically it says pick up all the directories that you find in this path And then create my applications based on that. So I have something called, um Uh, let's see here, um, you know, it'll take path Right and base name. So base name is like built in right so path base name meaning Whatever you find in star Um, and then down here It says build me an application based on that. Um You know here i'm gonna deploy to cluster one In the namespace price list and then, um In the path that it found right so this whole this whole thing and then It'll name it based on the namespace, right? So the best way to see how this works is if I go over here Get dir generator applications. So here I have, um, how do I go here? I think I just have to Anyone from, um Octo tree that's on I have an rfv. Um, Jesus I give you a tool and you Here's the get dir generator So here I have three applications, right? I have, um an application Uh, that's just a that's a bunch of yaml, right? So this is yaml just bunch of this is my front end application All the yamls all essentially this is my front end Um, and then I have a a database which is actually a helm chart So this is interesting. So I have an application made up of some yaml that I have written and A helm chart that basically I'm just consuming a service right here in this in this case. I am using the bitnamis It's my values. There it is the bitnamis My sequel database Right because I'm going to create like to say an ha database, right? So here. This is kind of interesting I have an application that I've written Um, and I'm going to just use a database from a helm chart that I found And then I have some configuration that does things like sets up our back and sets up the The namespace You know kind of config like things And so if I go back here So here essentially since I have three directories, it'll create three applications, right? It'll look in this path It'll take, um, it'll name it whatever the base name of this path is. So if I go back Uh, so the base name it'll be prices front end would be one application prices db Be the next application and prices config would be the last one. Um, and that's how it gets the name And then the complete path right is basically everything that I found it here. So, uh, so since the best way to Figure things out is to apply it.  There it goes. There it goes Going back to our go Here so now here I have, uh, three applications right all deployed cluster one as you see here Um, there's a config that goes out Right that creates all that. Um, so that's one application, right? So that's one directory as you saw in my my configuration here So I press this config and then there is the db It goes here, right and that's the next one that that's going out and then the the front end, right? So the front end is actually waiting I have sink waves again. If you haven't caught that sink waves Um and hooks so it's basically waiting for the db to come up before Um, uh before it actually finishes deploying. So if we go to the db Um, this is all This is a lot for a database for simple database, but um, I kind of wanted to Show if I go over here cluster one if I do k get pods um priceless I have a um ha because I just wanted to get fancy and do an ha example of um, there's operators for that, you know, yeah There you go. Yeah That's right. Yeah, and so I just wanted to get fancy do a health chart for this uh database thing here for the first cluster. So um, that's how that works I have um base based on your directory structure um, it'll deploy different um Different applications based on that on that directory structure. So this is pretty cool if um, you know, this works if you have like, um Like a model repo with with all your deployments and all the So you can like in one shot just deploy that that whole that whole application stack. So Also, it's like get up some steroids and feel like right. Yeah. Yeah, exactly. Yeah, it's it's a way to um To massively deploy these out. Yeah So, um, one of my one of my favorite actually favorite things about argo is when they came out with application sets I was like, yes, this is yeah, no, I I could tell your excitement just by talking about them in chat I didn't need to see your face. I already know It's like Well, I was also talking to gerald, uh, one of the architects in canada. Um, I talk about them often on on the on the stream, but um The like I was like literally like like shaking. I'm like, you don't understand this is You know, this is a game changer and then he's like, yeah, whatever and then like a few weeks later He goes, oh, yeah, no, I see why you like these After after after he started playing with it for a little bit. He goes, oh, yeah, I could see I could see why you like this Oh, yeah, I could see why anybody would like this. Absolutely So, uh, the last one So if none of these so the last one is kind of one of those catchalls Like if none of these tickle your fancy sort of things, um, the last one here And I think we're doing pretty good on time. Um, we do have a hard stop today, by the way Yeah, yeah, so I think I think I think it's it's it's actually we did pretty good on on time here Yeah, um is the what we call the get a file generator, right? So what's the get file generator? So get file generator We'll deploy your application based on a config file you have stored inside of get So here Here is you say, okay um This repo this path right in every directory every sub directory. Yeah, yeah every directory you find in this path There's going to be a config dot json file That's what I want you to read. That's what your this is the application set does and in that file It could so in this file it can be Configured however you want it to be as long as it's valid json. That's all that's really the only um, there there's there's two prerequisites one it has to be json. So there's a um, there's a RFE to out also do a yaml, but right now it's just json And as long as it's valid, right? So it's it so this is kind of a Whatever your wildest dreams could be so Greatest over ask can the the same thing be done with docker files Can this same thing? I don't think so Done with docker files. I don't think so I don't think so that's interesting because this is argo. That's operating. Yeah. Yeah. So it'd be interesting To find out if this Can it read? Okay. Oh, I see what you're saying wildest dream Can it can it read? Uh, no For for at least for this one. No, it has to be a config dot json file like it has to actually say config dot json Or something dot json does not say be config, but it has to be valid json um, so if I go here In a look at the git file generator I have a here if you notice i have cluster one with a config here A cluster two with a config and three so if I go over here and look at this json file it's essentially I'm just building a config right name server overlay Here, this is um, if jerald if you're watching this he had kind of a rfv on this generator But I think the config dot json one would probably work would have worked as well for his use case because It could be whatever key value pairs you want. It could literally be foobar. It could be dumb equals. Yes It could be whatever you want Because all it's doing it's reading that file And then taking you know cluster dot name. It takes it actually from this config file cluster name, right? um Here cluster dot overlay is cluster overlay uh cluster dot server Cluster dot server length and then you know namespace. It could have been cluster I could add namespace here, right and then put it in there. It'll so this is essentially Whatever your wildest dreams in the rib And so uh So this this is how it builds that out. So if I go here um Here cluster one. I'll do a cluster one overlay That sort of thing. So if I go back to argo Yes, he so press this is it's up and running as soon as it's up and running. Let's delete it Since we do have a hard stop.  So depending on um Can I look at the config here? I think I can have details Manifest there we go. Um You know, it basically it um, it took that config dot json file and just added boom boom boom boom. So um So yeah, so that's the The I guess get yeah application sets in general One last thing I want to mention about application sets is you notice the generators are it's a um, it's an array So you can actually mix and match generators. You don't have to have separate generators You can actually use git dir along with git file along with right so you can You can actually use all all all all four of them if you want All at once in one application set that's they don't you don't they don't like stack on each other, right? So like you can actually override things. So you have to kind of be careful, but You can technically use use them all together. So um, so yeah, that's application sets In under an hour. So I'm gonna need some water. Um, yeah Because it was uh, not stop talking.  I should have grabbed that for the Open shift blog. I do have For some reason didn't show up We'll find it first Who will find it first? Yeah, this is probably like the last thing I want to show before we leave Flock is ticking too Let's do It was recently was it not there we go there. Found it. Yes. I found it I uh, there's there's a blog about this right? So this is the stream version of this blog that I've written So uh, check out the blog Um, I go through it in in gruesome detail um, essentially the All the different mixing matching. So Um, so yeah Awesome. I think I think we're I think we're good where we have a hard stop. Yeah 40 seconds to go. That's uh, appreciate that Yeah, all right, buddy. Thank you again. Thank you audience for tuning in and thank you everyone Stay safe out there. But everybody, please. Yep. Yep. Cheers everyone