Welcome! In this video we will be going over CPSC's tracking label requirement for children's products. What is a tracking label? Under Section 14A5 of the Consumer Product Safety Act, also known as the CPSA, manufacturers, importers, and private labelers must include tracking labels on children's products and their outer packaging to the extent practicable. More on what to the extent practicable means will be discussed later in this video. Children's products are defined as consumer products designed or intended primarily for children, 12 years of age or younger. Tracking labels are intended to help companies and consumers identify where and when a product was made in case it needs to be recalled in the future. This info can be used by companies to identify and target a recall, only to units that are defective or in violation. If a component has been identified as the source of the hazard or violation, the tracking label can also help identify other products that may contain the same component. A tracking label is a permanent distinguishing mark that is affixed to the product's packaging to the extent practicable and provides certain identifying information that is ascertainable. Let's break down what each piece of this requirement means for you. The commission considers permanent to be a mark that can recently be expected to remain on the product during its useful life. A mark on disposable packaging needs to be permanent enough to reach the consumer. An adhesive label may be sufficient for disposable packaging, but not for the product. If a tracking label is visible on the product through transparent packaging, such as through a clear plastic or a poly bag, there is no need for the mark to be on the packaging. The tracking label must be affixed to the product and its packaging to the extent practicable. Each manufacturer is responsible for making a reasonable judgment about which of their required info can fit and be marked on their product and packaging, given the character and type of each item. Please also note that the commission has not provided size, location, and format specifications for tracking labels, because each type of consumer product may warrant different types of tracking labels, but the tracking labels must still be visible and legible. Is it reasonable or possible to include tracking information on the product itself? The commission recognizes that it may not be practicable or possible to affix a tracking label to certain products or product components due to several potential factors, including, but not limited to, the size of the product or whether the product has many small, separate components. If a physical mark would weaken or damage the product or impair its utility, if a product's surface would be impossible or technologically infeasible to mark permanently, or if the aesthetics of the product would be ruined by a mark. Remember that even if the product does not need to be marked based on one of these potential factors, the product's packaging must still be marked. For situations in which companies have chosen to not affix the tracking label to a product, companies should maintain a list of reasons and justifications why it was not practicable to do so. The tracking label must contain information that will enable the manufacturer and ultimate purchaser to ascertain the manufacturer, importer, and or private labeler the location of production. The location information can be represented in code form as part of your batch code or it can be spelled out with country, province, and or city information. The date of production. As with the location of production information, the date information can also be represented in code form as part of your batch code or it can be provided in a month and year format. It can be a range of dates if the product is made over a period of time. If the product is a group of disparate components or items assembled or gathered into one package, the commission interprets the date of manufacture to mean the completion date of assembly or replacement of the components into one package. Lastly, certain cohort information such as a batch or run number or any additional identifying info that can help the manufacturer, importer, and or private labeler determine the specific source of the product. Not all of this tracking label information needs to be physically present on the product or its packaging. For example, providing the company name, website address, and a batch code can fully satisfy the tracking label requirement if that code can be used to ascertain the other required pieces of information. Now let's go over some fictional examples of compliant and non-compliant tracking labels. Please note that manufacturers, importers, and private labelers of children's products may need to meet additional federal or state product and packaging requirements beyond the CPSC tracking label requirements illustrated in this video. The following examples contain fictitious business names, products, websites, and contact information. Any similarity with real entities is purely coincidental. This first example depicts a silicone bubble fidget sensory toy. The tracking labels on both the product and its box packaging have the company name, location of production, date of production, and a batch code. In this case, the tracking labels are identical and list all of the required information. However, this is not the only way that you can meet the tracking label requirement. For example, this baby rattle and its packaging have two different ways in which the tracking label is displayed. The tracking labels on the product and packaging are not identical. As you can see, the product is using a date wheel instead of listing out March 2022 like on the packaging. A date wheel can be a great way to identify the date of production and batching your cohort information for certain products. Additionally, tracking label info doesn't always have to be provided in the same spot on the product or packaging. As you can see in this example, the baby rattles tracking labels are separated on different parts of the rattle. Likewise, the packaging's tracking labels are split and located on the top and the bottom of the packaging. As we mentioned earlier, not all of the tracking label info needs to be physically present on the product itself. It just needs to be ascertainable to the company and purchaser. In this example, a website and code are printed on this bouncy ball. The website link can be sufficient to identify the company name. If the code can be used to ascertain the location and date of production for the product, then this would likely satisfy the tracking label requirement. This example shows a t-shirt in transparent packaging. If the tracking label is only on the product but is visible and legible through the packaging, then this is likely sufficient to meet the tracking label requirement. In this type of scenario, the tracking label does not also need to be affixed to the packaging. For products that come in a set with smaller component pieces like a board game, it may not be practicable to include tracking labels on each piece of the board game. When packaging, like the board game box, is intended to store and stay with the smaller components of the product, the commission would likely consider the box to be part of the product. For products like this, the tracking label should be affixed to one larger piece of the game, such as a board or set of instructions as well as the box. The individual smaller pieces do not need to be marked. In this example involving marbles, the marbles are likely too small to include tracking labels on each individual marble. When many small products, like marbles, buttons, or beads are packaged together, the commission believes that affixing the tracking label to the packaging is likely sufficient. How do tracking labels apply to products with paper hang tags? In this example, the stuffed bear has a paper hang tag attached to its arm. You can include tracking info on a paper hang tag like this, but it would not be considered permanent, as it is not likely to remain on the product during its useful life. A sewn fabric tag with a tracking label like the one affixed to the stuffed bear's bottom would likely be sufficient to be considered a permanent label. Lastly, here are some examples of other products that don't have permanent tracking labels and would not be compliant. In this scenario, the left rubber duck has a paper sticker, and the right rubber duck has a label printed with non-permanent ink. Since these rubber ducks are likely to be used with water, they would not be considered permanent. The paper sticker can rip or peel off, or the ink can smudge and wash off the rubber ducks. Generally, the best way to ensure that the tracking labels are permanent are to have the tracking labels molded into the product or to use permanent inks that don't wash off. A waterproof permanent sticker may also be sufficient, as long as it lasts the useful life of the product. Now let's go over a few frequently asked questions. If I already label my products for other federal or state requirements, must I add a new tracking label as well? If the required information can already be determined from what's on the product and packaging to meet other federal or state requirements, then there is no additional requirement to add all the info again to serve as a tracking label. To satisfy the tracking label requirement, the product and packaging needs enough info to ascertain the company name, the location of production, the date of production, and any other cohort information specific to the product's production. I am a registered small batch manufacturer and make handcrafted children's goods in my home. How does the tracking label requirement affect me? You must comply with this requirement. The law does not provide exemptions based on the size of the business. The product and its packaging will still need to be marked to the extent practicable. You will need to follow the guidelines outlined in this video. You will need to consider what type of tracking system you are using. The products and packaging need to identify the company in sufficient detail to enable a consumer to ascertain all of the required tracking info. You will also need to be able to determine the materials used to make the product and must-keep records, including receipts and purchase orders to help identify the source of your product and its components. For more information about tracking labels, you can visit www.cpsc.gov. If you are new to product safety, CPSC's Regulatory Robot is a wonderful online tool that will walk you through a series of questions to discover the likely applicable requirements in place for your consumer product. You can access the Regulatory Robot at business.cpsc.gov. If you have questions about tracking labels or any other requirements involving your consumer products, please contact the Small Business Ombudsman by visiting www.cpsc.gov. Calling toll-free at<PHONE_NUMBER> or sending an email to sbo.cpsc.gov. Thank you for watching this video on CPSC's tracking label requirement.


Okay, so in real life the meeting has been recorded, John, the floor is yours? I think, I think, the screen share somewhere, there it is. I was thinking that we'd go through the agenda as soon as we figure out where to press the fine button. There it is. If you screen share your screen it's not working right now. Exactly. So if you want I can screen share for you? No, I just, I can't remember how to do it. Okay, just a second. Okay, do you see my screen? Yeah. Anyway, that was the part that I wanted to show. We just proposed the agenda that the plastic put in the Gitter yesterday, I think. Yes. Yeah. Then we just talk it through basically. I think about the last part about breaking down tasks, it should be somewhat easy to do it offline. So there's no need to use your time or like for this. So I say that's why we should take it at last. There's just the road and example of one of the issues we should break down. Anyway. So like, Should I start on with the questions? Yes, sure. Oleg, hello. Yeah, hello. Okay, so first question is like the compatibility issue that you mentioned yesterday. Like how can it be resolved? Do you remember our previous knowledge transfer where we actually discussed it? Yes, you showed it. Yeah, because I have shown some code samples, etc. Yes, yes. So do you want me to do that again? Or do you have enough information? No, like just that part, that particular code. Okay, promotion badge, right? Yes, yes. Yeah, I think that we can just take a look at the code. I think for this, you have to, okay, okay. Okay, I'll probably just launch a vintage idea. So yeah, we can take a look. In a while. I believe that there is some documentation in pipeline plugin before. Let's take a look. So yeah, I'm just putting links, but yeah, there is information about pipeline development. That's my idea. Oh yeah, now it's starting. Okay, good. So yeah, there is a document for pipeline integration and there is also a document for, I believe, from Eclipse about compatibility. Yeah, evolving Java-based APIs. So yeah, you remember we have already seen this page together with you. Yeah, these documents are rather two main guidelines describing how you could do that. So yeah, this documentation is probably not enough, but yeah, but it addresses some topics. So yeah, let's take a look at our particular example. I believe it's loading promoted builds here. So yeah, when I run Hangouts on Air, my laptop is too slow. If you want, I can hear the tune. I have the good. No, I think that it would be more convenient if I do that because how to make today's promotion page appear binary compatible. So I think that we can just have a short show and tell session. So yeah, let's go to my depository so that I just do it on the clean branch. Yeah, I can just mute one particular channel. So sorry. I disconnected from Hangouts. Sorry, from Gitter for a while. Okay, let's go to the master branch. Okay. So yeah, we have a quote and yeah, there is a promotion page. Promotion page. Okay, so yeah, it's here. And we have a method which takes abstract build. So yes, we discussed that the previous session when you see abstract build abstract project and other types. It should be a red flag for you that it's not compatible with pipeline. And we have a problem here because we have a method and we already have extension points which implement this method. Probably we have extension points outside the plugin. So if you just change here from abstract build to run, as you did in your pull request, then if you go to this guideline, you may see that there is parameters. Change of type of form of parameter. It's actually a break in compatibility, even if you upstream the type. So it might not be obvious sometimes because yeah, there are some documentation below. So you retain source compatibility here by changing the type, but you do not retain binary compatibility. So what we do instead, so something like that. So yeah, we keep this method as this, but we start creating a new method. So for example, now it will be run. So firstly, what you need to keep in mind here that even if you have a new method here, you can get into source code and be greedy. So you cannot retain the same method. Usually how it's being done. For example, you can pass built listener here. Wow, it's still in the configuration listener. So you have a new method because actually built listener is not passed. So it would have been a necessary change anyway. I think running listener is used for pipelines. No. Well, yeah, it's run listener. Just a second. So there is a thing here because the run listener is a method for checking the completion of the new runs. So API may be a bit confusing here. What's going on? It still cannot open the project properly. Okay. Oh, yeah, but actually after the build, built listener. Oh, maybe not. Just a second. Built listener. Okay. Let's start from task listener. So task listener is a top level endpoint. Well, there should be a method there, by the way. Maybe get... Yeah, I just forgot the method, but yeah, so it should be built listener here. We will get to it later. So if we take a look, yeah, sorry, I really forgot the code. Yeah, so built listener is what we need, even if we work for pipeline, on pipeline. So here what we can do is, yeah, there is a new method. Here we can call it run to make it more specific. I never know. So instead of that, we just put an annotation to make the code... None, none. Yeah, none now. So yeah, we are using standard annotations, environment variables. Yeah, it's not documented, but we can check usages of this method. Okay, and this makes it compatible. Yeah, for now it's compatible. Okay. So yeah, we will see how to refactor the entire code. Yeah, but yeah. So here what we need to do is, yeah, we have a new method. This one, we say it's a deprecated. Because we want all codebases to use the new method. Okay, use... Yeah, there is a lot of background noises coming. So yeah, sorry if I'm distracted sometimes. That's fine, I can listen to you. Yeah, I am distracted and also my ID HENX, which also doesn't help a lot. Yeah, so let's see. Currently the branch targets very old version core, but still we have this method here. So yeah, well, it should be this method though. Yeah, there is a more simple implementation. So promoted. So what we need to do here, promotion. Okay, so what we need here, we introduced a new method. And we need to ensure that since not every new implementation has already written that, we can say that if run instance of abstract build. So yeah, if a new implementation ever writes this method, then it's fine. Okay. Okay, if the method is not ever written. Okay. If it is a classical build, this run instance of abstract build means if it is a classical build, then what do we do? So if it's a classic build, the simplest approach is to just invoke the existing methods. So yeah, here we just convert it to abstract build. Okay. So if it's not required. Yeah. And then what else do we need to pass environment? That's it. So here we invoke the old method. So it means that when this method is involved to be a full back to the old implementation. Then here. Yeah, we can keep a disease. We have invocation here, which comes from status. So you may see that it also uses all KPI. And we have to do pretty much the same here. So we create a deprecated method. It uses abstract build here, but we can still pass this in there. So yeah, we use new API in old method. So that it still invokes new API space where possible, but we basically deprecate this existing method. And here we also have run run. And yeah, we use build listener. Build listener. So something like that. So here we also retained compatibility. Built and worse. Okay. Okay. So yeah, you will be able to polish this implementation later. I'm just showing how it works. So yeah, we have a new method. But then what we need to do, we need to see who uses this old method. And there is one method, which is get environment. So, and you may see that it actually already receives a task listener. So what we discovered here that we have a method which already has login engine, which you haven't been using before. So we pass the listener here. But yeah, if you do that, there is type conflicts because we assume that all listeners are actually built listeners.  It doesn't really matter for us because this is just an abstraction class. But here we just say task listener. Okay. I'm washing the page fix Java doc here. Okay. So now this good status thing should be able. Yeah, it's able to invoke the thing correctly. So let's take a look what it takes in the code. So yeah, you may see that target he is abstract build. So we won't be touching it right now. So the factor to run. So yeah, I'm leaving it for you so that we do not go much forward. But we did only one part of the implementation because what is our problem that we have promotion page. We have a new method here. But implementation still use this method. So we need to find implementations. So you may see that there are two implementations and that's again, groovy condition and one condition. So what we do here that it uses new old API. Let's use new APIs. Task listener. Okay. So here, there is no sense to invoke this method to be honest. So I will just keep it because it was no up. And this is for historical reasons. So yeah, this method is fixed and there is also manual condition, which also has a self promotion, but you can see it's not. But in manual condition, you also have batch I believe he he was the batch. And here in this batch. So here we do the same. Listener. Here we checked to run. And here you can see that there are some tricky things here because the others. So, the class. And here you can see a problem which is going here because we're running his instance of promotion. The fact that support pipeline promotion types. So again, I just want to do so that we don't touch it now. So what you can do here just to give you a hint. You have promotion as an implementation. So yeah, you already started refactoring this class. But you have already discovered that it's a kind of uphill battle. So what you could do is you can. So here we can say that it's promotion for abstract projects. Yeah, we can do what we can say that here they will be a new interface. So yeah, I'll create just in the hats package for now but it's better to move it. Yeah, okay, let's do it. Let's keep it as is. Okay. Okay, let's say that it's a promotion run or something like that. Okay. Yeah, I just make up the thing for now. So we create a new let's say interface for now. So this is a promotion. We will implement our interface. So we have one implementation for abstract projects. Okay. This interface was made though the previous promotion class that is for abstract build. Yeah. So because yes, we discussed before refactoring this class is uphill battle. Just do something like that. Okay. So only the needed methods from promotion would be used in this new interface Exactly. And you can also make it parameterizable. I'm not sure whether it's needed or not to do the generics. Okay, so I'm not sure what they will need it. I'm not touching it. So yeah, let's go back to our mental condition. Okay, and now we have that if it's not a promotion run. I expected a promotion run but got whatever. So here we have promotion run. And now we know that this method needs to have parameter values in order to support this promotion. Okay. So yeah, what we do. Yep. Is it fine that I probably consume too much time at the call. It's fine. This isn't needed. So it is fine. Built. Okay. There should be public method here. Okay. I'm going to stop something. Yeah, too many classes open. Oh, good parameter values. I was looking for the wrong thing. So yeah, we know that there is method, good parameter values. So here what do you say. Yeah. I'm not sure what you can move this implementation upstairs.  I'm not sure. Yeah. I'll just move it for now so that we keep it simple. Okay. Yeah, we say that. Yeah, so. Yeah, we just have a method. To do. Move implementation. Okay. Yeah. I'm not sure how it would be finally done. So we need to do more crunching to get it right. So I just leave it to do comment behind me through this line. And our next problem is about parameter values. So there is a method for building environment variables. It's a part of Jenkins. For actually, but you may see that this method is actually is already deprecated and we have a new method for runs. So what it means firstly that if you want to make efficient, we would need to provide to build environment for promote that run. But since we are not fully sure what would be the interface of promotion run, for example, yeah, one of the ways is to say that promotion run is always run. But yeah, we can say it. So for me right now it doesn't look like 100% condition. So here we can say that. So we can just say that there will be a new method. Something like run get promoted run. And here if you follow such approach, it already looks like we might need generics here. Are you familiar with generics in Java? Yes, yes, yes. Yeah, so if you had generics, we could have added some static type check in here. But yeah, let's move on again. So now we broke compatibility of this method because yeah, now we do not have the thing. And here it's already... So maybe we actually need two methods because yeah, this is already different because promoted run, promotion run. Yeah, so it's quite complicated. So yeah, you will like to need to rename this method. Run which we try to promote. And this is execution which does the promotion. So yeah, you may see that which does the promotion. Because this may be two separate jobs. And yeah, even in existing implementation, these jobs are separate. But for example, in your new implementation for pipeline, it might be different. Get promoted run and get promotion run. So we implemented these two interfaces here. But now we need to understand what we actually return here because null is obviously not an option. But yeah, here we have promotion. Here we have a get target. So get target is the built that this promotion promoted. So yeah, my interface is just get target here. Well, yeah, you can rename it later. Maybe it should be just a get target or get source, whatever. And here get promotion run, we just return this actually. Because yeah, it's here. So let's take a look here. In this method, we actually retrieve built for this. So it's actually a promotion run. And there are some run conditions which... So yeah, there is some magic which you may refactor later. Yeah, because here it definitely makes sense to move to a default method. But yeah, let's go back to our manual condition. So here we can say that we can again apply refactoring. So now we have promotion run. So probably this code is not longer required because we can say that actually it's a promotion run. So instead of having this Luzi check, we just enforce it into the API. Well, so yeah, I'll keep it as is. But you can refactor it to do the effect of API to promotion run. So yeah, it's just a question in there. But yeah, here what we do, promotion run, promotion, we just convert the type run. And yeah, here promotion, we just actually put it here, built in first. And here we know that it's a good promotion run. So one which actually executes the thing. And now we see that actually it wasn't enough because I probably messed up the interface. The method is called built environment. So again, you may see that there is method name change and it has been all done for binary compatibility in the core. I added additional parameter task listener because it was more reasonable. But when the core was refactored instead of that, there was a method renaming which is also fine. Okay. So yeah, we updated the manual condition. And then firstly, we fixed all the port issues. So our port will compile and our port will work for all existing pages we touched at the same time. Yep. But testing if it is like pipeline compatible is if it compile successfully after change, we can assume that it is done. Yeah, we cannot assume that it's done because, well, you have no test automation for that. So that's why when we were discussing it before in the chat, I proposed to have a promotion step. So something like, well, I cannot easily do it here because I don't have classes, but what we could do is say that there is a new class like something at batch at a motion which step. So instead of doing full implementation of the plugin to test that you can have a small step, which actually does the promotion. So I won't be able to actually write anything here because the core dependencies are too old. But yeah, you can. Yeah, if you take a look at this method of pipeline integration. So yeah, there are descriptions about steps. Step. Okay, so yeah, one of the ways is to just implement simple build step. But the simple build step actually requires works, workspace. So it's better to use a pipeline step API. This step means what does this step mean like in the pipeline script steps in the pipeline script. Yep. Okay. So this is a pipeline step so that you can spot check the logic. Yeah, so I can show you where you can find this API. Because, yeah, so this guy actually. So, it's probably not the best guide. You can find compatible plugins, finding symbols. Yes, everything is important. So you will have to go through this guide. But the entry point for you here, there's, there is a build step thing. Okay. And yeah, this build step thing actually recommends using simple build step, because simple build step is really simple. Simple build step for quickly. The problem that it will require workspace. So yeah, it's probably okay for now. So let's see whether I can accept simple build step. Yeah, so it's probably the most straightforward way. Yeah, use pipeline step API for advanced fields. So for me, it would be fine if you start from simple build step, though it has its own limitations but the advantage that it's really simple. Okay. So something like, oh, why does it have so many methods. I think that the most of them are default funds. Okay, if not, yeah, I think you can figure it out what is needed, but yeah, basically, you will end up with implementing this one simple method plus some descriptors in order to implement a descriptor. Yes, and one question is descriptors for a new instance, when a new class is made, are descriptors like mandatory like I learned that it is a global configuration to make instance available throughout the plugin. Yeah, so the purpose of descriptors is to make extension points and other UI elements configurable. So if you do not want the extension point to be configurable, then you do not need descriptors. Okay. Yeah, so, yeah, I just added some sample code, but yeah, it's basically what would you need to do. So you just somehow define base. Okay. Take And for what. So, yeah, we have this. Yeah, and then to run action. So you can do implementation on your own. I suppose we just leave stop here for now. But yeah, it could be a good start point for you. Okay, so I'll quickly move on to next questions. Like in promotion condition like promotion condition. Yeah. In that, I guess that is the main entry point of this plugin right because it extends the extension point. Promotion condition. Yeah, it's one of the extension points. Ask like in this conventional method of passing the promotion parameters through the web UI. I guess there's something called a descriptor list in the promotion condition that registers the input, the desired input right. How is it passed? How is it passed from the UI with parameters or which variables are through which these inputs are being passed. Okay, so let's take a look. When you go through UI, there is a manual condition, which you have already touched. So you might see that there is actually a bunch of code. But what you can see that there are parameter definitions there. So it means that promotion condition, manual condition stores its own definitions. And these definitions actually get retrieved by promotion when you start the code. So yeah, let's go here. Yeah, you may see that there are such things like manual conditions. Yeah, when somebody requests parameters for promotion, the code checks what the manual condition is enabled. And if manual condition is enabled, the parameters are propagated from there. In promotion, there is manual condition, right? But for self-promotion, there's no method called self-promotion in promotion. So how does it happen for others like self-promotion, parameterized promotion? Well, let's take a look. For self-promotion, let's look for self-promotion. Okay, what is it? Inside conditions. Conditions, self-promotion. Okay, so yeah, it's self-promotion bench, self-promotion condition. Yes. So here, let's see. So promotion bench just consults this, well, condition that promotes a built as soon as it's done. So first thing here that actually doesn't return any parameters like manual condition. Yeah. So what it means that self-promotion condition is not parameterizable. Let's take a look at its implementation. So here, it's almost nothing except on completed handler, which does promotion. But you may see that it retrieves promotion and just does the execution. Let's take a look at the web UI. So it's resources, conditions, self-promotion condition, configuration. And again, there is no parameterization here at all. So what it means that self-promotion has no parameterization. It has no parameterization in the code in the web UI and it will just execute a promotion with default parameters. I mean, how are these parameters then put into self-promotion? I didn't understand. Manual, I understood it is parameterized. But how does the modules in this plugin know that self-promotion is being called? And how are those inputs? How self-promotion is being called? Let's try to investigate the code again. So I'll just close other code passes. Okay. So here, we have self-promotion condition. Once it's all down, you can see that there is a run listener. So the listener is extension point, which actually monitors completions of jobs. So here the monitor completions of abstract builds. So obviously in your code, you will have to rework it for pipeline. But this extension point, probably it's okay to just rename it here and call it minor compatibility breakage. There's nothing to discuss later. But here, once job completes, this handler receives a notification from Jenkins core. Then what it does, it checks whether, so when any job completes, then it retrieves job property. So to ensure, so this job property is promotion job property. And when it exists, we assume that this is a job which has promotion logic defined. Then we go to promotion processes. And for each process, we check conditions. And if any process has a condition with self-promotion condition, then we need a whole self-promotion. So it's promotion process, consider promotion. And here we go to this code, actually it just goes through all approvals. So yeah, if all other approvals are passed, whether it's minor approvals or whatever, then we just execute promotion. That's it. Okay. But this future promotion is for after it has been built. This is for after like before this. Yeah, so this condition gets invoked only when the build is completed, whether it's passed or failed, but then it's completed. Okay. This is fine. And badges or like badges, one confusion about badges is how are badges assigned like before promotion, like in this self-promotion, what we can see is it gives up an approval badge to that build. Okay. So how is that done? Badging is how is it done? Let's see. So there is no magic there, so we can get to that using the code. So here the only code related to promotion is consider promotion. Here we process all the conditions. So I would assume that, yeah, then there is a method here, which is considered. Sorry. There is a method to consider promotion. Here we can use it to promote and build actions. Action A. Okay. So yeah, if there is no promotion, we just go forward and yeah, there is a method called promote to. So yeah, let's go further in the code implementation promote to then there is action. And here we actually have that there is a code called status qualification. So we need to return back because yeah, the method was actually. So the code comes from qualifications for promotion. So it might be here or might be here. But we need to go back to consider promotion. So and consider the promotion there is qualification code status qualification is met. So I guess that it's actually somewhere inside. In promotion conditions. Yeah. Yeah, it's in promotion condition or whatever. So yeah, this status would be generated when promotion conditions are met. And now we need to understand where the bed is just injected. I focused that it's gets involved here, but let's try to find where it comes from in the code. So go to declaration. Here we have addiction or whatever. So promote action. And I believe that it contains badges, right? Yes. Okay, so actually it's not. Let's take a look where the badges come from. There's another class promotion. There's one batch in the promotion builds only the promotion batch dot Java. Oh, yeah, right. So the one we will patching. So let's take a look where it actually gets used. But yeah, again, it will be everything around status. You may see that badges are stored in status as we discussed. So what it means that when we had a qualification in this code. So here we're here. We actually had a qualification with badges to the action. So it means that the system formation about badges. Let's, let's take a look where the badges actually get generated for these status. So you can just look for usages of this parameter. And here, let's see. Yeah, well, you're right. We have only one execution. Right. It's in the constructor. So when we construct a status, we put all badges here. It's the only way to modify badges. And let's take a look where this logic is made. Yeah, we come again to this is my method. So, yeah. So here is made for promotion process. So we pass through conditions. This can each condition. It's a bridge here. We accumulate bridges and then return the status. So this way we get all the pages and then they get to the action. Okay, we get, okay. Badges are assigned from this. Okay, okay, okay. Okay, so like that is pretty much it. And like, I had, like he defined one task in zero that I will be making at least. And yes, yes. The next question is, okay, this is done. Okay, badges is done since we're working for pipelines. For promotion trigger this class promotion trigger. How would we implement this in pipeline because we'll be triggering a new job. Okay, so how now badges have been assigned badges have been assigned. Now how is triggering done. Okay, let's talk about triggering. So here what we have a trigger that starts a build when a promotion happens. So you may say that. So let's firstly see where this trigger gets involved because I believe this trigger is a part of promotion process definition right. Yes, I guess so. So promotion rather implementation. So yeah, it's basically this is a trigger only for post execution. So for pollution, we handle promotion figures. And yeah, this promotion triggers. So let's see where it gets from. And you suggest. Okay. So yeah, let's go to the super method. You may see that it's part of abstract build, but effectively it gets executed after execution of the build. So yeah, we can just find usages. But yeah, basically when the build finishes in abstract build, then we go through this code in order to invoke promotion triggers. So I think we don't need this, do we? Probably we need that, but not in this implementation, because this implementation was likely created in ancient times. And now what we have already seen with you that there is run this year. And for the implementation, it's enough to have run this in it, which actually checks promotion triggers. So run this in it just verifies that the build is completed. And once it's completed, it can consult this promotion triggers and trigger other builds. Okay, like it's notifications from the build. That is what I read in Java. So it means that you won't need to implement the logic like you have in a promotion process. Instead of that, you just subscribe to run this year. So for this promotion process also, I need to make a new interface. And like taking important methods into the new interface, right? Yeah, right. Okay. Yeah, so one of the things that you can do, I can just push this piece of code. Yes, yes. You can probably just start from it so that you have a small pull request, which just addresses these badges. And you can just take my code and build from the top of it. Okay. Like push that code. Okay, like, I think you have to go. Like it is pretty much up. Thank you, Oleg. And like last question, one question is, you said in GitHub that you suggest having separate PRs and separate JIRA tickets. What did you mean by that? Yeah, right. Because for example, if you take a look, we have created a pre-insulated logic for promotion batch. So if there was a separate ticket for promotion batch, we could have reviewed this pull request separately.  So then you can deliver things incrementally in smaller chunks. Part of the thing I was talking about for the last bullet point for our agenda to split up that one issue into smaller issues. Okay. So, yeah. Yeah, what I will do, I will just submit this code. Oh, yeah. I'm not really using can tell this idea. So you may see that there are some things like that, which is not a good practice. So yeah, I'll have to revert it later. But okay, I'll just submit it as is. And then. Okay. Okay, just mute the other. Okay. Yeah. Just a second. I'll see what they can reverse it from the. Okay. I'll, I can do it in source three. So it would be better if I reverse it before pushing the change. So yeah, let's agree that I will just submit a new change maybe in 20 to 30 minutes. Okay. Okay. Like no more questions from me. Like you have a meeting. I guess. And John and me will talk for a little long. So if John is available. I have a meeting you're coming up right now, but it's just a short one. So I'll get back to your prestige right, right after I've done the other meeting. Okay. Okay. Okay. Then I'll stop the broadcast for now. And then as a next step, you agree how to break down the thing. Okay. As a pre test for promotion, bitch, I will just push the code with this ID. Okay. And also ship, please share the YouTube channel as like. Yeah, sure. Okay. Okay. This time it will be done quickly because I don't need to cut. I did it. Okay. Okay. So yeah, thank you all. Thank you like a presentation. Yeah. Well, it was rather life coding. If it helps you guys consider doing coding sometimes because it's a really helpful practice. Hey, it helps me to get a better look too. So see what hide the curtains magic Jenkins is. Okay. Yeah. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye.


Statistics and Excel, standard deviation, measuring spread. Got data? Let's get stuck into it, with statistics and Excel. Introduction, overarching objective, kind of like our mission statement. Confronting the challenge of taking a list of numbers and structuring them in a way that offers meaning. First, a word from our sponsor. Yeah, actually we're sponsoring ourselves on this one. Because apparently the merchandisers, they don't want to be seen with us. But that's okay, whatever.  Like this CPA thinking cap, for example. CPA thinking, CAP, you see what we did with like with the letters. And this CPA thinking cap is not just for CPAs either. Anyone can and should have at least one possibly multiple CPA thinking caps. Why? Because based on our scientific survey of five people, all of whom directly profit from the sale of these CPA thinking caps, wearing this CPA thinking cap without a doubt, according to the survey, increases accounting productivity tenfold. Yeah, at least. Yeah, apparently the hat actually channels like accounting energy from the quantum field ether directly into your head. Allowing you to navigate spreadsheets faster. It's kind of like how in like the matrix when Neo learns kung fu. Or at least that's what the scientific survey is saying. So get one. Because the scientific survey participants could really use some extra cash. If you would like a commercial free experience, consider subscribing to our website at accountinginstruction.com or accountinginstruction.thinkific.com. So if we have a long list of numbers, we want to be able to summarize those numbers in a way that we can extract some meaning from the data using two primary types of tools. Numerical summaries of the data as well as pictorial summaries of the data. Numerical summaries of the data, including our common statistical calculations, such as the mean or average quartile one, the median quartile two and three and so on, pictorial representations of the data, including things like our box and whiskers or box plot, as well as histograms. In this section, we're focused more on measures of dispersion or spread of data building on our measures of center. So in other words, many of our standard statistical calculations we focus in on our measures of center, the most common to being the average or mean and the median. We now want to be focusing more on the spread of the data around that center point, doing so not just with a visual representation such as a histogram or box and whiskers, but with a numerical representation such as the variance and standard deviation. So this lecture focusing on methods and principles when dealing with complete population data. Note, when we look at calculations of spread, the most common being the variance and standard deviation. There are slight differences when you're talking about the entire population, as opposed to when you're talking about a sample. And here we're going to start all talking about an entire population in future presentations. Then we will get into the sample. So measuring central tendencies. So we got into this a little bit in prior sections. So we'll kind of recap those central tendencies and then move on to the measures of spread. So we've got the mean or the average, the most common, the most famous type of calculation. Most of the time when people are trying to summarize data with one number, they're looking for the mean or the average. So definition, the sum of data divided by the number of the data items. So we're going to sum up all of the data divided by the number of the items. It's often denoted by an X bar on top, the X with the bar on top, or a mu, which looks like a U, it's the Greek letter mu, has a physical interpretation as the balance point of the data. So if we were to look at a histogram and put a fulcrum under it and balance the data on it like a teeter totter, the mean is that balancing point is affected significantly by outliers. So if we had outliers, such as we saw with some of our salary data set, if we then added the CEO salary, which was like a millions or millions of dollars, then that might have an impact or will have an impact on the mean. Whereas when we look at the median definition, the middle number in an ordered list. So if we list our numbers from smallest to highest, pick the one in the middle. Now we've got the median, a resilient against effects of outliers. That's one of the benefits of the median is that the big outliers not going to have a big impact on the median as it will oftentimes with the mean or average. All right, let's move on to the dispersion, dispersion and five number summary. So we took a look a little bit at the five number summary, which is kind of related to the box and whiskers or box plots in prior sections. They do give us kind of an idea of the spread. In other words, a simplistic approach to understanding spread is the five number summary where we're just going to take the data and break it out, right? We'll take the smallest point of the data, we'll take the first quartile of the data, we'll take the median of the data, the middle number, third quartile and the maximum. So this is a similar concept as simply taking the median, the middle number and the data set and breaking it out a little bit more than just taking the middle number, right? We'll take the smallest number, we'll take the first quartile, the first 25%, then the median, which is the second quartile, the third quartile and the maximum. So if you just have those five numbers, you do get a visual representation of kind of a spread and you can kind of, if you look at a histogram for example and you imagine those five numbers, you could say, okay, I kind of get an idea of the spread of the data. However, there are limitations to how much of a concept of spread you're getting with this five number summary. So we want to add another numerical representation to it, which is going to be the variance and the standard deviation ultimately. So this five number summary does not give a refined sense of where all the data lie. So they give you a rough, it's a good summary, a good tool, but we probably want more tools to get into that spread of the data. The histogram does offer visual insights about data distribution and dispersion. In other words, as we've seen in prior sections pretty in some detail, when we look at the histograms, we get a good visual representation. I can look at this five number summary and the histogram and I can say, okay, if I also calculated the mean, the fulcrum point would be the mean and then I can get an idea of where these five numbers kind of lie in our histogram. So the histogram is a great tool to get an intuitive sense of the spread of the data. However, we'd also like more tools to get the numerical spread of the data as well. And that's going to ultimately be once again, standard deviation and variance. But before we get there, let's first try to think this out in a more intuitive way, which we will do in practice problems as well. So you might say, hey, look, if I want more numbers than this five number summary to get an idea of the spread of the data, what might I do from an intuitive perspective? We might do something like an average deviation, which is a stepping stone to get to what is used most often in practice, standard deviation and the variance. So remember the average point, if I look at my histogram is the focal point at which there's an even point, if you think of this as like a teeter-totter. So if I want to get my spread, I might say, hey, look, why don't I take each of the data points represented by x here, x sub i, i equal 1 to n, all the data sets, take each data point, subtract mu, which is representing the mean or the average. So if I take each data point in my data set minus the fulcrum, the middle point, the average represented by mu, I'm going to get the distance from the middle point of each data point. Now, if I take that, what's going to happen is if I add up all that data, it's going to add up to zero because some of these are going to be higher and some are going to be lower and the property of the average means that we're going to end up with zero if I have positive and negative numbers. So you might then think the next thing to do would be to take the absolute value and that means that we're taking the distance from each data point to the average, but I don't care if it's higher or lower than the average. I'm not using positive and negatives. I'm just looking at the difference, whether the difference go to the right or go to the left, higher or lower just the distance. And then I'm going to take that distance and divide by the number of units and that would be the most intuitive thing that we might come to if we kind of mold it over. So one intuitive way to measure spread of data is to look at how far each datum is away from the mean. So this each datum from the mean represented by mu, then take the absolute value of the distance of each data from the mean, absolute value, take the average of those values dividing by n divided by n. The average distance from the mean is a potentially useful measure of dispersion, not the most commonly used measure. So although this leads into the most commonly used measures, variants, standard deviation, it's not the one most commonly used. You could use it, but not the one you'll probably be working with most of the time, delving deeper into dispersion. So now we have the variance and standard deviation definition quantifies how spread out the numbers are from the mean. So now we're moving from the average deviation formula to the variance and standard deviation. So you can see the similarities will go into the similarities and more detail between the average deviation taking the absolute value, whereas the variance is squaring and then taking the standard deviation is just taking the variance, which is everything under under here. And then we're going to take the square root of it. So these two are basically related. The variance is kind of a stepping stone to get to the standard deviation, which is why the variance often represented by sigma squared standard deviation, simply sigma. So the variance, let's go into it step by step, denoted by s squared or a sigma squared Greek letter sigma, average of the square difference from the mean. So we're going to say similar to what we had with the average deviation, where we're going to take each of the points and subtract it from the mean. Same thing we did before gives us the distance of each point from the mean, but instead of taking the absolute value, we're going to square it. Now the squaring of it has the same property of removing the negative numbers, which we need to do so that we can take the average distance. However, it also squares it, which means we're going to end up with a lot larger numbers, right? So now we're going to square it making everything positive, but also making them squared and then divide by n, and that's going to give us the variance. Now the variance is kind of an abstract number because it's going to be a very, it's going to be a larger number, but it in and of itself, especially when we're comparing different data sets like salaries in the U.S. versus salaries somewhere else in the world can be a telling factor oftentimes in comparative purposes. Even though when you look at it in and of itself, it might seem like a number that's not giving you a lot of value. But then the next step would be the standard deviation. So now you're simply just taking what you had for the variance and taking the square root of it transforming the variance, which represented by sigma squared to just sigma, the standard deviation. So same exact thing except now we're taking the square root. So it's kind of like we squared it and then we took, then we kind of removed the squaring of it by taking the square root kind of. You're not going to get to the same number as we got with the average deviation, but you can see a similar kind of process here in that with the average deviation, we took the absolute value to deal with that negative number problem here. We squared it and then basically took the square root. All right. And we'll talk more about why we might use this, which looks more complex than the average deviation in a second. So standard deviation, square root of the variance. So we just took the variance and then took the square root of it gives the average distance data points are from the mean. So average distance from the mean values will be larger if the data set is more widely spread and smaller if the data are close to each other. So again, both of these numbers often seem a little bit more abstract, but if you're comparing different data sets, it becomes apparent because you're going to say, well, if the standard deviation is larger, you would expect more spread in the data from the middle point from mu the mean. If it's smaller, you would expect the data points to be more compact around that middle point. So they are affected by outliers. So if there's a big outlier in the data set, notice we're comparing to the mean, the middle point. So if the mean is impacted by outliers, you would think then it would also be the case that both standard deviation and variance would be impacted by outliers as well. So we have to keep that into consideration when we're dealing with outliers. Basically, the square root of the average square distance from data points to the mean, note for samples n minus one is used as the denominator to account for degrees of freedom. So we're dealing with a population here. You might see a similar formula when dealing with standard deviation, but in the denominator, you've got n minus one. That's because it's a difference between taking the standard deviation for the entire population where we have all the data for the entire population versus a sample where it's a sample of data in the population. We'll talk more about that in future presentations right now in this section. We're generally focused on data, which we are imagining to be the entire population. All right, let's get it back into this question of why square the differences. So back into the question of why don't we just use our average deviation? If my problem up top is that when I take each data point minus the middle point or mean, that results in negative numbers and I need to get rid of the negative numbers so I can sum up the differences from the mean. Why not just take the absolute value instead of squaring it and then, in essence, taking a square root of it? And one reason is that the population mean then a unique value that minimizes the sum of the square differences. In other words, it has a characteristic to it that it's going to come up with a unique number. So we'll show this in one of our example problems. But when asked why we square the data, most people will tell you that you do that because that gets rid of the negative numbers and you need to get rid of the negative numbers. But then the question, of course, is, well, why don't you just take the absolute value because that also gets rid of the negative numbers and is easier because you don't have to square it and then take the square root. And in mathematics normally, we want things to be as easy as possible, removing any excess steps so that we get down to the simplest kind of formula that we can apply to a particular situation. So you would think there's got to be a reason why we would do something that's more complex. And basically, if we were to take some focal point other than the average here, for example, and I use just some other number as the middle point and compare to it, we could end up with the same number when I take the average deviation. Whereas if I take this method, the standard deviation, I come up with a unique number when using the average in this slot as opposed to some other number I picked as well. So that might not be completely necessary to understand to do the calculations, but that question often comes up and so it's kind of useful to get an intuitive understanding. We'll work a practice problem related to that. So implications and applications. So comparing dispersion in different contexts. So notice that once you have these numbers, if we have to have the data sets in comparison to actual reality to be drawing meaning from the data set. So for example, if we're dealing with salaries and large corporations in different countries and we had the data sets for these different countries and we were measuring some of our statistical tools such as the central points median and mean as well as the dispersion, standard deviation and variance, it might give us some implications about the different strategies of incentives and compensation from the different countries, right? We might be able to draw conclusions from that data set. But of course, we need to know the contexts of the data sets in order to be drawing the conclusion. We need to know that their data sets about salary related to one company versus another country that might have different strategies around compensation. And then of course, when we get the data, we possibly can draw conclusions around of that nature. So inferring meaning, while statistics provides valuable tools, it's the application and understanding of the context that brings deeper meaning. Data must be interpreted within its context. Now notice also, when we deal with data within context, we also are going to inevitably be dealing with some kind of politics around it as well, whether that be corporate politics or other, you know, government politics or everybody's got, you know, their biases that are involved and that often again leads people to go to the old quote of, you know, lies in statistics, right? As if the statistics are at fault if there's kind of misleading data. So we have to properly be able to represent the context because again, it's not the statistics fault. The statistics are just the numbers. They are the stats. If the context around the statistics are being misrepresented, then we have to get down to the misrepresentation of the statistics of the context just like we would if people misrepresent something in words, right? It's not the words that are the problem if people are using words improperly, misdefying words, making up new words, saying words that mean one thing and acting like they mean another. It's not the words fault. The words aren't at fault here. It's the people that are lying with the words. So the same thing is the true with the statistics here. So we have to keep that in mind. They're just a tool. So summary, the mean and the median, although useful, don't tell us anything about how widely spread the data are. So remember that most of the time those first central tendency numbers are the ones we look at, the median and the mean, but we also, it's going to be quite useful to know the spread of the data which we can visualize with a histogram but also would like more of a numerical representation. A histogram gives a good visual sense of the distribution but not a summarized numerical one. So the histogram is great, but we'd also like to have a numerical representation. The five number summary you might say and associated box plot gives some sense of how the data are spread out but can sometimes be misleading. We'll do some examples to show that. So you might say, hey, the five month number summary gives me a nice picture of the spread of the data to some degree, but we'll actually show an example to show where it falls short sometimes where we have two very different data sets which actually result in the same five number summary and box and whiskers plot as well. So the standard deviation is a numerical measure of roughly how far the data are on average from the mean. So when we look at that standard deviation, remember that's kind of the idea of it. You've got the middle point, the mean, the focal point if you're looking at the histogram and you're trying to think about the average distance from that focal point with the standard deviation calculation. Now, remember that the standard deviation and the variance can be a little bit more abstract of terms. In other words, when we think about the mean or the median and even the five number summary, the data in and of itself is usually enough for us to kind of grasp what it's telling us about the data to some degree. Whereas when we get into the standard deviation and variance, they can be a little bit more abstract. So working through practice problems and using different data sets and again, kind of getting an idea of the context is often useful, especially in a term like the variance, for example, can look like a very abstract number, but it can be a useful term when we're comparing different data sets. So we'll work some practice problems in this section and we'll continue on with these concepts in future sections.


We want to make sure that the government follows the First Amendment, which means that except for some very narrow categories of speech, essentially you can never be punished for what you say, you can't be put in jail, the government can't find you, and you can't be censored by the government. That's appropriate. The government has police, it has the military, it taxes people, it has a lot of power over people's lives. It's also true that private companies have a lot of power over people's lives, but there is at least a solution to these problems, which is we want there to be more robust competition between different platforms that might tackle these issues differently. In terms of promoting free speech in a more general sense, apart from the First Amendment, I think that removing hate speech from platforms that are intended for mainstream users is a way of promoting free expression, because it's very hard to get your ideas out there to communicate with like-minded people if you're in an environment where you're being attacked, you're being harassed. Every time you say something, you have a thousand people saying mean, nasty things to you. If just using the site is unpleasant and stressful because you're constantly seeing these hateful kinds of messages, which are very hard to filter out.  But we're not saying that those categories of speech necessarily should be illegal or that they shouldn't have anywhere where people aren't allowed to communicate with people who want to hear that. It's actually very helpful to have a more sort of curated and edited environment in which to make yourself heard.


So you have two different styles, the 61 models and the older will definitely have a different style of the switch back here and the bracket will be a little bit different. So you've got to just pay attention to what style you have so if you look at the pictures on adjustments. The other one has two bolts and you can adjust it. This one has a single bolt you can take out and loosen up and then you can move the switch accordingly to the arm. So that's what I wanted to check to see because that bracket that the switch just The thing is is if you want to go all the way up the light will never, this light will never be able to go out because the gear is not going to match with the doors and the gear swing in that case. Yeah we're going to, we're at the point where we're going to have to do a gear swing to make sure with the doors being hydraulically moved that they're operating correctly. Because right now it's working as advertised.  I don't know what they did yesterday.


Hello and welcome to NewsClick. Today we are in Ladhyaada reporting from the Indian Women's League which is India's national football league and we are joined by Memol Rocky who is the first woman to become a coach of the national football team. She is currently serving as the coach of India's national women's senior football team. So we are going to talk to her about her journey of rising to this position, what challenges she faces, the current status of India's women's football and a lot more. So thank you Memol for joining us today. To start, can you talk about your journey first from going from an athlete to a national coach? What kind of obstacles did you face? Why did you come into football in the first place? Can you tell us something about yourself? I belong to Goa. I played from my childhood I am in Goa and I was into athletics first then I slowly shifted to football as one of my coach said it's a good sport you can join and I should enjoy seeing my brother playing football so I started playing football and maybe within two years I played for the country as a player and then when I was playing I had a good guidance from my coaches to do my licenses. I should travel with the team as managers earlier, the Goa State team and slowly I did all my licenses. In 2012 I was with the national team later on. From 2012 I was with the age group teams slowly slowly worked hard for it now where I am definitely there will be a lot of hands which have put in which have helped me to be here but then from your side also you have to work hard for it so I think from my side I did a lot of hard work to be here being a woman to be here everybody might know this it takes a lot of things to be here so I again happy to be here at this position and I can hold the girls team it is so I'm a woman myself so I can understand I have played for mice like I have played so I know what is needed what is wanted but then yes still learning from things what I am moving around and trying to make the best team what I can do for the national team. Can you tell us more about the sort of obstacles you face considering the fact that it is still predominantly a male dominated sport so even during your training you might be in spaces which are more you know had more male presence how you know what was that experience as you said this is a male dominating country so when you say that word only you can understand in football it's more about male it's a male sport normally so slowly now it has started taking a change so but when we were playing or when we were doing all our licenses it was always male and you might be the only female in a course but then the colleagues what I had they really helped me too because I was young and wanted to learn more so it was always with the colleagues what I had they were really helping me out but then again you are never you were highlighted because you are the only female or maybe the two females who did courses together but when it comes to a national team to be a national team coach hundreds of coaches around in India to be this to become this but then I think I was a lucky one worked hard for it I believe in God so I think maybe this was my opportunity but then while playing also we that and the sports football was not given that much of importance but it took time we played till we could and I think when I was already with the national team also I should play for the state with the senior team so there were a lot of problems but then it was we had to manage it by ourselves because I come like my father was into sports so I come from a sports background so my father was always interested so it was no pressure from my family because they were like supporting me for everything I got a job in sports authority of Goa as a football coach so again where I was into sports so it was like we worked hard for it but you know being a girl and to be at this position it really took a lot of things but then it's you cannot express is or you cannot tell it by words but there were a lot of things but really thanks a lot of people who are around I cannot name people because there were a lot of people to help me to be here so I would just say thank you to them who are really supporting me still for this and again I will say Federation believes in me that's why I am here because I was earlier with the age group team slowly I shifted to the senior team it was not like suddenly I was in the senior team earlier I was assistant coach and then shifted to the head coach post so I think and the girls also again the credit goes to the girls they accepted me as a coach and they believed in me they worked for me because finally it's you what you tell the players they know they are playing for the national team but players also input for me because now also the way they are supporting me for whatever I'm saying because finally it's what you say to the girls they have to do it so it's not like you can do some magic until the girls show it on the field it becomes difficult but then I think girls also really supported me for that and during your tenure under your guidance the it has been seen has been reported that the football team is performing much better than it was before the winning matches and just generally doing better so can you tell us more about what sort of changes you brought in the team to you know to make this happen one thing I started making them believe in themselves it's earlier it was like they should think we might we can it was always a question mark so I just made them believe in themselves we worked on that and we had this four months in our hand together the girls were staying together so we worked hard for that plus the only thing I like in my thing is always playing attacking football which I I made sure the girls also believe in what I tell them to do which they if you see starting we had a lot of problems at the start because we were not ready for it we lost Hero Gold Cup that was very sad and disappointing in the country we lost to Nepal first but then those were preparation for SAF and Olympic qualifiers round two and I think once you see after that once we played Nepal we always defeated them like 3-1 a bigger margin so it's only like the girls need time and especially I had this young team every jay just 21 years so again they also need time because they have hardly played in international matches if you count our girls playing them if you have counted them previously they might have only reached 20 or 25 international matches in their career in this four months we have played almost 20 international matches now so it's like one thing good what the girls got this exposure again if Federation had not believed in us it would have been difficult so they believed in the women's team me and the players that's why we were here and with this good result and like you're saying women won the the players are not getting the chance to play so many matches before this is probably also true the fact that it is again a women's sport and it is not given as much attention we have to accept that at least till now it is not being given as much attention so do you feel like this kind of you know differential treatment which is given to the sport is all also thanks the players morale at the end of the day like even here for that matter the match timings are such that they're playing in such you know very in such extreme heat and then the stadium is empty so that kind of thing do you think it brings them down a bit and it needs to be of course it needs to be improved so what do you feel about that the problem it's not about sports only it's everywhere if you see there's a differentiate between men and female if it is any job let it be a media people anywhere you see any not a word sports it's anywhere but then I for me at least from the time I have started into football I can see a lot of a lot of things happening for women's football at least I'll talk about women's football a lot of things happening a lot of improvement the accommodations have been better the traveling has been better earlier we should travel by train and now it's by flight so the players also enjoying the best facilities for now we are traveling if you see in this four months almost two months we have been internationally expo like we were going for this exposure is exposure so you know it's not like you cannot say but things again I think need time and we need to give results also otherwise who will invest money in you so I think this time the results were better Federation is like supportive so a lot of things were happening this time at least I can I cannot say about past here there were a lot of when I played a hardly we like there was no money involved there was no league there was nothing once a year we should play a national so those time were different now if you compare it's definitely changed definitely and you're talking about people are not ready to invest so right now where is I mean is this like a lot of government has the government funding increase or the private sponsors coming what sort of changes are there definitely I cannot talk about this money but who's investing in we have our sponsors in the federations we have whenever we go for any international tour it's this government who's helping us to you know travel this international matter so it's a lot of hands put in together but then we cannot name any person who's sponsoring and Federation cannot we cannot just take any any local sponsors so whatever is linked through Federation we can go to that but I think definitely the things have been improved and we are getting better facilities this is also in terms of because the players they're not getting proper full-time contracts and also fix their playtime if they're not able to play full-time then of course they won't be able to progress is clear that's a wrong thing you know we think national team will give them money or national team will do a contract with them it's about the because the club culture is not around normally it's if you see any boys or men's team or any international like abroad teams they always been in a contract with a club and they just come to play for the national team they hardly get any money for that it's just the name but then here now what happened we don't have a club culture so we always think Federation has to do it so that's something wrong and then but still I think what Federation what Federation is paying them it's a good money what we get earlier I can I don't want to say what is it's now earlier we should get 25 rupees so now it's much much much much much better what the girls are getting per day allowance what they get the stay is there free it's food is the best food what they get because it's like all the aphazios take care of the diet and things so it's the best food they get back home I'm sure if I'm also at my home I will not have a big meal breakfast I will just have maybe one fruit maybe some porridge and some bread and some toast but once you are in the camp you have different things to have and it's the proper diet so I think once a player comes to a camp they enjoy they they have all these facilities so I think you cannot criticize for anything like that okay and also coming to Lenin women's league how do you feel the league has progressed since it started in terms of the players the clubs and in terms of the media coverage it's getting definitely as you know earlier what teams we had now we have 12 teams so again that has become better the media coverage has become better we have we are on Facebook live a lot of people watching it we have just put it on the lot of people watching it so that's one thing where we are getting attention that also comes with the national team results so it's all I think linked with the results and I think players are getting well paid in this league at least I know all my national players are with the different clubs everybody is playing with a good amount of money so it's not like earlier we should play for free so now nothing comes free so now everybody is getting paid clubs are taking interest two three clubs who have really paid the players well and some young teams are there they are getting better and they have come for exposure I think so but for us it's like we can see a little more girls earlier it was like if six teams so now this time it's like 12 teams better for us and can you talk about the preparations of the under 17 how is that going how is the scouting process going and you know what are your general expectations from the Indian team whatever is finalized we started I'm in the scouting panel so we started our scouting from Kolhapur the junior nationals so we selected some players the camp has already started in Goa so there are like 35 girls the camp has started and slowly now the coach will start shuffling the teams more of scouting will be all over India a lot of nationals happening a lot of tournaments happening for them and think at the end of the year we should get the best best of the best girls for the World Cup team because that's that the biggest platform so we will also work for it and we will Federation also is doing a lot of things for them so it's a lot of exposures for them there is a lot of things it's like we just need to sit and have patients like believe in the women's team I think they will do it a good job for sure finally last question what do you feel about the future of women's football in India seeing that India has been given a chance to host there under 17 I can just say it's growing for sure if you see earlier and what's happening we had never had a World Cup like we had never participated in a World Cup so this is first ever time so you can see a lot of things happening for women's football in senior team you have seen the results coming up young team so I think it's just the time and patience and everybody needs to believe in the women's team or the girls team it's just that I think it'll do better thank you me more lucky for talking to us today and thank you for watching this clip pleasure thank you


Welcome back to the breakfast and plus TV Africa. We talk about a second Conversation we're looking at the signed reworked electrobial Of course the president has given his ass in but a little bit of the background to it And some of the highlight and high points of the electrobial That has gotten a lot of Nigerians very excited even implemented to the latter We would actually according to the president. It would be a reverie Rationally, okay, that's actually a tongue-twister. Let us slide a president Muhammad a Buhari has since 2015 declined to sign the electrobial for the number of times with varied excuses And this has led many observers to believe that his commitment to leave his legacy of robust electoral Reform process is actually just a mere talk. It becomes it came barely a week to the Expiration of the window of the proposed legislation as required by the Nigerian Constitution having received the bill from the National Assembly on January the 31st various stakeholders including political actors and civil society groups had awaited the signing into law of these Beal by the president now finally the president gives his ass into that and the highlight of the bill Includes the early release of the election funds to INEC electronic transmission of result the right to review election result and Declare under duress and persons with disability are also included Overvoting redefined early conduct of party primaries and submission of candidates early commencement of Campaign candidates and substitution in the event of debt. These are some of the highlights Of that particular bill that has gotten a lot of Nigerians very excited But unfortunately, we would hope that we have this conversation tomorrow But I think that this is a good one I mean at some point we're very skeptical whether the president was going to sign this bill or not looking at the time That he has given not also taking out the fact that As it is right now the date for the elections the presidential elections have been shifted Just few days from when he's supposed to happen Regionally the elections would have happened on the 18th of February 2023 But it has been shifted to the 25th of February 2023 as well as the state houses of assembly election and the governorship election Which will happen on the 11th of March Like I mentioned earlier on we're hoping that we would have enough time to talk about these what this means for our democracy and If this is actually implemented to the letter because there's also another concern of Implementation as we are in a country. I mean we have too many laws. Are we able to implement? You know some of this loss, but if we're able to implement These then it would mean a lot, you know to our democracy would mean a lot for us Calm the 2023 elections, but Kofi are you excited about the fact that the president has finally given his ass and you know to this one Yes, yes excited. Well There's a lot more to be achieved. There's a lot more to be done So for me the world won't be excitement. It'll be less scared over and done with and move on the justice Mohammed who wears Committee report is still there yet to be implemented a government spent taxpayer money to set up a committee in 2007 under the then president was I at what administration when he said indeed admitted that the election that brought him to power even though And he was widely accepted by Nigerians He said it was flawed and proceeded to do something about it Unfortunately that that that committee report has been gathering dust in Asorok since it was submitted But I'm could us must go to the president of course for doing the need for was this administration that initiated The electoral reforms. Let's not forget it. They on their own, you know began this You know, so I mean Nigerians should also remember that this administration was the one that initiated electoral reforms And indeed the other one that have now signed it so it's a step in the right direction, but there's a lot more to be done and it's not time to to have a Tea party over it, but time to take stock and to get to work really but thankfully I think has released the time table for the elections mercy and The campaign to start in earnest I mean in in River State one of the leading politicians and do more Lou Briggs landed at the airport and announced that he wants to be governor So love people are making announcement to see more in the days ahead But that's that's so much you can take for now on the breakfast right here on plus TV I've got it's been quite an interesting one and hopefully and definitely will return tomorrow With more interesting conversations right here on plus TV Africa. Well, if you missed out on any part of the conversation It's alright to follow us on Facebook Twitter and Instagram and subscribe to YouTube channel It's a plus TV Africa and plus TV Africa lifestyle. I am messy book or many. Thanks for watching And I'll go fever tells return tomorrow. Take care


If you like romance or romantic comedy movies then I think this next book is gonna be for you. It is called When Dimple Met Rishi and I mean how cute is this front cover with her like pretty white teeth and her pretty brunette hair and this coffee that looks actually delicious because I feel a little bit tired today myself and her cool henna tattoos. I keep pointing to the wrong part of the screen. Anyway the cover just in itself is super cute and if you like romance and quirkiness and just a lot of fun and like I said romantic comedy movies then this book is gonna be really good for you to read. It is about a girl named Rishi I mean start over a girl named Dimple and then a boy named Rishi. They're both recent high school graduates and are about to start college. So Dimple is from a family where the mom really wants her to have the traditional Indian husband to find that. That's like the goal that every Indian woman should have in her mom's opinion but Dimple is a little more modern. She wants to get a job and take all that kind of slow and not think about that so much right now and then is Rishi and Rishi comes from also a traditional type family but he also has more a traditional he holds more traditional values and so he is getting ready to go to college but he not only does he wants to get his college degree but he actually has a wedding ring already ready for his future Indian bride whoever she may be and so kind of a little bit different perspective. Well these two end up meeting each other at this tech summer institute that they go to at a college campus and you know not to be like too predictable but they form a friendship relationship but it's not doesn't go down exactly like you might be thinking. I do like this part of the cover where you can tell she is spilling that coffee directly on him which cracks me up and is so so much fun and so if you want to read a book that is just super feel-good and also has I think some really neat perspective with the Indian perspective on life and relationships and gender roles then this might be a really awesome book for you to read and I don't know if I said this but it's also on the Sequoia list for this year. Enjoy!


The Cien Jiao Tong University, XJTUSY, rolling bearing dataset was used to develop a deep learning technique for bearing fault diagnosis. The RMS, Cortosis, and some of frequency energy per unit acquisition period were used as health factor indicators to divide the entire life cycle of bearings into two phases, the health phase and the fault phase. This division expanded the bearing dataset and improved the fault diagnosis efficiency. Multiscale large convolutional kernels and gate recurrent unit, GRU, networks were introduced to improve the deep convolutional neural networks with wide first layer kernels, WDCNN, network model. Training and testing processes were visualized, followed by experimental validation for four failure locations in the dataset. Experimental results showed that the proposed network model had excellent fault diagnosis and noise immunity, and could accurately diagnose bearing faults under complex working conditions. This article was authored by Linsher, Xiaowisiu, Wanzhuang Wang, and others. We are article.tv, links in the description below.