Mr. Speaker, Mr. Speaker, I would have like to just round up the debates on the six million dollar facility that we have borrowed Mr. Speaker. But Mr. Speaker, I cannot allow the minister, the member for Microsoft to get away with the things that he is saying. Mr. Speaker, the member for Microsoft speaks about borrowing at six percent to fix schools at the time when interest rates are rising globally. But as the same minister of finance, when interest rates, when the banks were asked when interest was actually at zero, when liquidity was high in the national market, that's the same member who borrowed to build roads at six percent over five years. The same minister, the same minister of finance finds it wrong to borrow now to fix schools, to fix schools at six percent at the time of rising interest rates globally. But as the same minister of finance, he declined alone at two point five percent for twenty years to build a grocery highway. I mean, this thing, you know, when the member for Microsoft began to speak as if he was never in government, he, there was a loan from the Q80s, twenty five years, two point five percent, five plus five years of interest free. Five years, five years, grace period, sorry, to moratorium, to complete, to build the grocery highway from shop to grocery and fill the roads in Mikunov, Viewford, North. He stopped it at two point five percent, he stopped it twenty five years and he went and he borrowed money at six percent. Who, he? He that just complained about it, DFC, DFC, after he had charged, after he had put a tax of a dollar fifty that he said would be in a lock box. And up to today, the economy car with taxes, when you put a tax of a dollar fifty said per gallon of gas, put it in a lock box. Up to today, we cannot find that lock box, but still left over two hundred million dollars of DFC loans to be. That's not true. That is a minister of finance. That's the guy, that's the gentleman who is speaking about handing the finance to this country. That's not true, that's not true. If it yourself. That is a minister of finance. That's a minister of finance. You don't worry if it? Because we borrowed money from the Taiwanese twenty years, five years more. You borrowed more from the Taiwanese. What about the money you borrowed? What about the DFCs? Where are the DFCs? Where are the DFCs? Covid and DFCs? What about the two? But there was no Covid and you declined the loan at twenty five percent. Why you did this? Why you did this? The loan was never approved. You said the loan was approved. When he came in, no loan was approved. No loan was approved. Remember this, I thought they must have been taking him and you don't tell us that. That's not true. And I went in for the loan. So that is minister, that is the member, the same member who declined a loan at two point five percent. But when to borrow, going to borrow after Covid at a time when interest rates were low because he thought he had done a poll. And the poll said roads would win the election. So he went and instead of going for the process of road building, he borrowed at six percent over five years to his favorite contractor and also borrowed from the Taiwanese also. So he had a double whammy and look at the roads that he builds and asked me for the returns on these roads and he left a bill of two hundred million dollars for which we have to pay every year. Two hundred million. Every year's funds and he said the dollar fifty was the dollar fifty was supposed to go in a lock box. The dollar fifty went into the consulate account Mr. Speaker. It's a consulate account Mr. Speaker and he comes and he speaks about roads Mr. Speaker. Mr. Speaker, here is the minister, when he was minister of finance, the OKEU was ready. There was a transition team prepared, a consulate prepared to move into the OKEU. We had already dealt with the Martinicans, the French assistant to the OKEU. He fired the transition team and he left us with a bill with Cayman City for eleven million dollars which I had to pay. That is the member from Microsoft who is talking about OKEU hospital. And when Covid struck he was forced to use the same team of people he had fired to move from Vidro to Covid. How much you had to pay Cayman City? Eleven million dollars. We took a loan to pay it. And you know, so I suspect the member from Microsoft doesn't remember he was in government. He doesn't remember. So he comes and he speaks as if that's the same member. The same member who left payables of 184 million dollars owed to local suppliers and NIC. 184 million dollars of local payables. That's the same minister of finance. Mr. Speaker, that is the same minister when he was minister of finance. Saint Lucia borrowed the most in the entire OECS for Covid. Saint Lucia borrowed the most. All the countries borrowed. Saint Lucia borrowed the most because the Saint Lucia economy was the worst. And he comes and he boasts about management of the economy. Saint Lucia borrowed the most. All countries, all countries suffered from Covid. But he borrowed the most, Mr. Speaker. That's what he did. He, Mr. Speaker, that is the same minister, the same man when he was minister of finance. That was the same man he was minister of finance, Mr. Speaker. He said a few minutes ago, how will you finance health? How will you finance health care in this country? Go ahead now, talk. When you finish your talk. What do you want to do? You want people not to hear what I say, so you talk it across to me. Go ahead, talk. I want you to talk. I want you to talk. But you talk in. Go ahead and talk. What I'm saying to you. You finish? You finish talking? That is the same prime minister. The same when he was minister of finance, Mr. Speaker. When he was minister of finance, Mr. Speaker. He inflicted on the people of this country a 150, 150 cents tax for gas. He said that that money was in a black box. A black box, sorry. A black box, sorry. He said it was a black box. Up to today, no one can find that black box and where that money was. That money went, all you have to see is the money went into a concentrated fund. That's all you have to see. But no, he insists it went into a black box, Mr. Speaker. But while the money was in the black box to construct roads, he said. He just admitted he borrowed from the Taiwanese and he borrowed money at 6% for the FCs. 6% for the FCs over five years at a time of low interest rates. Compare these interest rates at the time with interest rates now in the global market. And it's a difference. But he sits there and he stands and he pretends he's almighty and a manager of the economy. Look at the state of the world economy now and the state of the world economy when you are in government. After COVID, there was actually deflation. Prices went down. There was deflation after COVID because the supply chain was blocked. There was deflation. Right now, inflation is at the highest it ever was for several decades. These are facts, simple facts, Mr. Speaker. We understand that the cost of food is going up. We understand that. We have taken steps and we continue to take steps. And we will continue to have discussions with the soul, the largest importer of food in the country. We will continue to have discussions with them. But the answer part of the answer to the increasing food prices is import substitution. And part of the answer is to grow local food. When I stood up and I said that we should move to consume more of our bananas. The puppy showed me. They laughed at me. They said I was a fool because I said we will use more of our local produce. I said that we must try to grow more of what we are eating. And for emphasis, I reversed it. For emphasis, they tried to publish me again. That was the cost. That was the part of the remedy to high food prices. Have your own kitchen garden. Grow your own food. Try to practice import substitution. I said so. Instead of the member for Mikusav, instead of the agreement and say to the government, let us work on some sort of serious import substitution to try to reduce the consumption of our local food. The puppy showed me. They played politics. The same thing that they are doing now with the reduction in that in sanitary products. Tomorrow, the prime minister of England will speak about poverty. But no, just for cheap political mileage. He refuses to accept this fact. Fact is, Mr Speaker, this pollution economy did worse than any economy in the OECS after COVID. That's a fact. That's a fact, Mr Speaker. And, Mr Speaker, let us get back to repairs to schools, Mr Speaker, and Hurricane Thomas. Mr Speaker, when the member for Viewfort South was Minister of Finance, he made the point that the economy was in transition. He said the economy was in transition. Again, the puppy showed him, Mr Speaker, who built under whose government the most hotels were built in this country. Under which government? Which government passed the Tourism Incentives Act? Which government passed the Tourism Incentives Act to supplement the old Tourism Incentives Act? A new one. Which government attracted the most hotel investment in this country? And you're speaking about we did not understand the benefits of tourism? Let me explain to you what I said about tourism because, you know, it's your habit. You see, you are fooling yourself. That's why you said 15 towards no majority. I was in London trying to do a promotion with the Minister of Tourism. He was there about after COVID. You were trying to do a promotion in London. And I said to the audience, I was Minister of Tourism and the record is clear. Compare my channel with your others. Let's compare. Let's look at your rivals.  But facts. But sometimes I will have to state the facts. దిల్లికోత్రంటేనినంటుమింట్. హావికోనినింటకదికోత్త్నింట్టిని. గ్ణి millones 7.75 నిసిఆకి వరిలోÖ పువర఻్చి  Shortly梁ిమాపికచ్కన్లా మోమాధ్టియనినిందా. పొటరర౮కీంట ToyismAcặt and MyT hosted management. Let's have the money you have. న్టారోచ్� FC 15 million andHey. . ఆవరాకి . 你 know what to them. 大 sake, that's your record, that's your record, for boxing and paralyzing. You build a tent, you buy a tent. You put a tent for 100000 dollars. That's what you did. So, let's talk about tourism, let's talk about tourism. Let's talk about who did the National Conservation Authority to clean the beaches in the country. Let's talk about tourism, you want to bring the tourism debate? I want to debate with you. Let's talk about tourism. Let's talk about your contribution to tourism. Let's talk about the money that you got to promote tourism and the money we got. And look at the returns. Look at the cost per visitor in my term and the cost of being there in your term. Let's do this maths. Let's do this maths because you know, you believe because you can talk because you believe.  enjoyment  pants   Golden ఇరాఫస extrater подход, లాప్నిర్నిండ పెచైంచి పెసోంపేనింజగంనింది పెయటకొటి పెస్రపేండె ఊఱఱిసినిని మాడి సంవటిని, మూడినింకింరికూనింనికిలి ఈదినివిసిాన౿నికూవికి. నికూకినికి వారికికటి.  cling Back进уди cheddar  cling ஆ ஆ And he is afraid. ஆ ஆ  squishсь x 𝘢𝘭𝘭𝘶𝘀𝘬 𝘇𝘪 𝘊𝘶𝘦𝘳𝘦𝘦 𝘔𝘰𝘨 𝘢𝘯𝘦𝘦𝘤 𝘰𝘯𝘤𝘩𝘦𝘪𝘰 𝘖𝘦𝘤𝘰𝘪𝘺 isoshop Lord let's through that zipper that's why oesh మర�క Tammy మభప఼Gameămcakes ఎవర్పౚకతౌ�ం ఆవాట్క్పయం మలేగాళంఎ మాయల్ౕనా స఩రేని ప౉ర్మష్ని and he can talk to international people because he supported that these theories but you don't know his history of investment he found a range hotel that he called the hotel not to be built and he had to pay the owner of the range that's his history we're going to go into history but you know because the member of Microsoft believes he can go out there with his surrogates and say whatever they want say whatever they want cause people to insult people on social media write all kinds of things that are not true and he will get away with it we agree that the cost of food is high we agree that the Minister of Commerce has taken several steps to reduce the price of food but he is also saying that we don't have enough money to fund school repairs and to fund healthcare he has never said how are we going to fund healthcare and health insurance never the health insurance and you know he said he never you want me to play the tip let me talk about health insurance you think that you should so the tips are wrong what you say is wrong what you say is wrong first of all he said he never spoke about public vlogging remember he didn't say that yes complains I want you to please I want you to please so let me explain to you what I said let me first of all please in the past in the south and what they are doing today yes they should be publicly flogged for what they are doing yes okay please flog they should be publicly flogged that's one you just said you never said anyone should what's that you just said you never said you never said you never said you want to do that two and a half percent has to go in April 2019 cabinet took a decision to form a National Health Insurance levy committee that's why I'm saying to all of you tonight I'm begging all of you all a favor we're going to have another march  groceries not atat Japan  spoke పాదరాని చివర్ంట్చా నివర్త్ని నివాలెరరం ఇనిమోషితింంటుపి Due మోధికికింటెటుకిసంటిపాడ్ంటిలికికికికిసి.  человечRa Working in the shift grease Metis beacca Heís only on He knows about health insurance The great United States Obamacare was health insurance Obamacare Ot to today They are still trying to decipher Obamacare There was never any concrete But they are criticizing our universal healthcare program. They criticizing it. As usual, they laugh. The maternal care. The universal healthcare. We said it will happen in stages. They laugh at the stages. They laugh. But the poor pregnant mothers.  The poor pregnant mothers, when they were expecting a baby, they could not get any of the tests that were necessary before they prenatal care. Now under the universal healthcare, these mothers are getting that attention, which they deserve. And you cannot deny it. You cannot deny it, even though you try to papisho it. And papisho it and pay as if it doesn't exist. You can't deny it. You can't deny that we've removed that on Pampers. And you're saying that we did it for two years. We did it for two years in the first instance. But you did it for no years. You never did it. You never understood pre-apogaty. You never understood what it means. And there is something all over the world you cannot deny it. You never understood what it means for a young mother to have to make a choice between buying these products and feeding a child. You never understood it. We never put that on any... We removed that. We removed that on it. We removed that on sanitary napkins. We removed that on sanitary napkins. But you understand, but that is a problem. That's a problem. That's a problem. The problem is the delusion that he is feeling. The delusion. So, Mr. Speaker, we are moving on. Payables. $184 million of payables to local suppliers and the NIC. That's what he left. $104 million. $200 million of DFCs at 6% for roads when he could get the same roads built at 2.5%. That's what he left behind, Mr. Speaker. That's what he left behind. $11 million to Cayman City fired the transition team to move from Victoria Hospital to OKU. Fired the team of solutions. Fired them. And he had a big ceremonial capacity. And again the tip, what he said. What he said in the tip, Cayman City. No faith in the capability and the capacity of solutions. No faith. Same thing he said. He repeated that in other words, a while ago. No faith in solutions, Mr. Speaker. No faith. No faith in the speaker. So, Mr. Speaker, and again even though you see Mr. Speaker, he back on Slasper again. I will repeat because those who did not hear about Slasper and let us them tell him again about Slasper again because you know he want me to say it. I'll say it again. He opened the door. Slasper's has not changed in any significant way. The port operations the cargo operations will continue to be handled by Slasper. In 2019 82% of Slasper's revenue came from port operations. That will not change. In 2019 11% of Slasper's revenue came from port operations. That is going to change. The 11% is going to change. It will go to GPH to GPH for GPH to upgrade the crews the crews facilities in the country including the vendors again. In 2022 91% of Slasper's revenue came from the cargo operations. That will not change. In 2022 only 4% of Slasper's revenue came from crews. That will change. In 2020 if we to date 86% of Slasper's revenue came from cargo operations. Only 9% came from crews operations. 86% will not change. Slasper continues to be a statutory board with dual ministries on control infrastructure and finance. Slasper will continue. Slasper's staff will not be affected. Slasper was involved in the GPH agreement and the GPH what's happening at GPH. GPH already operates ports in Antigua ports in the Bahamas and if you go to the Bahamas you will see what ports GPH operates in the Bahamas. So GPH is not a company that's just came from nowhere. We are insisting that GPH delivers on the promises that they make to the people of St. Lucia and the minister of tourism is ensuring that the services are delivered to the speakers. The ports will not sold. The ports will not sold because more than 83% of the operations of the port will continue to be done by Slasper. So that is the story about Slasper and the ports. That is the reality of the situation. What we will not say is that the cruise operations are going to be upgraded the loan will be liquidated and Slasper will have increased capacity and better fiscal strength to deal with the cargo operations and in that case they can upgrade the cargo operations at the port that is the story of Slasper and speaking about PPP the member for Microsoft insists that the same minister who speaks about debt and grow the economy refuses to understand that PPPs do not increase the debt burden on the country and all international financial organizations are recommending that governments use PPPs to develop the infrastructure and reduce the debt burden. That's a fact. And these things are factual. They cannot be denied with rhetoric. These are factual. PPPs are the preferred way for commercial development. Roads in Jamaica now, roads major roads have been built PPPs major roads all over the developing world PPPs are the way you came into government and you found a PPP complete for international airport complete for international airport as we speak could have been finished determined to have been finished you cancelled it and you instructed Slasper there is a report that says you instructed Slasper I have never instructed Slasper and so you seem to forget that you are in government he is forgetting excuses for everything he did for everything he did the only man the only man the only party that we refer to as run for the only party the only party the only party will be able to defend himself he is a lawyer he is a lawyer Mr. Speaker you have the opportunity Mr. Speaker to look at what happened in the case of the land at Bannon and what happened with DSH in Vuford you can compare and you can contrast Mr. Speaker you can look at the size of the property you can look at the cost of the property and you look at DSH you understand Mr. Speaker that that is going to come at another stage Mr. Speaker Mr. Speaker attacking journalists his habit he can help himself you can imagine he cannot help himself Mr. Speaker and he wants to talk about what I said to a journalist I said again the journalist asked me whether I had read a report I said to him that's not his business I didn't insult him I called him no names I said that is not your business because what I read or what I will read is my business I never threatened him I never said I never called him any names that's all I said but you want to use that I didn't call his editor you know Mr. Speaker I never call his editor you know how to know there are people here who call editors and complain to them that report are not in the right thing I've never called editor I've never called a radio station complain about news I've never done that I've allowed the press of free reign you want to make a fuss and say that's not your business that's not your business I didn't tell him to ask a question after I continue to answer the questions that he posed on me but what was not relevant was what I had read so Mr. Speaker we are very happy that we are born going to fix schools and the minister said he knows he's not enough of course he knows but it's a start he speaks about school repairs but he never remembers Hurricane Thomas in 2010 he's forgotten that he's forgotten Hurricane Thomas in 2010 not only damaged infrastructure but damaged many schools and what we inherited in 2010 was the bad hill the problems in the bad hill that we had to repair so we had stuff and that's why climate change is such a threat to the region Mrs. Speaker so Mrs. Speaker I'm very happy that the African expert bank has borrowed that money to us and as I said before we will remain focused on the work we have to do to improve this country the Ministry of Education is trying its best with limited resources of course we know the resources are limited but we try the best with what we have Mrs. Speaker and we will continue and if you outline the things we've done for education in the first two years since we're in government and the things that they did for education in the first two years that we're in government let's make a comparison so Mrs. Speaker I thank members for the support and I look forward to the construction and the repairs of these schools I thank Mrs. Speaker


Hello. So I'm Alexandre Belloni. I will talk about the Yocto project auto builders and the SWAT team. So first, something about me. I'm the co-owner and COO at Bootlin. So Bootlin, very quickly, we are doing embedded Linux. We are providing engineering services, mostly doing BSP development on custom boards, things like that. We port the kernel, we port bootloaders, drivers. We also do part of that, a Yocto project, open embedded, and build-out integration. So that's where we are relevant. And we also do real-time, boot time, and whatever. The other part of what we provide are training services where we train companies, engineers on embedded Linux, kernel drivers, and then a Yocto project, build-out, and other topics. Myself, I'm a kernel maintainer for the RTC and I3C subsystems. So I do, actually, I used to do a lot of work on those topics. I still do maintain those. I'm also the co-maintener for the microchip, ARM, and MIPS SOCs. So I kind of hummed down there. They are taking that back, but that's also something I used to do. And the other part is that I'm the Yocto project SWAT team lead. So that's where I'm relevant for that topic, right? I'm living in Lyon, but whatever. So the Yocto project auto-builders. So we, the auto-builders, this is coming from the Yocto project documentation. So basically, we have a controller that is there to manage the build requests. And it will push those build requests to some workers, right? Actually, what we have is that the controller is one of the workers, right? But whatever. And on the side, we have a NAS. On that NAS, we do have the shared state cache. And that one is shared across all our workers, right? We also have a source mirror, so GLD, basically, where that one is also shared by all the workers, right? So that's on the NAS. And all the workers are basically sharing the same location. We also handle the hash equivalency server. So we do have an hash equivalency server. So that will not be the topic of today. But basically, this is very useful for us. You will see that later on, because we have a necessarily new worker. So basically, we are building on many different distributions. And that allows us to actually ensure we know what is the equivalency, right? So the basic is that the base hash is kind of different. And then we end up with the same binary. And so we can say, OK, even if the hash is different, we have the same binary, we have an equivalency there, right? Joshua, just over there, will know more about that than me. So yeah. So basically, the whole project is based on Buildbot. So Buildbot has been chosen because it's a Python continuous integration framework, because it is Python, right? BitBake is Python. So the thinking there is say, OK, we have people that know Python in the project, so they will probably know how to change Buildbot. We have then two different repositories. The first one is YoctoAutoBuilder2. And that's the one that will list and define all the builders. And by builders, I mean an available type of build, right? So that's something you can then create a build from. And then we also have some schedulers. I will go over them later on. It is not a tutorial about how to set up that, because it's actually easy, right? You have a readme. That readme, I mean, it's maybe it will take five to 10 minutes to set up your own auto builder and workers. So it's very easy. I even managed to do it, so everybody can do it, right? And then you have more configuration, which is more interesting in our case, which is in YoctoAutoBuilder helper. It's a different repository. The main file there is config.json. And basically, that config will add more steps to the builders, right? So we have defined builders, but we can actually configure a bit more of those builders through that config file, right? It is simply called by the run config script. And that run config script is inside YoctoAutoBuilder2. And basically, that's how we set up buildbot, right? So there is a nice UI. And if I'm lucky, I can actually show that to you. So yeah, the UI looks like that. So we are lucky. We have a lot of green builds now, so that's good. So basically, that's the console. Each of the dots is a build. And green build is successful. Yellow build that is pulsating is ongoing. Then we have red that is failed. We do have one. Yes, that one is failed. And then we have the pink one, which have been canceled. So they are not really failed, but at the same time, they didn't really finish either, right?  I didn't do a screenshot because we have, like, yeah, well, I know we have 81 different builders. And we are building most of them, not all of them, but most of them multiple times per day, right? Let me get back there. So the workers. So we currently have 26 workers. So you have their names there. It's not very interesting. But what is interesting is that we are building for many different distributions. So we have AlmaLinux 8, Santos 7, Stream 8, Divian 11, Fedora 35 and 36, OpenSuzi, Tumbleweed, and Ubuntu 18.04, Ubuntu 20.04, and 21.10, and 22.04. So that really, the goal there is to be able to push bills to many different distribution and know where this is working, where this is failing. And we will see later on, I have some examples of very weird issues that did happen and that are not that easy to find. Sometimes it's very easy, right? OK, there is a missing package or whatever package has changed name or something like that. Very easy to fix. You install the package. That's fixed, right? And sometimes you have some issues that are not that easy to find and to really know, to pinpoint, OK, this is because that particular bill is running on Tumbleweed something and things like that. Obviously, we are not running all the bills on all the distribution all the time, right? We are scheduling those bills and they are getting kind of randomly assigned to workers, right? So it's not always random because we have some bills that are Ubuntu specific, Santos specific, Fedora specific, but apart from that, we are kind of randomly assigning bills to workers. Those workers have two different architectures. So that's also in a goal to make it build on many different things. So we have two types of workers. So basically, x86 and ARMv8, so ARC64. And the x86 workers, most of them have 28 cores. So that means 56 threads. So they are Intel Xeon E5. We have some that have less cores, so 24 cores, 48 threads. And we even have two workers that have only 12 cores and 24 threads, right? The amount of RAM goes from 128 to 384 gigabytes. So that's nothing, right? And so we then have two ARM workers. So one that is 64 cores, cortex A72 with 256 gigs of RAM and another one that has 32 cores and 128 gigs of RAM. So that's good. There are new ARM workers, so they are not yet in the pool. But we, I guess, ARM gave new workers, which is very nice from them. And we will put them in the pool soon, right? So the main drawback of that is that it will create a fair amount of maintenance, right? Because it's not like we have something that is homogeneous and say, OK, we just have to install those packages on that server, and that will be it, right? Because all the workers are kind of different. It creates a lot of work. We will see that later on. Sometimes we have issues with permissions that are not the same, right? So for example, on Debian and Fedora, those will be the same, but on Tumbleweed, they will have different permissions for device files, different group names or user IDs or things like that. And that creates a fair amount of maintenance, because this is something you have to know. And those are the kind of things that also change when updating. And some of them are rolling releases. So we do update every Friday. So every Friday we have a maintenance that is scheduled. And we do update, and sometimes things are breaking, so we need to fix those. We also have two workers that are specifically reserved for build performance testing. And so that means that they will not get any work scheduled apart from the build performance testing, right? Something we'll see to point out is that now about half of the workers are working from SSDs, which did improve not only the performance, but also the reliability of our build. I will talk about that later. It has been for a few months, it has been quite an issue to actually manage to avoid false positive, because things were getting slow, and so builds were failing. So we'll see that. So builders, what kind of builds can we do? So we have currently 81 different builders that are defined. I don't expect you to read through all of them. I have some information on that. So how do you know what is getting build by a particular builder? Well, basically, most of the builders will build core image Sato, which is a fairly large image. And they will do that using Pocky. And Pocky is kind of designed to be configured to build as much as possible. The goal there, obviously, is to extend the build coverage as much as possible. We want to build the wall, open embedded core, and Pocky, and things like that. So else, you can have a look at the config.json, where you will see exactly what a particular builder will do. So we have that just there. So that's QMU x8664, for example. And that one, we have a particular machine. So we will be building for the QMU x8664 machine. And there is a template. On top of the template, we are appending new image FS types. But what is interesting there is the template. And the template looks like that. So that was the arc QMU template that is there. And this is a definition of that arc QMU template. So there, what do we say? Basically, we enable build info, build history, things like that. And then we have the targets we are going to build. And you can see that right now, we will be building core image Sato, core image Sato SDK, core image minimal, core image minimal dev. And some others, it doesn't fit on the screen, but that's fine. And then we have sanity targets, which means what kind of tests do you want to run on those targets? So core image minimal, test image, core image Sato do test image. So those are the kind of tests. And then you have that multiple times. So we can also build later on. We build the SDK and the x SDK. And we also run some self-tests later on. But again, just up to you to look at exactly what is done. I have a quick summary there. We have two parent builders, which are named A-full and A-quick. So A, because then alphabetically, in the alphabetical order, they are first in the list of things that are getting built. It makes it easy to select them in the console. Those were the first two columns. If I go back to the console, so there you have A-full, which is still building. So that's the yellow one. And then A-quick. So that's why it's A.  So basically, those are parent builders. When you ask for those builds, you are not actually building anything. You are just starting other builds. And so on the right of A-full, you have all the builds that have been started by A-full. And obviously, A-full contains more builds than A-quick. The goal of A-quick is to quickly test something. The goal of A-full is really to validate that the current branch is OK. So we also have AUH for AUH for Automatic Upgrade Helper, which tries to upgrade all the recipes to the latest upstream version. I can guarantee you that that one never finished successfully. But it's still useful, because some of them are building fine, and then we have some failures. So we'll have a look at that. Basically, that one is scheduled every, well, on the first day of the month and on the 15th day of the month. We then have machine-specific builders. So those will be building the images for the Yocto project members' machines. So Beaglebone for TI, Edge Router for, I guess, is for Cisco, if I'm not mistaken. And then we have the Intel ones, so generic x86, x66, x64. We have those ALT. When you see ALT there, it means that we are using Pocky ALT, which basically includes system D instead of the C5 unit. Then we have QMU-based machine, which is very important, because by default, OpenAmbit Core only supports QMU-based machine, and that allows us to actually run the images we are generating on QMU machines. So we will get to that. Then we have the performance builders. Those are basically there to record the build time and other performance-related metrics. So we are trying to understand whether a particular modification is making the build quicker, hopefully. But quite often, the build will be a bit longer. So as soon as you add stuff, obviously, it gets more longer. Then you have documentation. So we are building the documentation. We also include the Yocto project members' layers. So we check that. We also have two targets, so check layer and check layer nightly, which are checking whether the included layers are Yocto project compatible. So this is very important. I will not say what this is about. But yeah, basically, we want all the layers to be working well together. So this is something we can check. We then have metrics, which is a pretty new builder. Metrics will go and check CBEs for all the packages that it knows about. So everything that is in Pocky, basically, will be checked against CBEs. And it will report when we have CBEs that are not fixed. So obviously, we have that result. And then it requires some manual work to know, OK, we don't care because we are not actually using what the CBE is about. Or then sometimes, we will just backport patches. And in that case, we have to tell CBE checks that patch has been backporting. And so we are not affected by that CBE. We have P-tests. I will go to that later on. So P-tests is basically running tests on the actual image. We'll see what those are. We have LTP, so Linux Text Project. So we are running LTP on those machines. Again, QMU emulated machines. But we do run that. Then we have reproducible, which is ensuring that the generated packages are bit-for-bit reproducible. Very important. So all the packages that are generated by Open Ovid Core are reproducible, fully reproducible, apart from Golang and RubyDocs. So we'll see that. Then we have WIC, which is generating multiple disk images using WIC just to test that. And then non-GPL3, which is building with incompatible license set to anything that ends up with GPLV3, which is very useful for some companies where they want to avoid GPLV3. So obviously, this includes MetaGPLV2 to be able to access all the necessary tools to be able to build with GPLV2 instead of GPLV3. So those were the builders. Now we have some schedulers. So we have builds that are scheduled. Any builder can be triggered manually through the BuildBot interface. So if I go back to the interface, I can select, OK, that particular build, I can select the branches and send a new build to the autobuilders. But we also have a quick that will run every day of the week, but not Sunday. It will build master. Then we have a full that will also build master, but only on the Sundays. Then we have check layer nightly that will check all the layers every day. Metrics also runs every day. We also do a check layer nightly for Kirkstone and Dunfell. AUH, like I said, will run twice a month, so on the first and 15th. And build performance will run four times a day, so 3AM, 9AM, 3PM, 9PM, so that we actually can make an average of what is happening. Obviously, you may find a bit of variation when building only one build, but sometimes this is actually caused by some external factors, like, OK, I had a slow internet connection at the time. So I couldn't download my packages that fast or things like that. And finally, we have docs which will run on every commit. It is the only builder that will run on every commit that is pushed to the repository. So why? Because a naeful build will take five to nine hours to complete, and it will load most of the workers, so meaning that for five to nine hours, all your workers will be pretty loaded. And then it's not very practical to start to build automatically for every commit that is made on master. And it is even less practical to do so on patches. Because the goal there then will be to test all the patches that are sent to the mailing list. We don't do that, because if it takes nine hours every time, we will run out of resources quite fast. So build testing will be a manual process. And this is where the SWAT team comes in, so this is what I do. So Richard Perdil used to do that on his own. And this is something he managed to offload. So I'm doing that. I have also a colleague, so Luca, that is doing that. And for other branches, so we do that for master, master next. And for the stable branches, we have other people that take care of that. So Steve Saccoman, for example, will take care of Dunfell and Curson, which are the LTS releases. So the process starts by reviewing and collecting patches from the mailing list. We have multiple mailing lists, because Pocky is composed of multiple projects. So we have Big Bake, we have Open Obed Core, but we also then have Meta Yocto that contains all the Yocto projects specific, so the definition of Pocky, for example. So we have two layers actually there. And we have Yoctodocs, the documentation. From those patches that we did collect, so we do a quick review on that. We are not testing all the patches that we can see, but we do a quick review. The patch looks good. We create a new branch. So we apply those on the repositories. Then we create a new Pocky branch using Combo Layer. So Combo Layer will basically take all those repositories and create a new repository, which is Pocky, from those repositories. It is not a very nice tool. So I will not talk. No, it is not a very nice tool. And honestly, it doesn't work very well, especially once you are multiple people working on the same branch. It's helpful. But this is not the topic there. Then we push that branch upstream. So I have my branches are on Pocky Contrib, which is a Pocky repository that is available. It's publicly available. You can have a look at it. And then I tell the auto builders to start an eventful build on my own branch. That build runs. And if we have build failures, then hopefully I can find very quickly which patch did create that failure, which usually should be the case. Because master is building just fine. Master next is not building properly. So probably I have a patch in there that is making my build fail. So in that case, that's very easy. I remove the patch, and maybe I will collect other patches and things like that until I have a stable branch. Once my A-fool is successful, I provide my branch to Richard. He will do a final review of those patches, and he will merge everything in master. That's the usual workflow. Yeah, OK, the slides should have come before. So we have self-test builders, which are running BitBeck self-tests, which is testing BitBeck and the API that includes the parser and fetchers. We have also OE self-tests, which is a target that is keeping the reproducible tests. Because the reproducible test takes a lot of time. Most of the nine hours is actually because of the reproducible build. Because basically, the reproducible build will build twice, and then compare those builds. It tests other things. So you have the list of what is tested there. Honestly, it doesn't test enough. We'll see that. We need more tests. And it also runs OE pie length. So when pie length three is available, it will run that on the Python module. So BitBeck and anything that is written in Python in OpenMed Core. Yeah, I'm missing a slide that was looking for. OK, no matter. So we also have other tests. So we do test the SDK. So we have two targets for that, test SDK and test SDK X. They are basically doing the same thing, while the test SDK X is testing DevTool on top of the regular SDK. The tests are at that location. So this is in OpenMed Core, so lib oeqa SDK. That assumes that the SDK environment is set up, which means that if you want to be able to run those tests on your own, you will have to first populate SDK and then run the SDK environment script to be able to run those tests. What do they test? Basically, whether you can actually generate binaries for your target. The goal, OK, I have an ARM target. I want to be able to generate ARM binaries using my SDK and not MIPS binaries. The auto builders don't have a board farm. Like I said, we are building for machines, but we are not actually running those builds on actual machines. But we have a powerful server, so we can run QMU, and we do run the QMU images on the workers. And so we have the test image task that you can actually run on your own, if you want. It runs QMU. It will boot the generated kernel using that root file system, and it will test many things. Which makes it also part of why this is so difficult to get workers working inside the auto builder farm, because to be able to use run QMU, you also have to have tuned tap interfaces, things like that, that run QMU will look for. So this is also yet another complexity in the maintenance for those workers. So I said that we have the LTP builders that will run LTP inside that image. So it will install LTP on the root file system and run that in QMU. Then we have the P tests. And what are the P tests? Well, the P tests are basically package tests. And those are tests that are coming with the packages, so with the upstream release. So we get the unit test from upstream, and we run those tests. And as you can see, we have OpenSSL, G-Lipsy, LTTNG, Python 3, they all have tests. And we are running those tests. You have the full list of tests that are run in that include file. So Metacomp distro include ptestpackagelist.inc.  It is very easy to do. If you want to ensure in your CI that what you do is still working, you can provide your own P tests. And then reproducible, like I said, it will do two builds. The first build is allowed to reuse the shared state cache because then it will go quite faster. But the second one is not allowed because we actually want to rebuild those binaries from scratch. So we do that. Then both outputs are compared. And all the package types are tested. So for those two builds, we are actually building all the type of packages we can. So IPK, Debian, and RPM. So that generates a huge amount of packages. And we have the failures that will be. So when we have failures, we actually upload those failures at that location, so repro-fail. And we even have the defoscope output and things like that. We even have the binaries. So if you need to still compare the binaries, you can also do so. And we have those results, which are at uctoproduct.org slash reproducible build results. And those results are actually quite nice because, as I said, well, 100% of the packages that are tested are reproducible. And the only ones that are not tested are Golang. But this is an upstream issue. And RubyDoc, this is documentation. And it's also an upstream issue. It's basically the RubyDoc generator is reordering some sections. And it does so randomly, so it's very difficult to fix without knowing how RubyDoc is working. This is what it is. So what are the saved results from the auto-builders? The standard output is saved. So you always have access to the standard output. Actually, if I go to the console and I click on one build, so that one was one of the failed build, it will show me right now I have the standard output of that build. So this is what failed. So that one is quite short, so that's nice. But you can see this is basically the output of BitBake. So if you know how to read the output of BitBake, well, it is there. We also have the shared state. Obviously, it goes to the NAS. We also have hash equivalency, like I said. So that one is also exported. So you have actually access to it, if you want. So on typhoon.yoc.io at that port, 86, 87. We also have the build history that is pushed. So if you want to look at the auto-builder's build history, you have access to that. So I don't know if you all know what is build history, but basically that will record the difference between your current build and your previous build. And it does so in a git repository. And so every commit is a separate build. So that allows you to know what is different. We also have test results. Those test results include the results of LTP and P-tests. We have the build statistics. So those are the ones coming from the performance test build. And I guess I can show you what we do. Nope, I don't have that. Let me get that from somewhere. That will be the one. Nope, that's the one. So those are build statistics. And we actually generate nice graphs so that basically the build time is there. And so we don't record the actual version, but that's the number of commits since the first commit on master. And we have a look. So it's about one minute difference between the previous 16 runs. So that's not that bad. Then we have the size of TMPD, the root FS size, the build time for different images. And we also have the do root FS time. So whether we take more time to generate the root FS time from packages, so that's also very good information. So it's quite stable right now on that particular build, which is nice. And those are also available on that particular address. So that's autobilders.io.io slash plub slash non-release or slash release, depending on whether you're interested in a release build. So for example, if you're interested in 4.0.0, you could go to release. But if you are interested in the master builds, you can go in pub slash non-release. And you will find basically all your builds with what happened. So you get the performance report. You get the P test logs, build history. You also have all the failures that are recorded and things like that. A lot of data is recorded. And we'll see that it's not actually enough. So yeah, OK, so that was the built-in output I just showed you. So if you want to look at it, the URL is there. So finally, I come to the SWAT team. So basically, the SWAT team looks at all those build failures. And like I said, sometimes it's very easy. OK, the build failure is caused by a patch. You remove the patch. You have removed that build failure. That's nice. It's not always a case, because quite often we have what we call the intermittent issues. So the AB int issues. So that will be that case there. And in that case, we need to track those. And preferably, we want to solve those too. So what kind of issues did we have? We do track 230 issues that have been closed. So what kind of issues did we have? So those are all the intermittent issues, so not caused by a particular patch. Some of them are caused by the infrastructure. So for example, you have that issue. So that was basically a Virgil not running. And it was a permission issue. So if you look at bug number 14551, you will see that basically, on OpenSUSE, they change a particular device from one group to another. And the builder was not in that group. And so at the time, that group doesn't exist on Fedora, for example. And so we had to add that to the OpenSUSE setup. We also find issues that are present upstream. So that's one of those issues. So there is a Perl install race. So basically, put to text was installed before getting compiled, which is very weird. We had a look at the make file. It was very difficult to find a race condition there. Actually, there are no race conditions in the make file itself. But make add an issue. In that case, it was make 4.1. It had an issue. And make 4.1 was shipped on Ubuntu 16.04 and 18.04. So that one will take a lot of time to find out, because it will mostly work. And sometimes when that build runs on Ubuntu 16.04 or 18.04, it will fail. But it will not always fail. So I gather some statistics. So I'm responsible for that. I'm gathering those statistics. And I'm trying to find, OK, this only happened on Ubuntu, what is the commonities between those two Ubuntu releases and things like that. So that's how we find out. We found out. We also had kind of the same thing. It's sometimes the build would on. And this was caused by make 4.2.1 that was shipped by Santos, Alma, Linux, Stream, and OpenSusie. We did report that bug upstream to Santos. They said, OK, you are doing weird things with make or whatever. But no, we are just compiling the kernel. So they wanted us to report that to Fedora. But basically, Fedora was to redact. But basically, redact didn't care too much, because they already moved out make 4.2.1. So basically, the solution was to desolo make 4.2.1. That one is also painful to find out. For a while, like I said, we had a lot of performance-related issues, because multiple builds are allowed to run on each worker. So you may have multiple big dates running in parallel on the same worker. And that will increase the load. And what we find out is that sometimes we add RCU stalls on the kernel when it's running in QMU. Why? Because basically, we were compiling, I don't know, WebKit or Node.js or something really load-intensive. And QMU didn't have any cycle to make the virtual machine go forward. And so basically, the kernel that is running inside QMU was just bailing out, OK, it's been 20 seconds that I didn't run. Let's crash. So how do we solve that? Now we are using the make load awareness. So that is dash L, that is just there. So dash L52. So if we go higher than a load of 52 on the builder, on the worker, we will stop, well, make. We'll automatically stop enqueuing more work. We also did lower the limits for exe. Those settings are specific to the Yoctoproject auto builder. They are different from the current default for open embedded core, but those may be useful for your own CI. And so for exe, we are so limited to Astrads with a maximum of 5% of memory. Because exe, when it's compressing, it takes a huge amount of memory, and it was also starving other processes. We are also copying the root fs image to TMPFS so that we can avoid IOs when running QMU. And finally, the workers are getting switched to SSDs, which did also improve the reliability of those builds. Finally, yep, I'm out, or yeah, really out. So I'm out of time, just my last slide. What needs to be worked on? And that's where we need your help. We need better logging, because sometimes it's very difficult to pinpoint what the issue is, because we don't have the logs. Or because we are building so much, we do remove the build directories. And sometimes it's too late to go there and fetch the logs we are interested in. So we need to improve that and particularly collect the relevant output when it's failing. So if you are up for some development, you could do that. We also need better p-tests and better OE self-test. So p-test is useful for everyone, because again, the p-tests are unique tests from the upstream packages. So you actually contribute to upstream, which will actually improve also the Octo project. And finally, some tests will benefit from being more robust and especially less timing dependent. Because again, we are loading those workers so much that sometimes it just fails because something times out. And it's not actually a failure. It's just, OK, it timed out. And also, I'm also timing out. So I will take the questions, I guess. I will take the questions off stage.


Hey Virgo, welcome back to the channel. This is Kelly from House of Virgo. If you're new, please smash that like button and subscribe. If you want to become a member of my channel, please think about joining. It is $2.99 per month to join and you get really cool badges and emojis. Yeah, so we do have some new members. Thank you for the gift and membership. Steve, we have Danielle Crenage Persephone, who is our mod Bella, Orist, Mihai, Constantine, Mimi, Martin, Kaj, Christensen. So yeah, welcome you guys. If you were gifted a membership, that will be good for 30 days. So do enjoy and please use those emojis. Yeah. All right, you guys. So let's get into this reading. You're starting with love, unconditional love, self-love, oneness, passion, affection, attraction. And of course you have the runner. You have someone who perhaps is an avoidant or they have an avoidant attachment. You also have coffin thinking something is over, endings bringing new beginnings.  Maybe they run marathons or something like that. But relationship-wise, this is someone who has a fear of intimacy or intensity in a relationship with coffin. There's some type of growth here, transition. So I feel like in, so we're going the rest of March here, we only have like this week left. And then we're going into April. So I do feel like there is someone whom you might come to realize that this person has an avoidance kind of attachment style. And when you have someone who is running away from a relationship, it's important that you not chase that person. It's important that you focus on self-love, stay secure within yourself. Try not to act out of like anxious anxiety or anything like that. Okay, so you've got the Six of Swords. So there is somebody here. I feel like there's someone in your life who is going through a huge like transition here, making some changes. And if they're not in your life at this time, you're not connecting with them or communicating. This is what I feel like is happening with this person. Okay, let's take a look here and see. They're making some kind of change. They might be relocating or coming out of a comfort zone. I feel like someone's avoiding, not like avoiding the relationship, but kind of like not, yeah, they're dealing with some restrictions and insecurity. So someone, you're dealing with someone that's got some type of mental restriction. They may have, it's not necessarily bad. There's just like a mental health issue that could even be something as similar or something as simple as like they have autism or something along those lines. And the intensity or the intimacy can be too overwhelming for this person here. Okay, so that doesn't mean anything else for you. We'll take a look at you, but I feel like they're giving this impression that they're giving an impression here that something is over, but I don't think that's really the case here. It looks more like it's kind of like a I want you go away scenario. Like I don't feel like somebody here doesn't want to be with you. I don't get that sense. I feel like actually it's the opposite. Somebody here holds you in high regard or esteem. Yeah, you know, but they have some kind of like this Eight of Swords energy trying to like, it just feels like get avoid this. They're they're a trigger avoid some kind of a trigger. So if you're loving somebody Virgo, it feels like this person kind of runs away from the intensity and they end like the end of relationship where they just kind of close a lid on it. Like, or I don't I don't feel like they really are doing that. I just feel like they they're taking space like they're taking this space and then in this space, then they begin re idolizing you. Not that they stopped doing that, but it feels like there'll be some kind of communication coming forward from someone here in April. Giving you like looking at you like you're something pretty amazing here or telling you that. Yeah, I don't know. That's weird, Virgo. It just kind of feels to me like this person pulls away because of the intensity of the relationship or feelings or emotions. They don't know what to do with it or how to handle it. And then they return. They come back once they get themselves like in a safe place. This is what I'm feeling. Okay. Yeah, look at that. So much struggle. This person, it's just they've got struggles, man. Okay. So what is going to be their energy? Because I do feel like they're going to reach out to you in April. Try to talk to you. There also it feels like having some financial struggles as well. All right. Three of wands to the four of wands. So they're going to wait for you. This person is not a pursuer. They are not a pursuer. If you reach out to them like they're waiting for you for you guys to come together. You know, I know Virgo. I know I can hear you now. I'm tired of reaching out all the time. I'm tired of pursuing. I'm tired of, you know, it's just why am I the only one? It feels like it's you want that evenness. You know what I mean? But I don't feel like you should judge if somebody's not reaching out to you first. Doesn't necessarily mean that there's person doesn't have feelings or affection towards you. It just means it can mean a lot of different things. Okay. I know you're like, why is why this person runs? You know, if they feel like it's too intense or it's too much, they bolt. It's a struggle for them. So I feel like this person likes to take their space when they need it and then they come back around. So in April, there's definitely going to be some kind of like communication from this person and something to do with commitment of some sort. Okay. We've got Gemini here. Hmm. So it looks like they're thinking about something. They're saying waiting for the right time to come together, have a new chapter, manifest a new beginning with you. So it's a timing thing. So it too. But I also feel like, you know, right now Virgo, your message here is to focus on your own emotional security and stay in a very good positive place. Try not to think that this person is running away and then I'm not seeing a finale of something being over. I just feel like they need a lot of space. They're just that person. Okay. So I mean, listen, you have to ask yourself, obviously, is this kind of relationship you're comfortable with? Maybe you have made you might be the type of person that needs space as well. So it might be okay. If it's not okay with you, either something for you to dress within yourself or it's just now that's too much space. How can we build a bond if there's too much space between us? Okay. Let me take a look at you Virgo. So to sum up, I feel like this person is going to reach out to you. They already have you on a pedestal. They think the world of you, for sure, they want some type of, you know, like they will manifest some kind of new beginning with you here as a change, a start come out of this avoidant thing here and go to the next there's a reunion for sure and move it to the next level or start over after the world comes the fool. So this is freeing themselves up from needing this space and for them taking a risk to start over again for them. It's a risk. This person, like I said, the eight of swords is there.  So let's take a look at you. So you have the lovers. Wow, Virgo. Okay. Now it's interesting because I'm looking at this card. Look at them. There's space between them. This is the freedom to love each other without extreme attachment. Okay.   So I kind of feel like the message here for you is let it be. Just let something being allow this person to come to you. Don't hold on too tight. Hold on. Oh, that's an old song. 38 special. Hold on loosely. Just hold on loosely. Don't let go. Do you remember that song? My God, that's a great tune. That is such an old song. I can't remember all the words to that song. And God forbid if I show you the lyrics, right? Hold on loosely.  Good, love and gone bad. And usually it's too late when you realize what you had. And my mind goes back to someone I left years ago who told me, hold on loosely, but don't let go.  Your baby needs someone to believe in and a whole lot of space to breathe in.  Don't let them slip away, but don't hold on too tightly. I don't know. I guess that song must be for somebody. The weird way that it just came to me, right? So I kind of feel like that's a strong message for someone here listening. Just pray, let it go.   If that's something that you want, give them the space to be free, to love you, to be open and vulnerable. Some people, if they're pushed too hard to talk or to express themselves, then they'll clam up if they don't feel comfortable, you know? Yeah. Kind of six a cup.  So it looks like you really do love this person, Virgo. Pages, swords, king cups. You might be watching them to see who they're talking to or if they're loving somebody else. That's negative energy. In your head. If you're spying on them, don't do that. Pull back from that energy, just deal with this person directly. Because I feel like if you have a connection with someone, they're looking the other way. They're not even looking at anybody else. Like their back is turned to what you might be thinking is happening, but I don't see that that's, that anything's going on there.  Everybody always thinks, well, they're not talking to me because they're talking to somebody else, but that's not always the case, right?  This is for those of you who are kind of like, well, I can't confirm. I'm not sure. I just need to be more in a self-love state and get myself more secure. Okay. Cherry it. So you have a decision to make here, whether to move forward with this person into harmony. So I feel like maybe you're trying to stabilize yourself a little bit here. I see that progress will, it's going to go forward. It just feels like that song, those lyrics and that energy with this person, if somebody runs away, don't chase.   You just need to be still. You'll know if you just be still, right? Keep the balance and keep that emotional balance. You don't have to run from anyone. You don't have to chase anybody. That's that we weren't put on this planet to do that, to run after people or run away from people, you know? I mean, but at the end of the day, you need to decide if this is a partnership that you want.  If you understand this about this person already and you're just like, no, that's, you know, I almost feel like the message is just kind of be cool, just chill, just relax. I feel like I have to tell you and I know nobody likes to hear, oh, just relax. Relax, will you? That's what I feel like I have to tell you, Virgo, just relax. I feel like this person is sorting some stuff out within their, their mind. Okay, past life love. So this is someone that you're already dealing with. Okay, this doesn't feel like a new connection. What else do you need to know? There you go. Release radical acceptance and surrender can help you let go. Let it go. Hold on loosely. Hold on loosely. Give someone space to breathe. Don't let them slip away, but don't let go. Uh, I'm sorry. Don't let them slip away, but like, don't let them fully go, but don't hold on too tightly. That's the message. Yes, here and now. Your true love. This person is your true love. Okay. Okay, there's an addiction affecting this relationship. Now, some of you might already know this. They might have some type of an addiction or an addictive personality where there's, they run, or they're not necessarily running away, but they might use substances or other things, people, places and things to cope. You know, so it's kind of like they become emotionally unavailable for you because of an addiction. And that could be playing out here. This might be something that you may not even realize or maybe you do. Okay. Um, and being in a relationship with someone who's an addict, that's like you're a mistress. You're like a, in a third party affair there. Okay.  Like you don't want to give up on them. Or if you've done everything you can, and it's just like you have no attachments to this person, then it may, maybe it's better for you to just focus on loving yourself at this time. You know, I can't tell you what to do, but I do see there's some kind of an addiction that this person or codependency can be addictive addiction related. You could have an addiction to this relationship as well, because the person does this in and out, which creates a dynamic of intermittent reinforcement. So yeah, we're going on here, deep psychological kind of reading, you know, definitely. Okay. So your message here right now is just to wait. Let everything be just wait, just chill. Don't do anything. Don't run. Don't chase. Just let it be. Let things be. Let's see what there is Chinese science and live your life at the same time. Right. So when I say wait, I don't mean sit by the phone and just stare at it 24 hours a day. Right. Or keep looking at your phone or checking the text message or see if it's just get on about your business for a go. You want to go outside take a walk or take a walk?  Make yourself happy. Fill yourself up with joy. All right, let me see. This yours or theirs or both of you. Hey, year of the rabbit, year of the pig, year of the snake, year of the monkey, year of the ox, year of the tiger, year of the rat, snake again, year of the goat. Okay. All right. Now let's move forward. What other messages does Virgo need to have or Virgo need to know in the month of April here? Other messages that Virgo needs to know for the month of April. Okay. Intimacy. Hmm. Be aware. Now that's what we were saying. Sexual chemistry, reminiscing. I feel like this person right now is thinking about all that. You might be thinking about that as well. Are there a fear of intimacy? Okay. You've got distance. You and your partner maybe physically or emotionally distant. Yeah. Yeah. I mean, listen Virgo, if you feel like the bond, so the bond between two people is created through trust and emotional and even physical intimacy. If that's not happening, what do you really have with this person? That's the question. What do you really have? Are you like pen pals? Are you just friends? If you're friends with benefits, is that something that's working out for you? Okay. Some of you maybe going through a divorce from this person or maybe thinking about breaking up. We do have a fire sign, Aries Leo Sedge and you got cycles, something ending, something beginning. So this might be a cycle that you'll experience with this person if you're not already. This is a pattern. How do you break that pattern? You stay secure and emotionally safe and keep yourself just in a very balanced being harmony with yourself. Right? Because I feel like the cycle might be one person, you know, an in and out kind of thing. Avoid that. Avoid that in and out by not chasing and not running. Um, it's kind of like being as secure as you possibly can and not trying to personalize something or not trying getting yourself in like a major catastrophe state.  It's over or they're coming back. We're going to be together forever. Just try to level out. I feel like that message. Let me see. What else does Virgo need to know? What other messages? All right. Transition.  No one said it'd be easy or has been. The season in your life is transforming and bringing you into a new hemisphere. Allow it to happen and go with the flow. It's now time for change. That's mostly about you. Just being, um, just going with the flow with something, just letting things be because, you know, everything eventually works out anyway. It does. It always works out. It always works out for you, Virgo. You may not get what you want, but you will get what you need. Okay. Yeah. So this person I'm hearing is still undecided right now.  You also have good news about money coming in in April. Okay. And then you've got a new chapter. Look back on it so that the world card is there. Look back on the past chapter one more time if you must, but only to help write the next new pages of your book. Travel, explore the world, space, the seas, the psych, learn, meet new people, live your best life and allow the past to cycle out a new journey as a head. Take someone with you or go solo, but do go into this new chapter. So what is your new chapter, Virgo? What is your new chapter? Reflect. Go into your cave for a while. You need to regroup and recollect. A lot is going on and you need some alone time. Stay in the stillness and the quiet, but don't get lost and don't dwell. Tell people you're taking a vacation. Pull out for a little bit. You need a recharge. So this is about you reflecting. What do you want to do, Virgo? I'll hear with this connection. What do you need to do? This person is going to reach out. You will have a message from an admirer. So it's either they're going to initiate communication with you, they do admire you, or they're going to respond to you. So you will hear from this person. Try not to, um, I feel like don't read into anything I'm hearing. Okay. You also have the Wheel of Fortune. Luck is on your side. The wheel is turning in your favor. You have the Midas touch. Good things are coming now. So be ready. Yes, you deserve all this good. Karma's on your side for all the good you've put out.  I love it. I feel like you got the most positive messages. I really do. All right. Let's take a look and see. So we've got August 31st again. We have the letter E, the letter M. Someone's 32. We have September 7th. The letter F. 1968, 1987. Okay. Somebody's birthday is in November. We got those tennis rackets again. They were there yesterday. Um, 1981. We have the letter J. 1978, 1965. September 13th. We have the letter A and the letter O. A-O, A-O. Or that's day O. We have someone's born in April. We have the 29th of August. The letter I, the letter A. Someone's name might be Ian or Amy. Okay. The letter V. Someone lives in Victoria. We have the number September 3rd, August 24th. We have F again. Someone drives a Fiat. Did they even make them anymore? I just heard Fiat. We have the letter Q. Did I say September 13th? I don't remember if I did, but if I see it there. Okay. We have the letter K. Right when I said okay. We also have an elephant here. Elephants are good luck. Yes, they are. We have T. Katie. KT. The letter T. T-K-A. T-K. Someone is 43. Someone lives in Kansas. Either Kansas City, Missouri or the state of Kansas. Okay. Someone's 53. Someone is 48. Someone drives a Tesla. Someone is in Idaho and also Ohio. Someone is from China. I just heard mainland China or China or is Chinese. Okay. Someone is in Florida. There's in Florida and Nebraska and also someone's in Hawaii. Okay. Let's see what Zodiac is here. Capricorn, Aries, Taurus and Gemini. Aquarius. Okay. We have Capricorn again. Aquarius, Virgo, Gemini again. Scorpio, Pisces, Gemini and double Pisces and then it just slipped over to Capricorn. Okay. So you've got an elephant here. You have tennis rackets. Oh, give me another September birthday. Okay. September 1st. Also, I'm getting August 23rd. I'm also picking up September 5th. 15th. The 12th. I think I said the 13th. One more charm for Virgo, please. Okay. That's interesting. And you have the words love me. Okay. That's like love yourself, Virgo. If you feel like someone's not loving you right now, that's okay. You know, you still can love yourself. If you're in that position where it's like you feel like you can't be happy unless someone loves you, that's a lie that you tell yourself. When someone loves you on top of you loving yourself, that's a bonus like a bonus in your paycheck. Loving yourself, that's what you owe yourself for being who you are. If you start loving yourself, then you don't have a crazy need, you don't need that validation. It's nice to have it. It's a bonus, but when you really love yourself, you don't need to seek others to love you, right? Because who else can love you better but yourself, right? So maybe you have that written somewhere, or maybe you just need to remind yourself that you're worthy of love. If you're in a situation, a hot and cold situation, if someone pulls away and then they're in and out of your life, you know, I feel like the most important message is if you're dealing with someone like that, that they have an avoidance complex, there might be something that you need to look in because even if you're super, super secure, even someone who's hot and cold or in and out of your life can trigger that, right? So maybe not try to chase the person, but maybe try to understand this is what you're dealing with and it's not you, it's them. Now, if you're someone who is very anxious, very, very anxious, you're going to want to hold on. There's a lot of stuff that you can read, a lot of books and there's YouTube stuff. And so the ultimate goal, as I always say with the readings is to focus on you and make yourself better in the best possible ways that you can. And I know it's not easy, but it's a healing process and it's, you know, one that you just work at every day, but try to be as positive as you can because I do feel like whoever this person is in this reading does hold you in high, high regard, but they have, they're kind of like skittish. I feel like there might be a little bit of skittishness attached to them for some reason, not exactly sure, but I'm going to leave that there. I hope that that gave you some insight and was at least entertaining to some degree. And yeah, if you want to get a personal reading, there's a link in the description box below and I will see you all back here tomorrow. All right, take care. Bye. Hey you guys, thank you so much for watching my readings. If you'd like to get a personal reading, please feel free to click the link in the description box below to go ahead and follow that link in what you're reading. Please remember to book, subscribe, like, do all the great things. And I hope that you guys have a fantastic, blessed, loving, and light filled life. Thank you. Bye.