The finishing touches to Broken Throne Brewing's Great Hall are nearly complete. Formerly known as the Blue Raven, the location will bring new food and entertainment to downtown Pikeville. Thursday we spoke with General Manager Jamie Sloan about the Great Hall. We are opening a second location in the building that Blue Raven used to be in. It's 211 Main Street. We're still going to have our tap room open down the road. We're going to be doing a little something different here. We have a stage that we've built. We completely renovated the space. We're going to be having like music and events, you know, just trying to add a little bit to the life that's coming back in downtown. Since Broken Throne's original opening in 2019, Sloan says they grew past their space and needed a new location to brew beer. Along with beer, Sloan adds they'll be serving pizza by the slice as well. And we may have some more menu options that we add eventually, but for right now, that's kind of what we're going to focus on is just doing the beer and pizza. For the beer, we have these taps behind me, so we'll have eight beers on tap normally. We have a few more taps on the other side, so up to 12 beers at a time, depending on, you know, what guest taps and things like that we might have. Here at Pikeville Medical Center's Heart and Vascular Institute, we have assembled a comprehensive team of cardiac specialists bringing expertise from all regions of the nation and the world. We have coupled that with cutting-edge technology, providing them the best equipment and operating rooms available. The result is comprehensive cardiac care for the people of our region that is second to none. The Heart and Vascular Institute at Pikeville Medical Center. Past times, the great hall will include our ping-pong, pool and music. Entertainment is something that Eastern Kentucky as a whole has lacked for many years, and it's definitely coming back in a big way, not just with us, but with several other businesses, not just in Pikeville, but Paintsville, Whitesburg, that sort of thing. Having something for people to do in their free time is so important, and of course live music is what I want to do in my free time, so it makes me excited to be able to offer that. You can catch the soft opening Friday, October 29th. Doors open at 5, with music by Nick Jamerson at 8 p.m. For Mountain Top News, I'm Joel Korgel.


SCP-001-J Object Class Keter SCP-001-J Object Class Keter Special Containment Procedures The location of Site-00 where SCP-001-J is to be kept must remain an absolute secret. To this end, Site-001-J will be guarded entirely by automated defense systems and have no living staff whatsoever. SCP-001-J itself will be kept locked in a cube made entirely from tungsten carbide, which is itself inside of another cube made of tungsten carbide, which will in turn be placed at the bottom of a 3 km long elevator shaft. Multiple Mali guards have been carefully placed over SCP-001-J and the robots on Site-00 will be prepared to replace these guards if needed. Description SCP-001-J's big, red, shiny, strangely appealing button that just begs to be pushed. SCP-001-J is a self-destruct mechanism that Foundation scientists believe is powerful enough to destroy reality itself, consisting of a circular red button set into a metal case. It looks like candy. The mechanism by which SCP-001-J operates is not fully understood, but it would be awesome to find out. SCP-001-J induces a mild psychic compulsion upon all beings who see it or hear it described to try to push it. You know you'll want to. History SCP-001-J was first discovered by President ██████ of ██████ in an elevator car. At that time, SCP-001-J looked exactly as it does now, except for the addition of a sticky note that said, if you push this button you'll destroy everything. The President managed to fight his compulsion to press SCP-001-J long enough to remove SCP-001-J from the elevator and lock it in the closet of his office. Afterward he contacted ██████, known to us as The Founder, and charged him with creating a special organization with the specific goal of preventing SCP-001-J from being pressed either by careless accident or by deliberate malice, and also with the goal of protecting humanity from monsters and stuff. Agreed, took SCP-001-J and hid it under a pile of old socks in his basement.  The millions of dollars he made on the stock exchange were used to create a trust fund that was the basis of our Foundation. Since ██████ died and the Foundation was set up to replace him, there have been ██████ attempts to press SCP-001-J. Before Site-00 relocated to Antarctica, I mean ██████, there were many near breaches of containment when Foundation personnel attempted to press SCP-001-J to see what would happen and had to be terminated. There have also been numerous attempts by the Foundation's enemies to retrieve SCP-001-J, particularly the order of the sacred button-pushers who are sworn to stop at nothing to capture and press SCP-001-J. Addendum ████, I for one think it is absurd that we still know so little of this SCP even though we owe decoration of our organization to it and allow petty fears of existential annihilation to prevent us from studying SCP-001-J. I propose a simple test. Using a remote-controlled drone, we will gently tap the outer surface of SCP-001-J. If my calculations are correct, only a tiny portion of everything will be destroyed, and the probability that we will be part of this portion is astronomically small. Dr. Blarg. Addendum ████, denied, report to the psych ward immediately. O5 ██████. Addendum ██████, recently many instances of objects that superficially resemble SCP-001-J have appeared on the internet and elsewhere. Although they seem to share the memetic effects of SCP-001-J, reality-destroying properties have not been confirmed. Researchers with the possibility of using these devices as a preventative measure against people pushing SCP-001-J has been postponed due to the number of researchers who started pushing buttons and refused to stop. In relation to Addendum ████, researchers unable to stop pushing SCP-001-J look-alikes appear to have a chronic addiction and that they are now physically reliant on pushing SCP-001-J look-alikes. The effect it had been emitted to ██████ Hospital in ██████ for Foundation monitoring. Further research is recommended, but how it should be carried out will be the subject of further discussion.


What's going on infinite family? Welcome back to another video. It's your girl Janisse. If you guys are new to the channel, make sure you hit that subscribe button and join the family. Guys, today, Isaiah and I are going to be doing a couple of things. I have to go to the mall to get some ugg loops because it is getting cold and I have like beat up uggs. So we need to upgrade. We're gonna go get something to eat and we're just gonna take you along with us. But Isaiah right now is waiting for me in the car because what he doesn't know is I am going to be pranking him. So today I am going to be randomly screaming throughout the day to see his reaction. Now, I did this the other day in the car and Isaiah was completely pissed off because I scared him. So I thought of this idea and I'm like, yeah, that's what we're gonna get him with today. He thinks we're just vlogging but obviously I have to prank him. It just has to happen. If you guys are ready for today's video, don't forget to smash that like button and comment team Janisse in the comments section below and let's get it started. What's going on infinite family? Welcome back to another video. If you guys are new to the channel, make sure you guys hit that subscribe button and turn on your post notification bell. Leave a positive comment down below for a chance to get a what? For a chance to win a shout out in the next video. That is right guys. So today we have a couple things on the agenda. First off, we are obviously in the car. We are on the way to the mall right now. Why are we going to the mall? Because I want to get some Ugg shoes, you know. It's getting a little cold so I want to put some on. You know. Do you have Uggs? I have Uggs but they're chestnut and I really don't wear that at all. Like that color? Yeah, like the chestnut color. And then I have a pair of black ones but I've had those for like ever. They're completely beat up. Like so I need a new pair. They're a little faded.   A lot of faded. All right, so we're going to the mall I guess to get some Uggs. I should grab some food and then we also have to go to the pharmacy. We have to get your prescription for your stitches. You want to tell them what happened? So like I got really scared because I thought my stitches were infected. And they weren't. And my doctor said that they weren't but I still feel like there's something like we are going out with them. He did give me a cream. I guess to like ease my mind. He's like they're not infected but if you want I can still prescribe you something like a topical antibiotic. So I was like, yes, please. Better to be safe than sorry. Yeah, so that's where we're going. Is that prescription even ready? Probably, yeah. It was supposed to be filled yesterday. All right, so it should be done. All right guys, enough talking. We off to the mall. All right guys, so we just pulled up at the mall right now. I'm excited I guess.  I don't know. I just like got excited, you know. Got the little jitters. I just got like, I don't know, sorry. Sorry, continue. All right, anyway, after that interruption, okay. Yeah, we're at the mall. Currently looking for some parking real quick. I saw a nice BMW that I kind of fell in love with. Denise didn't like it, but that's okay. I think the color was not, I was not too fond of the color. Can we talk about how there's like no parking and it's, what's it say, Wednesday? It's a Wednesday, like, and it's like an early afternoon. Where are, like, I don't work. I don't understand. I'm just about to park right here. I feel like far away from everybody. I feel like there's nowhere else to park. There seriously isn't anywhere unless we, like, go to another side or something and try to find parking. Well, I'm just about to go all the way over here. We got the Uggs, right? Let me tell you how this goes. Just try getting Uggs. Two sizes bigger than what she usually is. I'm normally a four and a half. They told me they didn't have half sizes, so I was like, okay, so then let me try on a five. Try it on a five. You know with Uggs, when you first wear them, they're like really thick.  I tried on a six and I, like, tried to, like, put my foot down to kind of walk and it was, like, sliding. And I was like, there was literally this much space in the six. I was like, you're crazy.  Like, yo, you're bugging for that one. You're bugging for that one. We got the Uggs. So now we're going to the food court, which is your boy's favorite place. We're going to grab some grub and take it to the car so we can talk to you guys some more. Yeah. We just got out the mall. We got the food, so we bought a grub. You wanna show them real quick? I'm gonna show them real quick, but let me tell you that the mall is surprisingly smoother than I thought.  If you haven't gathered it by now, I just, I just doesn't like being around people. That's, that's all it is. I don't. Like, I don't like being around people either, but he's more vocal than I am about it.  And I feel like no matter what mall we go to, it's always smothered. I hate, like, being packed and people bump into you. And I'm just like, oh, I can't. Also, a lot of the things, reason why we don't like going in public is because, like, whenever there's a camera, people automatically stare. Yeah, we try to vlog and people are just eyeing us down. I'm like, I know it's interesting, but, like, it's just the camera. They'll literally sometimes bump into stuff because they're staring so hard. And it's like, oh my goodness. Yeah, it's just like, bro, don't forget to walk. Like, you know. But let me show you all what, woo-hoo! My God! Guys, white rice with the general salad chicken, and this is looking good. This is looking good. Let's show them mine. Wait, what'd you get again? Woo! Was that necessary? Oh my God! Guys, I've been waiting to eat this for so long. Was that necessary? What?  Yes, I'm excited.  I'm not killing your mood, but that's the second time you screech today. Like, my ears is ringing. Guys, I used to work at this mall, like, in 2015, and their food has not changed. Mm. All right, so we're gonna eat in them. Are you gonna scream again? Are you gonna scream while we eat? Is you, the one over here, like, over here screeching? You sound like a hater. Anyway, you're just mad because you didn't get orange chicken and I did.  Yeah, no, I should have got white rice. I didn't know they had some. But whatever. I'm mad. We're gonna grub, and then we'll catch you when we're doing something else. Damn, this looks good. We just finished eating. I am full. What about you, babe? That shit's slapped. It's slapped. It's slapped me silly-type slap. I love the types of foods that you get, and they're cheap, and they fill you up. I don't think I told them that tray that we had. Like, your tray was $5, my tray was $5. Like, that's just crazy, that amount of food for $5. Yup. And then we also go to this spot that's like a Dominican spot, and their plates are $7, and I promise you- I forgot about that. You will be eating that food for like a week after. No, you're not lying. We're on our way to get my medicine, and I'm just super excited to, like, feel better, because- Your ointment? Don't be saying that now. It's not an ointment.  Hey! I don't got no cuts in my booty. For that rash you got? I don't got no rash either.  Don't do that. I'm just messing with you, babe. Guy, don't take anything I be saying seriously. Like, I would never air out her information like that, but that rash on your butt, you really gotta get that checked out.  You're mad annoying! We're on our way to the pharmacy right now.  What? What? Oh, I'm so sorry! What? I just saw a post- Can you stop doing that? Bro, that's the third time today. Stop doing that. I'm sorry, I just saw a post that Harry Styles was in New York City yesterday. My God, bro. Bro, we could have ran into him. It is not that serious. It is not that serious. Yes, sir, it's Harry Styles. It is not that serious. It is not that serious. I'm just so upset. Like, we couldn't go to his car. I'm upset too. Stop screaming. I'm not screaming. It was a gas. I told you to not do that. I told you that the other day, that that startled me. I told you to stop. I'm sorry. Especially when I'm driving. Like, I'm over here thinking I'm about to, like, hit someone on the side or something. I would have told you if you were going to hit somebody. That would have been a whole different- Yeah, you're going to, like, gasp and do that thing first, like, and then I already hit the person, then it's over. Okay, I'm sorry. But there was nobody around us, so... I don't understand why you're mad. Or just don't talk, that's fine. The old people's store. Right, babe? You ready for your buff cream? Hey, you better stop screaming. I don't know what to get. I haven't gotten my period since May. So we got the buff cream. My only thing- Stop saying that! I just have one thing. I cannot ask you for one thing and one thing only.  What? Can I please be the one to rub the cream on? No. Because there's no cream for my butt. I'm going to keep messing with you because you wanted to do, like, the whole screaming thing. Oh, yeah? And you want to get me upset and all that? And I'm going to scream again. Smile, come on, come on, come on. Don't do that, don't do that. It doesn't bother me that much when I know it's coming. It's just, like, the startle that bothers me.  Oh, really? Yes. Now I'm going to continue to bother you about the buff cream. Take the camera. Take the camera. I'm going home. This one's a prank. What? I already told them. You're the only one who didn't know that. Because I noticed the other day.  I told you the other day. I don't like when you do that. Yeah, so I was on the phone with my dad. He had showed me a picture. And I think I was really in the zone while driving. And I was like laughing or whatever. Randomly, like, it's quiet. Like, her step dad's talking softly. Like, it's not anything crazy. It's pretty quiet in the car. Then all of a sudden she goes, and I'm like, why are you doing that? I think that this was fun.  It's not fun. It is fun. Like I said, the ones that you startled me get me upset. I think I did startle you a couple of times. You did once on the way to the pharmacy and then you did it just now.  We were talking about it and you did it and it's still startling. I don't know why. But whatever. I'm going home now. I'm not going anywhere else. So if you need to go somewhere to get more but cream or something like that, I'm not telling you. All right. We're not talking about this anymore. I don't have but cream for the last time. That is it for today's video. I hope you all enjoyed. If you guys did, don't forget to smash that like button.  Don't comment. But anyway, it is time for today's poll certification. Shout out. Today's poll certification shout out goes out to Andrew Martin. Thank you so much for your love and support. Isaiah and I love you. If you want a poll certification shout out, all you guys got to do is... Not screech. And then like the video and then share the video and comment on the video and... And subscribe, right? But cream. Anyway, we'll catch you guys in the next one. Love you and funny fam.


A Nevada judge was back to work Thursday after being injured in an attack by a defendant in a felony battery case who launched himself over the judge's bench and landed atop her when it became clear that he was going to be sentenced to prison. The 30-year-old defendant had to be wrestled away from the judge in a violent scene Wednesday that was captured by courtroom video in Las Vegas.A court official on Thursday credited the judge's law clerk for quickly pulling the defendant off the judge. Court officials say the judge was injured and a courtroom marshal was hospitalized with a gash on his forehead and a dislocated shoulder. DeOber DeLone Redden refused Thursday to be brought from jail for another court appearance. The lawyer who was with him on Wednesday declined Thursday to comment. He was released. He received hand abrasions. We commend the heroic acts of Judge Holtus' staff, law enforcement, and all others who subdued the defendant. This is a very unique situation that, as far as I know, has never happened before with somebody supermanning over a judicial bench. Since yesterday, we met with our security contractor to bring in additional security personnel to support courtroom coverage. We've notified Clark County Management that there's a need for additional marshal positions in our high-risk calendars. We're already working with Clark County Real Property Management to evaluate court rooms and identify if there are any necessary improvements. So we're already on top of doing everything we can to make this as safe as possible, President. We have one marshal in the court. Sometimes there are two, sometimes there are more, but generally there's one. I don't know what could have prevented this. I think that we are looking at every opportunity we can to make things better. I don't know if an additional marshal could have prevented it or not, but if we could get additional marshals in the court, then we think that that would always be better for the court, for the staff we have here and for the public. His new charges is going to be in charge with battery on a protected person, resulting in substantial bodily harm, two other counts of battery on a protected person, and one count of simple battery. So Judge Holtus is going to go forward with the sentencing hearing on, I believe it's the 8th at 9.30. I don't know exactly what the sentence that she planned on handing down was, but I anticipate that it will be the same as what she gives.


I want to talk about automatically connecting signals and slots. And yes, Qt does do this to a certain degree. For example, if you're in widgets or QML, it may do it if you follow a certain naming convention, but it's a little bit error prone and then you spend half the day trying to figure out why it's not calling it. And if you really dive through their documentation, you're really not going to see any example of them automatically connecting signals and slots. They just assume that you're going to call connect and disconnect.  Even if you look in their advanced signal slot usage, you can use Lambda functions, but they don't really talk about auto connections. Oh, all right. So we are going to make our own auto connection class here. So I've got some code here. I've got a client. This literally does almost nothing. Really, it just has a testing function and it's going to emit a signal called test, which is going to have a Q string representation of a number. Really not, you know, Nobel Prize winning code here. And then a server, which if we look at the header is just as simple.  So it's almost verbatim the same thing. And we're just got a producer consumer style pattern here where the client's going to emit some signals. The server is going to consume those signals and do something. And we've got a Q object pointer to the sender. I could have literally just said sender. Yeah, it doesn't matter. I did it my way. Let's put it that way. So I did it my way. I just connected, disconnected, ready, read. And they're literally the same thing over and over again. We're just going to say internal from, test from, ready, read from. So I'm just letting us know. I literally could have written this like Q info sender or actually this Q funk info and sender or something like that. You get the point. I could have done something like that if I really, really wanted to. But just in case somebody's downloaded this and they don't understand any of that, I want to make sure it's painfully obvious what's going on. So what we're going to do now is we're going to take the signals from the client and connect them to the server. But I'm not going to write the connect over and over and over again. So what we're going to do here is we're going to say main and let's just do this. We've got those in there and I'm going to make a client, make a server. And then I want to test them. That's right. Whoops. You can call or you can emit a signal while you're outside of a Q object. That's incredibly cool that you can do that. Not something I would highly recommend, but you can do it. We're going to emit ready read client testing. There is a method to my madness. Just bear with me here. And then we're going to say client disconnected. So what we're doing is we're showing that, hey, the client. If you really look at him, we're only emitting one thing from inside the client, this test. However, outside of the client, we're going to emit connected ready read and disconnected. This testing is what emits test. I should probably put emit test. Now what we're going to do is we're going to write a header only class, which I don't often do. And we're going to take that class and make it connect the two objects together. And as long as those two objects are Q objects and follow our naming convention, everything should just work. So I'm going to write auto connect. And this is probably one that I'm going to have a lot of spelling errors. So please be very patient. All right. So we are going to connect signals and slots of two objects. For example, signal tests to slot tests, meaning they have to be named exactly the same. As long as they line up, it should connect them.  Remember, under the hood, signals and slots really are just mock generated code. And because they're mock generated, Q gives us all these wonderful little classes we can work with, like the meta object and the meta method. And we can figure out, you guessed it through reflection, what each class has. Wow. That's incredibly cool. So I'm going to say class auto connect. Bang. Now I want public. And this is where I will probably start screwing up really badly void. And I'm going to say connect. See, I lied to you. I said I wasn't going to type the word connect. So now we have a static function here.  My keyboard is sticking.  And did I misspell receiver? I did.  They need to integrate spell check because I just sometimes do not spell. Well, I don't know why. So we're going to say, if not, sender, return, if not, receiver, return. I want to make sure we have pointers to both objects here. This is where we have to actually do something. We want to get the signals. So we're going to say Q list. And I want a Q byte array, sender, signals. Told you I was going to goof up. And we're going to have to do something here. And what we're going to have to do is create a function that scans them. So let's pause right there. And let's go down and let's create our private static Q list. I said Q list, do my bidding computer. And I want a Q byte array. Let's call this, I'm always horrible at picking names. Let's call it scan type. Why not scan type? And I want a Q object, objecty. Boy, I really misspelled that. All right, Q object, object. And I want the Q meta method. And I want a method type. And that may seem like voodoo magic at the moment. And I apologize. But really what we're doing is say scan an object and look for a specific meta type. Now remember, when we talk about meta, we're talking about data, about data. So this is the data created by the mock, the signals and slots. And we're going to just return a list of them. All right, now we can go back up here and make this make some sort of logical sense here. So now we're going to say, want to scan type. And we're going to scan the sender. I really should pick different names for those. And we want the Q meta. And I want the Q meta method. And we're going to go with signal. So we want the sender signals. And then we can just do the magic of copy and paste, grab this. And then we can say, we want the receiver slots. And we're going to scan type receiver. And we want slots. So we're just going to generate two lists. And now let's actually fill in the scan type here. And let's go ahead and say Q list. And I want the Q byte array because that's what we're going to be making. And I'm going to say list. And if not object, probably should do this first. And I'm going to do this, just return this blank list here. All right, now, if we've gotten this far, we have an object. We need to say const Q meta object. And we want a pointer called mo equal object meta object. So we're just going to get the meta object. So we're saying Q object give you give us your data of data, meaning your meta object. It sounds really confusing, but basically what happens in the background. When you build your Q object, the mock will go in and put a lot of data in there in the form of a Q object. Oh boy, they have some weird naming conventions, but I do absolutely love this. This is just so cool that we can do this. I'm going to say I equal mo dot method offset. And we want I is less than mo dot method count. And in case you're wondering what the method offset method count is, counts pretty self-explanatory. You're going to have a number of things. But the offset is, well, for lack of better terms, this. So if we're scanning for signals, we will have like a public, a few things, and then signals. And that's the offset in the position of where this is. There's more to it. And I'm probably explaining that very badly, but think of it in those terms and it makes perfect sense. All right, so now that we've gotten this far, we've got an object. We've got a meta object. I should probably test to see that we have a meta object. We're just going to return our blank list if we can't get that meta object. And then we're going to say q meta method, because signals and slots are really just methods. And we want mo method and then whatever the count is. Then we're going to say, if method, method type. Now, interesting enough, we're working with the q meta objects. And we could have tried to use like a for each. But ironically, the meta objects don't really have meta data. So it's kind of hard to do things like for each. You can do it, but it's kind of tricky and error prone and I wouldn't really advise it. I've had all sorts of issues in the past. Anyways, now we're going to just say if it matches that type, we're going to list a pen and we're going to say method, method signature, which just is a q byte array, which is basically just going to be a string representation here. Wow, is that confusing, but it's really cool that we can do that. So basically we're taking an object saying, give it a certain type, signal or slot. Get the information about the object, scan through the methods at the offset, and then look for something that matches that type, whether it's a signal or slot, whatever we're scanning for. And if so, append it to the list. Now that we've got to this point, we can just say return our list and life should go on. All right, so we're actually returning a copy. We could do a pointer, but I really don't feel like it. Now we're going to go up here and this is where the interesting bit really happens. We're going to say for each. And in our for each, I'm going to say q byte array signature. And I want in the sender signals. And this is what we're going to do. We're just going to line up the signals with the slots. So we're going to say if receiver slots contains the signature we're hunting for, that q byte array. So if they both have it, and this is what I meant by you must have a test and a test or a signal or a slot. They have the same signature. This is what we're talking about here. If those two line up, then we want to automatically connect them. And then what I'm just going to say q info auto connecting. And let's go ahead and pump this out signature. That way we know what we did. Now I'm going to say q object. And this is where I need to stop and kind of explain some things. We can't really do this connect the way we normally would. Why this part is a little frustrating. It'll take you a bit to figure out, but I'm going to try and see and pay some notes in here. If you dig through the source code of cute. And I really, really hope they don't take this out or they add some way of auto connecting signals and slots for us. If you dig through the source code, you'll see the old school signals and slots macro. So the new way is like, you know, connect and then you give it an object. And then you say, you know, the function pointer, the class, that's the new way. The old way you would actually say signal. And notice how that macro pops up. So really what we're doing is we're kind of back boning off these signals and slot macros. If you look at them, they're really defined as define slot a equals one and pound a and this pound a is just going to print whatever you put in it. So it's slot for one signal for two very, very important. You remember that part. So now we're going to take our connection. And we're going to say, hey, sender. And I want to say two, two plus the signature. And then I want to say receiver. And I want to say one plus the signature. You're probably looking at this going, what in the heck are you doing? Okay, so let's slow down, explain this. So there's multiple ways to connect the signals a lot. And let's just walk through them. So we're going to say Q object connect. And let's say sender needs a pointer, right? And then we're going to say Q object. Whoops. And we're going to say signal and then the receiver and then the Q object slot, whatever that may be. And this is going to give us a horrible list of errors because it doesn't actually exist. But that's the new way of doing it, right? So the old way, and I remember doing this for years and years and years, connect. And you can still do this, sender, signal, and then something like test, and then receiver, and then the slot macro. And that was the old school way of doing things. And it still actually works. But you notice how it doesn't have any error checking. If we try to run this, it will try to compile that even though it doesn't exist. That's why they switched to this newer method of connecting. So really all we're doing is we're looking at the signal and slot macros.  So we're just going to put a two and then the signature. And a slot does a one and then the signature. And the meta object compiler is going to handle all the rest for us. We don't have to do anything else. That is incredibly cool. Let's give this a good build, make sure I didn't type anything wrong. Jump into our main and let's test this out here. So now I'm going to include our auto, maybe auto connect. And then I'm going to say, probably should have done that lower case. I'm surprised it's not complaining at me. I want to say auto connect. And I want to connect the client to the server. Now as long as the signals and slots line up. And when I say line up, remember like the signature test to test. So we're talking connected, disconnected, ready, read, test. Connected, disconnected, ready, read, test. As long as those line up, it should try to auto connect them. Remember our client is only emitting the test. We are emitting them here, the connected and ready read. Anyways, enough talking. Let's see this thing in action. Boom. So auto connecting, connected, disconnected, ready, read, and then. All right.  So we connected, ready, read, disconnected. So it is working as expected here. That is incredibly cool. So if we wanted to, let's play around with us even further here. Let's take our client and let's get that out of there. Just to show this is working as advertised. So server connected from client, server ready, read from client, server disconnected from client, everything works as expected. Wow. That is incredibly cool that we can do this. Now, my hope, my dream is that we don't have to do this kind of stuff. As cool as this is, my hope is that Qt6, when it comes out, will have some sort of like auto connect class. So you can just say, hey, do this. And this may not be the way you want it. Like you may want your naming convention to be test with like on test or something like that. And that's perfectly fine. You can just simply change it down here in your scan type and make sure that that works.  And that's where you would check and you just convert it to a string and do whatever you wanted to do with it. Simple, easy to use, does what it says it does. And we won't ever have to type a signal and slot connect again. Oh my God, that's brilliant. However, for this course, I will not use this. Why? Because I don't want somebody going, I don't understand auto connect. I didn't watch that one video. Can you explain the scan type and what we're doing? So this is the one and only time I'll be doing this. The rest of this course will be using this convention right here unless I'm forced into using, I'm sorry, we'll use this convention here the newer way unless I'm forced into using the older way. But in the real world outside of this course, absolutely feel free to auto connect your signals and slots as long as you can connect them together and it does what you want to do. There's absolutely no problem doing that.


You know, just as a trader, I mean, if you guys are watching this and you guys want to know how to make more money trading, the way to make more money trading is not to make more money trading, it's to lose less money trading. So if you could find a way to control your lostness through broker limits, heart stops, max size, max loss, that in and of itself is going to lead to more profitability in the future.