Now, identifying the visits to states like often when we have a Markov chain like it is going to be taking different different states fine, I may be interested in when is the first time it is going to visit the particular state and to visit that state possibly on an average how much time I am going to spend, so such questions you may be encouraging right. For example, on an average how many times my share price crosses a certain number and you want to have a want to understand the distribution of such counts. So, for that we have this notion of hitting times and recurrence. Let us take a state I and state J, I am interested in let us say if I start from state I then is the first time I am going to hit state J. Now, I am going to define if i j n as probability that x 1 not equals to j x 2 not equals to j all the way up to x n minus 1 not equals to j and exactly x n equals to j given x not equals to i. So, what I have done here starting from i I am interested in hitting state J only in the nth round not before that I am assuming that i and j are different here now. Now, I could set n to be anything I could just say n to be 1 that means what I start from state i and I want to go to state J in one step or I could state any n positive number. And now this probability is giving me what is the so this expression is giving me what is the probability that I will go to that state in this exactly n many rounds p of j this one is it this is p i j of n what is p i j of n it is just like it is going if you start from i and you want to be in state J after n steps. It does not say that you can this one will say that you cannot go there in between this allows that option then. So, now this is what in a way if I am interested in knowing my first visit to state J here starting from i my first visit to state J of starting from i in n number of rounds ok. Now, suppose let us say T n is first visit to state J I mean I am assuming that starting from i you can visit from state i to state J in either one steps or after two steps or after three steps or maybe like it can go on right you do not know how many times. Now, if I want to say what is the probability that T 1 equals to finite what is this what is this probability. So, I could go from state i to state J in one step or two steps or three steps or whatever right can I express this in terms of F iJs what would be that. So, the rate may be just at the tk those may be just at the tk 3 may be just at the tk all these are fine right. So, ultimately I can say that like this can also I can say probability that there exist n such that X n equals to J starting from eventually I want to I am going to hit state J starting from i right. So, this is nothing but nothing but F iJ of n and what is n n is going to be greater than or equals to n. So, this is saying I am going to hit n, but right now this is not telling at what round and you could be hitting in 1, 2, 3, 4, 5. So, there exists some edge such that I am going to hit state J starting from i. So, this is nothing going to be the sum of all these F iJs. Now, I am going to denote this quantity as F iJ equals to summation F iJ of n if this quantity is going to be less than or equals to 1 or equal to 1. So, I just showed that this is nothing but some probability right probability are some event happening T 1. So, this has to be necessarily it is going to be less than or equals to 1. So, now suppose let us consider a case when F iJ is strictly less than 1 what does this mean? So, F iJ less than strictly less than 1 means there is a possibility that when I start from state i, I will never come back to state J that is why we are calling it as hitting time and recurrence whether this is happening or not. Suppose F iJ is less than 1, we kind of understand that there is a positive probability that if I start from state i, I will never come back to state J. I will never hit state J again and now if F iJ is equals to 1 what does this mean? I will come back to state J starting from I in finite steps. Now, whenever let us consider this case whenever F iJ is equals to 1 that means what this F iJ is does it make a probability distribution on n? So, all this so we know that each F iJ of n is going to be greater than or equals to 0 right this quantity cannot be negative because this is a probability here and if I am going to say F iJ equals to 1 that means this is a vector and this is a infinite dimensional vector and it sums to 1. So, this is going to be a probability distribution on what or n whether it is going to take 1, 2, 3 or up to whatever value. So, this is going to be a distribution whenever that is the case whenever let us say whenever F iJ is a distribution by the way when F iJ is less than 1 we are going to say that state J is transient starting from I what means by transient that means yeah I mean if it means it is possible that that it will never come back to that state and when this F iJ is equals to 1 I know that starting from state I will surely come back to state J right after sometime I may be whatever time it is going to take I will surely come back to this. Now, this is a distribution let me write this we call it as first process time distribution. This is a distribution taking what values discrete values and what are these values n equals to 1, 2, 3, 4 right. So, probability that it takes 1 is F iJ 1 probability that it takes 2 is F iJ 2 and probability that it takes value n is F iJ n like this. Now, let us say instead of starting from state I and looking at some others hitting other state let us take now let us take I equals to J. Now, what I am interested in starting from state I starting from state J and again visiting that state. So, in that case if F iJ is less than 1 that means if I start from state J there is a possibility that I will never come back to state J again and if F iJ is equals to 1 that means if I start from state J it is possible that I can come back to this. So, for example, let us say that your share price of a particular stocks hits some 100 rupees then the probably. So, let us say it is base price started from some 100 rupees probability that it come back to 100 rupees again if that state has F iJ value equals to 1 that means it is going to come back the probability given again to state and then if this F iJ has value 1 that means that it will never hit that 100 rupees value again I mean it with some positive probability it may never hit again it may hit, but there is also chances that it may not hit 100 rupees again. Now, I know when F iJ equals to 1 this F iJ offense forms a distribution in that case further I am going to define another quantity called expected value which is defined as F iJ of F iJ. Now, this F iJ is here so what is F iJ and this is the probability that the first time I am going to hit state J again in n rounds. So, what is this is going to give me expected time to hit state J again expected time to return to state J. So, when I have this F iJ if this F iJ I am going to call it as probability of first return to state. So, I am calling it return because I stating from state J and again looking at coming back to this or returning to that state J and this is mean return time. As I said let us take a J S. Now, we can classify that state based on this observations. Suppose if my F iJ is equals to 1 or my F iJ can be less than 1 further when my F iJ equals to 1 2 things can happen right. That is my VJJ can be so sorry new J J can be finite or my new J J can be infinite. As I said when F iJ happens to be 1 we are going to call that state J as recurrent because we have a positive probability of coming back to this and then F iJ is less than equals to 1 that means it is transient. It may come back sometime and then die out it may not come at all right. So, in that case it is transient. Now, when it is recurrent yes we know that it is going to come back. Now, the question is whether it will come back soon with high probability or it will come back but after a long long time. So, when you are you know it is going to come back. Now, you may be interested in knowing the frequency of coming back right in a way. It is going to return quite often or it will return but very rarely right. You may be interested in these two scenarios right. So, when it is going to come back frequently what is the case you expect this mean return time to be. It will not be large right in that case it is coming back frequently. So, that may most of the times may be n are smaller and those smaller when will have higher probabilities right and the larger ends will have smaller probabilities. But on the other hand if this guy is not returning so frequently it will coming up very very long time or this is happening very very rarely. That means the n values which has having positive value or the mass right those are going to be very very large. So, because of that this Vjj may be may be large or may be unbounded also. So, that is the case we are going to distinguish here. So, when it is recurrent yes we know it is going to come back but whether it is going to come back frequently or it is going to come back rarely after a long long time. So, if it is going to come back after a long time or it is going to come back rarely we are going to call this as null recurrent and then we are going to call this case as positive recurrent.   So, what insurance guys like they like that you pay regularly the premium and do not come back and claim anything ever just keep paying ok. So, but anyway they are supposed to pay you when you are in trouble what if some tragedy happens and lot of claims come. If lot of claims come insurance company has to reimburse lot of money right and their money may their balance may go negative also. So, suppose let us say so in that case what insurance like company want to do it want to make sure that at any given time its capital does not go below some threshold. You keep paying premiums its capital keep accumulating but at some point if large claims come and happen and small small claims are fine like everybody is paying premier some guys claim some coverage the capital may be still growing. But if some point large claims come their capital may start going below right. So, what insurance companies want is they do not want to go bankrupt right they do not want their threshold to go below some level maybe if it goes once or twice it is fine but if it happens often maybe they cannot survive in that business. So, let us take such a let us say insurance company is going to define some states if my capital is this much this is my state if my capital hits this much this is some states let us say some states and they will define one state which is they call it as let us say a danger danger level. If my capital goes this danger level that means I am in danger. Now what that state the insurance company likes to be they want it to be happened earlier right they do not want it to happen often yes some. So, in that case if you are going to model that case you want if your capital whatever the state you are going to define if it happens to be a null recurrent possibly then you are going to enter into if you are a initially a planner who want to get into this business and you have some capital with you and you have to decide whether I should this enter this matter and let us say you are able to model all these things and come up with all these distributions and then you are able to also compute the expectation. Then the question is should I enter if you feel that no it looks like my state of getting into danger happens to be a positive recurrent. So, this is looks very risky business I do not want to get into this. So, say calamities you cannot avoid right like I mean so far whatever like let us say for some reason some big tragedy happens and you cannot say that the tragedy will not happen again right and it can happen not in our control, but yeah so what fine this fjj so fjj is one that is means if the risk you some calamities happen today you cannot guarantee that the causality is never going to happen in the future right it may happen in the future. So, you are going to visit again that is what fjj one means it is not saying that not so fjj is equals to one means you cannot say that nothing bad happens in the future it can happen, but it may happen after a long time or short time that is what now matters to you the fjj equals to one it is just saying something bad will happen, but it the rate at which it is going to happen what matters to us right. If the bad things are again going to come again and again very frequently then you are I will say here that is the opposite right here this bad things are actually good things here because we are talking about this n to be large means ok. So, when n is so what is this when n is equals to large that means bad things are happen only very very later that means actually null recurrent is good for you if the bad things are happening very frequently that is a bad thing for you that is the other way around here. If you are in transient yes yes yes and actually we are in a good case like and also like I mean depends on the value of fjj it also says that you may never see a bad case again with 0.3 probability yeah exactly yeah exactly. So, that so as a modular you do not want to assume that it is basically assuming that ok some with some positive probability nothing is going to have bad is going to happen in the future you have to account it ok something may happen, but that may not be that frequent ok. So, this is all again the design choices like how risky or how risk averse you want to go for it based on that you are going to set these values ok. One more thing before we compute the other distribution. So, let us say this fijn right we know this is not pijn ok, but if but can can I compute this quantity only using my transition probability matrix TPM why is that if yes. So, what I need to know is x not equals to i I am not coming back to state j till nth round can I compute this probability using transition probability matrix verify that this and this is just like you just argue that yes we can compute this probability fijn using only transition probability matrix. So, all this characterization of whether my state is transient or recurrent and further positive recurrent nl recurrent this all can be explicitly stated just by knowing your transition probability matrix ok next ok may be before that let us look into this example ok. I know let us say I have been given some simple Markov chain with three states and I am going to express its transition probability in terms of this transition diagram like this. So, I have written in terms of a transition diagram you can also express in terms of the transition probability matrix the same thing ok. Now, can we compute f 0 1 1. So, what is this say that I start from 0 1 and I hit state 1 in one step what is this probability that is going to be 1 minus p. So, this is the only path right first time I am going to do and now if I want to do it is 2 steps p into and if I want to do it in n steps p to the power n or p to the power n minus 1 and now can you give me what is f of 0 1 f 0 1 a summation of all will be what. So, right right this is going to be yeah. So, there will be infinite. So, it is going to be 1 minus p into summation of p to the power n where n is going to start from 0 to infinity and that is I just work out this is safe over and now what does this say that if I start from state 0 that I go to state 1 is going to be 1 with probability with probability 1 I am going to hit state 1 at some point and because of that my state 1 here starting from 0 it is going to be a recurrent 1 ok. And now similarly maybe you can just also 0 ok now let us if I want to do 0. So, what is this probability that I go to state 2 starting from 0 in one step 0 and what is this is going to be. So, the only way I can go from here to here is this root right in one step many for the first time and then f of 0 3 is going to be what. So, I want to go from here to here in three steps.  So, what is that probability 1 minus p into p into 1 minus p is there any other possibility. So, you stay here in the first round on 0 then you go here. So, what is that value p into minus p and is it possible to write generally this one for n. So, I want to do it in n steps no in n steps 0 to 1 no we keep first time it is not all possibilities we are looking at ok. So, I compute this then you have to just basically work out in how many possibilities.  You can spend one step here go here then step spend another step here like or whatever like. So, there are many many other combinations which you can write down ok. So, as you see that then even for the simple things writing this can become too much of a combinatorial issue you have to look at all possible paths that you can go from one state to another to reach it for the first time ok. Now, let us compute this. So, one thing is the number of rounds required to hit a particular states and other thing is when you going to granite continuously how many times we are going to revisit that state right. So, revisit or return to that particular state. So, suppose let us say I have a state J and I am interested in this in this ok just to clarify here to the way we have defined the recurrence transient and all right. We have stated like ok you start from that state and again see visit to that state, but here what we have done is we have taken some initial state which could be different from the state we are going. So, if you want to in this case you had said f 0 1 equals to 1 that means if you are going to start from state 0 then state 1 is recurrent in this right. So, in the instead of this you can also compute what is f n 1 f 1 1 you start from state 1 and then again look at coming back to this in one rounds two rounds or three rounds whatever. So, is it easy to check this let us say let us compute this f 0 0 suppose if you start from 0 what is the probability that you come back to that state in one step p and then what is the probability that you come back to that in two states 0 right. So, what is that in that case this is going to be simply all other terms are 0 right you came back one times, but once you left it there is no return part to 0 right we are not going to come back to that again. So, if this is going to be simply p in this case if suppose p is less than 1 what is state 0 transient right that is obvious right 8 bar to either say hat k state say then you may not come back to that state again and if p is equals to 1 then in this case it is 3 well like you will be always in that case. So, like that you can compute for all the states and then based on that you can classify which one is transient and which one is recurrent and the recurrent one you can further classify whether it is non-recurrent or positive recurrent. So, to compute all this say all you need to tell you this transition diagrams or your transition probability matrix ok now look at to this what is this quantity guy is telling you. So, what is this is going to say 1 here if nth state is j. So, what is this term is telling you number of times you are hitting state j ok where the entire process. So, that is why this is called number of returns to state j and now I may be interested in computing expected value of m of j starting from a particular state ok. Now, what is this going to be expected value of can anybody now see see now this is a limit right what I so this is nothing but what I can write it as expectation of is this correct. So, this is nothing but n equals to 1 to infinity right I mean let us assume this limit exists limit as n goes to infinity s 1 to s this 1 now we are faced with now I want to interchange this expectation and this limit can I do so here can I do so in this example. So, let us say I call this as something as y n ok. So, I have this sequence of y n's and I have limit as n goes to infinity of this y n and now I want to interchange this right now I do not know where this y n the sequence y n convergence in any of the senses all I want to do is I want to check whether I can interchange this limit and expectation when I can do this if at all I can do this we can apply what research monotone convergence theorem you can we can can we apply here in this case. So, ok when so limit to to interchange limit and expectation what all the results we have studied for a sequence of random variables they are bounded convergence theorem and dominated convergence theorem and monotone convergence theorem. So, to apply bounded and dominated convergence theorem what are the hypothesis we needed that is one thing and we needed x n to be converging to some x in probability right. So, we needed to know that that sequence x n converges in some sense, but here and what is the last one monotone convergence theorem to apply that we did not need to know what is the limit of my sequence all to what is the hypothesis to apply monotone convergence theorem non-negative therefore, each sample point my process should be sample point is that happening here why is that summation of indicators right. So, indicators are all non-negative values. So, if you increase in for a given omega it is only going to increase and increases. So, I can apply my monotone convergence theorem and then interchange limit and expectation, but then this one is a finite there are only finite sum I can further interchange this. Given. Yeah, yeah given right and then I can interchange that this is going to be s equals to 1 to n what is the expectation of indicator that x n equals to j probability of x n equals to j given what is this is it x n equals to j given x not equals to i right and what is this by our definition Pij and this is nothing but I can write it as n 1 to infinity. So, my mean number of visits to state j starting from i can be expressed as simply as Pij of n for n going from 1 to infinity okay fine. So, let us stop here next class. So, what we have just now done is we have just written the expected value of this mj in the next class we will also try to see if you can derive the distribution of this mj itself okay mj is the random variable here which takes any value between 1, 2, 3 up to infinity right. So, how to find its distribution we will see that in the next class.


Dyda ni hynny oedd gweneddau sportwynt gwirio bach o'i cael Spicy I'm not an anarchist. I don't believe in private police forces. The state should control the police forces and control the military. I don't believe in private contractors for doing police work and for doing military work. That's the job of the states. The only job of the state. They have only one job. They run a police force right, run a military right, and they should do it. In South Africa, those kind of examples are great examples of the fact that private police forces don't work. They're corrupting and they ultimately result in my gang versus your gang, my police force versus your group.


Hey there friends, thanks for checking in today. We're going to do a little comparison with the Glock 43x versus the Glock 26 now when the 43x was introduced people said well that carries 10 rounds Why would anybody want a Glock 26? You know it's it's thinner and It offers a full three finger contact on the grip Why wouldn't anybody want that anymore? But then you had the people who loved the Glock 26 the Glock 27 some of the other Double stack subcompact locks and what are you guys talking about this gun has Way more to offer than that little single stack ever will I'm not changing the thing I'm sticking with this and I have to say that both groups are right in their own way And they are each gun has its advantages and disadvantages when compared with the other Let's take a look at the Glock 43x now many people wanted Glock to come out with a single stack nine millimeter probably three or four years ago That they wanted that they said single stack nine millimeters what we want and then the Glock produced the 43 and they said well, that's cool, but it doesn't have the magazine capacity You know you compare to the shield that don't have the magazine capacity So then what do we have aftermarket companies making mag extensions? Well, then what does Glock do? They put out a 43x with 10 round mags and people say well, that's not good enough. I don't understand some people It's like you can't make some people happy no matter what you do, but that is an advantage But it's also a disadvantage to the Glock 43x because here we have a 10 round Magazine and if you carry a spare which I highly recommend you could carry another 10 round magazine 21 rounds total right suitable most self-defense situations, but in comparison though here We're looking at a 10 round magazine right And then Here's an aftermarket magazine made by a men too all right Made for a Glock 19 so here I got 26 rounds or I got the 33 round mag that is the advantage now people say well, I'm not gonna throw that my pocket Well, maybe not and I don't blame that wouldn't but you could keep one in the truck You could keep one, you know in in inner pocket in a jacket throw it in there And now I've got 33 rounds right there. You can't tell me that's not an advantage That advantage is huge over the Glock 43x but Here's something else though. Look how thin that is that grip is thin Okay, so how you like your women? Tall and thin or short and chunky. I mean that that's what we're looking at here.  So you have a different feel there each person's Mileage may vary. Let's take a look at this part You're looking at that much More length on the grip. So there you're getting three finger contact here. You're getting two Maybe a little bit of that third finger with a flat base plate The barrel length are essentially the same both these guns are unloaded and the trigger Is essentially the same neither of these have been modified All right same Glock sights But another concern people were wondering, you know, because the the size is different The capacity with the standard carry magazine is the same What about the weight? So let's check that out right now because many people equate the weight of the gun to the recoil Impulse, you know the heavier the gun the less recoil. Well, let's first understand that we're talking about nine millimeter All right, you're not you're not dealing with much recoil with nine millimeter anyways But but some people are a little sensitive to that 16 and 1 quarter ounce and over here. We're looking at 19 and 3 8 ounces. So we're looking at a heavier gun here That has Most likely a better recoil impulse for the shooter and then over here We have a taller thinner gun that has a PVD coating. Somebody mentioned yet people have their opinions about it I kind of like it. What I wanted to do was take this off and put it on here and then call it a Glock 26 X but people would have been Click bait using click bait.  So I decided against that but anyways Well, I couldn't do it anyways because it doesn't fit But we're looking at the same gun different configurations barrel Length difference is nominal. Okay, essentially the same here We have the front serrations, which is nice to PVD coating three finger contact. So if I had to choose one It would be tough It would be tough for my everyday carry to and from work, you know So and I never put myself in a situation saying well if I go to a dangerous place I'm going to use the Glock 26 because then I'll carry this I hate that You have to be prepared in all situations, but in this case, I'm going to say my general everyday travel I think I'd be much more comfortable with the Glock 43 X Having said that if I was out where some I may not or may know something I'm just gonna stop right there. I'm gonna take this I've always said this was my favorite Glock and I still don't think that has Changed and if you like videos like this, please subscribe and share. I always appreciate thumbs up button Thanks for watching and you guys be safe


If we look at the games where Marquis Brown has played at least half the Snaps, he has 20% of the targets, he has 28% of the deep targets, like those aren't bad numbers and I wouldn't say this is my expectation, but it is within the range of outcomes that the Ravens have been holding him back throughout the year because of the injuries. He has now had the bi-week to get healthy and get rested. I'm pulling up the injury report now. I know that that Mark Andrews was limited in practice, but I don't think I saw Hollywood Brown on the injury report, which might be like the first time ever. Yeah, he is not on the injury report. I don't know what that's ever happened, honestly. If we assume his snap rates goes to 80%, which I think would be as high as this year, that could happen. You're giving me a very talented wide receiver at $5,300 against a team that is not very good against a pass. If I want help getting to Lamar Jackson and I don't have Gus Edwards, I think that Marquis Brown is actually really good. I could try to punt with Willie Snead or Seth Roberts or something like that, but I'd much rather just go Hollywood Brown. I don't want to use those other pieces at all. Yeah, I mean if you're two games late. If you're not playing, if you're not stacking Lamar with Mark Andrews, it's clearly Marquis Brown. Maybe I sounded like I wasn't going to play Marquis Brown at all, but obviously, we know what he can do. We saw it early in the year and you make a good point. I mean, he was on the injury report for most of the year. If he actually is fully healthy, we could see something pretty nice this week, but if I'm building one lineup and I just want to cash, I'm not playing Marquis Brown. That's never my goal. Right. I'm saying if anyone's out there. No, I shouldn't say it's never my goal. Sometimes you do want to profit with an individual lineup. If you put your cash game lineup into a tournament, that's what you're doing effectively. So I get what you're saying, but if I had a single lineup for the four game slate, I would not write off Marquis Brown is the way I would say that. He's not as much of a priority as Emmanuel Sanders, but I would not write off Marquis Brown. He'd be in my consideration there.  The floor is just, I mean, the floor for every receiver is zero, but realistically, His is especially zero. His is especially zero. It's extra zero, bold zero. That's very correct.


Moving on. So our next speaker, let me introduce our next speaker to you, Barbara Wood is the for Britain's spokeswoman on gender issues. I spoke with Barbara last night, we're having a chat over it right, and she's going to tackle or talk about the I guess one of those issues which pervades politics and pervades our country at the moment and that's the whole trans narrative. And I think you'll find this extremely interesting. So please join me in welcoming Barbara Wood to the stage. Hi everyone. Thanks very much. Can you hear me at the back? Yes. Okay. That's the last time I'm going to use the word, I don't approve of the word gender at all. It should always be sex. But I let David off that one. I was told to speak on freedom, justice and democracy in about 20 minutes. So I asked for a bit longer because these are big issues discussed for as long as humans have been talking. I decided the only way I could really do this effectively was to pick one topic and put it under the microscope use it as a test case so to speak. And ask is our right enshrined in law to speak freely about this issue being upheld is the justice system treating people equally over this issue. And if the answer to either of those questions is no, I maintain we don't have a functioning democracy anymore. So I chose to talk about transgenderism which I got interested in only about 18 months ago when I discovered that the government was holding a public consultation on proposals to change the 2004 Gender Recognition Act which I had never heard of. And I'll be really interested later to hear from any of you in the room who filled out the public consultation. It apparently was the second highest number of responses. I believe it was over 100,000. I did. But I knew nothing about it. So I had to get to grips with something that was, well, I don't think I'd even heard the word transgenderism. I certainly never had it past my lips before. So I read the debates in Hansard from the run up to the 2004 act. I went to some seminars. I did a lot of reading. And it was a bit of a learning curve and I didn't much like what I found out. I also realized while I was doing this research before the consultation how many other areas this issue impacts policing and the judiciary, child protection, education, health, employment and sports are all involved. I'm not talking here about individuals. This has nothing to do with having a problem with individuals. I don't. They can wear, say, call themselves what they want. I'm solely concerned with the increased visibility of this issue and how our freedoms to debate are being eroded. To start with, I'm going to read a paragraph from a 2017 report from the OECD, the organization of economic cooperation and development highlighting the dangers of policy capture because I think this has a lot to tell us about what's going on here. Then I'm going to give you the relevant articles from the Human Rights Act, which was in the UK act of 1998, which came from the European Convention on Human Rights. They're so important to know. And I couldn't have recited these 18 months ago, but I can now. In fact, I carried them with me on some printed paper. I'll briefly describe what the current law says and give you some examples of actually what's going on. And to finish, I'm going to suggest a few things that we're all going to have to do cooperatively and collaboratively. And I go further and say things we must do because doing nothing is not an option anymore.  So first, the definition of policy capture from the OECD goes like this. And I quote and watch out for the word democracy here. Policy capture is the process of consistently or repeatedly directing public policy away from the public interest towards the interest of a specific group or person. Capture is the opposite of inclusive and fair policy making and always undermines core democratic values. The capture of public decisions can be activated through a wide variety of illegal instruments such as bribery, but also through legal channels such as lobbying and financial support to political parties and political campaigns. Undue influence can also be exercised without the direct involvement of public decision makers by manipulating the information provided to them or establishing close social and emotional ties with them. End of quote. Let's take as the starting point that freedom of expression as defined in article 10 of the European Convention on Human Rights constitutes one of the essential foundations of a democratic society that without it there is no democratic society. Article 10 specifies the right to freedom of expression including the freedom to hold opinions and to receive and impart information and ideas without interference by public authority and regardless of frontiers. In addition to article 10, the other relevant articles in this discussion incorporated into UK law via the Human Rights Act are article 9, the right to private and family life. That's article 8, sorry. Article 9, the right of freedom of thought, conscience and religion and article 11, the right to freedom of peaceful assembly and to freedom of association with others. Now the relevant legislation in this issue is the Gender Recognition Act of 2004 which was intended to help people of both sexes with gender dysphoria. This is a recognized condition and refers to those born male and want to present as female and vice versa. It's estimated to affect approximately 0.01% of any population. That would mean about 6,000 people in the UK. This figure was actually mentioned in the debates in Parliament in 2003 and as by the time of last year's public consultation approximately 4,990 gender recognition certificates had been issued, it seems that estimate is about right. But it's important to understand that this legislation was nothing to do with transgenderism. In fact, I couldn't find one reference to the term given during the debates in Parliament. It's also a fact that the legislation in the UK put in place one of the lightest touch systems in the world for getting recognition of gender dysphoria. Many countries require hormone treatment as a minimum, others require hormone treatment and genital surgery as well. The UK requires neither and in fact the majority do neither. All that's required is a two year period of medical supervision during which the applicant lives as the opposite sex and undertakes to do so for the rest of life and that's it. Once they have a gender recognition certificate, birth certificates, passports, driving licenses can all be changed to reflect the new sex and the individual has legal privacy for life. It is of course a legal fiction, no one can change sex. However for some years the LGBT lobby groups such as Stonewall have been demanding that the gender recognition act of 2004 is scrapped. No supervision, no medical oversight, nothing. It's too onerous they say. It is humiliating and intrusive. I am what I say I am and if I say I'm a woman or a man, I am and that's all there is to it and to say otherwise you're a bigot and phobic. The demand is for gender recognition certificates for anyone who wants one on the basis of self identification and lifelong legal privacy without hindrance. Now I'm not discussing the rights and wrongs of these proposals. My argument is about the freedom to debate, challenge and question a proposed change to existing law. A change that has the potential to radically and adversely impact the existing rights of everyone but particularly women and girls as spaces currently segregated by sex, changing rooms, hospital wards, toilets, sports, refuges will be lost. And what better time for open debate of the issues than when there's a proposal to change legislation and to do this without fear, without fear of losing your job, the police contacting your employer, being beaten, spat at and prevented from accessing public meetings arranged specifically to discuss the issues, being removed by the police from a public meeting because transgender lobbyists don't want you there, without fear of being visited by the police at your home, arrested, held in a police cell for seven hours while your children, one of whom is autistic and the other one of breastfeeding age, are left at home. Interviewed under caution because you tweeted or retweeted something or misgendered someone, being told by the police that although your retweet doesn't constitute a crime, they needed, and I quote, to check your thinking. That really happened this year. If you live in a society which claims to have freedom of expression, you really wouldn't expect any of this to happen just because you hold an opinion.  Only women menstruate. Trans women are men. Children cannot be born in the wrong body. A woman is an adult female, my pin. A man is an adult male. Unfortunately, if you live in the UK today, all of these things that I've just mentioned are to be expected. In fact, they have all happened in 2018 or 2019 and all of them in connection with the transgender juggernaut. And these are a handful of just hundreds of examples I could have chosen. I think if such things were reported to be happening in North Korea or Iran, we would just shrug and say, well, what do you expect? Totalitarian state. But this is here in the UK and it's happening now. So much for freedom. Moving on to the justice system, and in this context I'm going to first look at the police, the front door as it were, to the justice system for most citizens. A good start would be the police applying the law correctly. We do not currently have a system of self-identification in this country, which means that any male who does not have a gender recognition certificate is legally male and vice versa, of course. So why are police forces across the country allowing men accused of rape and other violent crimes against both men and women to self-identify as women? A self-identifying trans person has no legal right to have their alleged offence recorded as though it was committed by the opposite sex. Who takes these decisions? Where we asked, who decided this was a good idea? Can North Wales, South Yorkshire, Thames Valley, Durham, Kent, Norfolk and Suffolk, the British Transport Police and others, explain why they think self-identification is part of UK law? Why are self-identifying men allowed in women's prisons and other sex segregated spaces when they can legitimately be denied access even if they have a gender recognition certificate? Is this an example of policy capture? I think it might be. Justice is supposed to be blind and impartial. We are equal before the law. However, it's starting to feel like the British police are acting as the personal police force for transgender lobbyists ready to do their bidding, ensuring that debate is shut down. But an interesting judgment was handed down by the European Court of Human Rights in April of this year relating to a case in Moldova, some poor individual was taking on the Moldovan government. I won't bore you with the details, but the judgment stated, and it's really interesting, and I quote from this year, freedom of expression as secured in paragraph one of article 10 of the Convention constitutes one of the essential foundations of a democratic society. Indeed, one of the basic conditions for the progress and for the self-fulfillment of the individual. Subject to paragraph two, it is applicable not only to information or ideas that are favourably received or regarded as inoffensive or as a matter of indifference, but it also affects those that offend, shock or disturb the state or any section of the population. Such are the demands of that pluralism, tolerance and broad mindedness without which there is no democratic society. End of quote. Remember, that's a judgment from the European Court of Human Rights this year. So with that judgment in mind, let's compare and contrast these two cases. At the Labour Party conference in Brighton just the other day, 2019, end of September, a grassroots group called Women's Place founded last year specifically in connection with the government consultation to raise awareness of the implications of the proposed changes to the 2004 Act. They organised a fringe meeting. Trans activists protested the meeting, which I and I hope all of you agree they absolutely had a right to do so. What they did not have a right to do was harass, intimidate and threaten people trying to access the meeting. Mostly women, but some really brave men there as well. Some of whom reported being terrified. Sussex police were in attendance. They stood by and did nothing. Throughout the meeting, the protesters held up a barrage of noise, beating drums, banging on the windows of the meeting room in attempt to shut down the debate. Sussex police stood by and did nothing. No arrests were made. Sussex police have defended their inaction. But if you watch videos of the event on YouTube, it would seem that at the very least public order offences were committed. And what Sussex police seem totally unconcerned about is the fact that they failed to uphold the right of Women's Place to hold the meeting and the right of those attending to access the meeting. As guaranteed under Article 11 of the ECHR, the right to freedom of peaceful assembly and to freedom of association with others. And under Article 10, the right to freedom of expression, including the freedom to hold opinions and to receive and impart information. Have Sussex police been captured? I think they may be. But on the other hand, when trans activists hold a meeting and call for help to deny someone their rights under the same two articles, the police are all over it like a rash. In March 2019, the London Offices of Accenture, a multinational professional services company, hosted a public event. They sold tickets to recognise International Transgender Day of Visibility. It was organised by members of Pride in Accenture Diversity Network. That's people who work for Accenture. It was a public event. The panel included Susie Green, the CEO of Mermaids, the charity that advocates for transgender children. The blurb for this event said, and I quote, please be reminded that the event is centred around inclusion, open to everyone of all ages and we look forward to welcoming you to Accenture. However, they didn't really mean that. It was a qualified welcome and not extended to potential critics. In this case, it meant calling the police to remove people from the audience who might disagree with them. A small group of women were spotted in the audience. That is before the meeting even started. Nothing had actually been said at this stage. The organisers didn't want these particular women there. In spite of the fact, they had bought tickets in their own names. They hadn't done anything underhand. Astonishingly, seven City of London police officers were immediately available to help. This is at a time when apparently we have no police officers who can actually solve crime, but seven City of London police officers turned up to deal with four women who were doing nothing more controversial than sitting on chairs. They were having a slice of pizza and a glass of wine waiting for the meeting to start. Where did the police on standby for this event? Where did these seven suddenly appear from? The organisers lied and claimed the women had been disruptive. That's not possible. The meeting hadn't been discussed. The women were told by one of the organisers and I quote, my panel does not feel comfortable with you here. So not really welcoming at all. They were forcibly removed from the venue and there's a video on YouTube of one of the women being carried out.  She had a right to be there under every article of the Human Rights Act. They had said and done nothing. Were the police impartial? In upholding articles 10 and 11 of the ECHR and UK law, I don't think so.  Debate closed.  I would suggest that the city of London police have also been captured. Now it's a very short step from loss of freedom of speech to compelled speech. But that's where we're heading and in fact some of what I'm going to say now means we've probably already arrived there. Have you seen the video featuring the deputy chief constable of Cheshire Police to celebrate International Pronouns Day? Apparently, according to her, she's a woman, not using the pronouns demanded by someone causes, and I quote from the video, huge impact on somebody and their wellbeing. Really? Huge impact. Now if she were talking about the huge impact on someone who's had their house burgled and knows full well that the chances of anybody turning up to investigate are pretty slim, I might agree with her. Or how about a child sexually abused for years by gangs of men while the police look the other way, saying it's a personal lifestyle choice. I bet that causes huge impact. Wrong pronouns? No, not interested. And by the way, Cheshire Police is the force that in 2017 saw the third largest overall percentage increase in crime in the country. And she wastes taxpayers' money, our money, making vacuous and virtual signal videos about pronouns and misgendering. But remember the OECD definition of how policy capture is achieved. The bit about undue influence can also be exercised by manipulating the information provided or establishing close social and emotional ties. So is it a coincidence, I ask myself, that Stonewall, one of the biggest lobbying groups in the country named Cheshire Police, whose Deputy Chief Constable made this video, they named Cheshire Police as the top police force in the country for equality among lesbian, gay, bi and transgender staff. I suggest Cheshire Police have been captured. And the judges are at it as well. In 2018, a district judge, won't name him, presided over a case of assault by beating.  The offended party, an actual woman, was instructed by the judge to use her male attacker's preferred pronouns, which naturally were female. In effect, he was compelling her to pretend that her attacker was a woman. He was compelling her to speak what she believed was a lie, and compelling her to adopt a form of speech that put her at a disadvantage and prioritized the wishes of her accused. She's actually written quite movingly since that, of how upset she was by this, that it put so much extra pressure on her, because not only was she in the, you know, being questioned in the witness box, but she had to remember that this guy is a woman. Even worse, in the summing up, the judge told her off. He chastised her for showing bad grace, for failing to use her attacker's preferred pronouns throughout the trial.  Hardly. So first, they take your freedom of speech away from you. Then they tell you how to speak and what to say, so much for justice. It's a pity that trial took place in April 2018. I say that because a few months later, in October last year, the UK Supreme Court handed down the judgment in what's become known as the Gay Wedding Cake case, which is actually, more correctly, Lee versus Asher's Baking Company. A judgment that might have made the judge think twice about trying to compel someone's speech, and given the plaintive the confidence to tell him exactly what he could do with his compelled speech. The judgment handed down very clearly states, and I quote, it was Lady Hale, the famous Lady Hale, who read this judgment last year. Freedom of expression, as guaranteed by Article 10 of the ECHR, includes the right not to express an opinion, which one does not hold. This court has held that nobody should be forced to have or express a political opinion with which he does not agree. One is free, both to believe and not to believe, end of quote. The court made it clear that the purpose of equality law is to protect people, not ideas, and that no one should ever be compelled, as that poor woman was in that trial a few months earlier, to make a statement or express a message with which they do not agree. For balance, I should mention that the person involved in this case has now appealed that decision to the European courts. So coming to the end of this talk, I remind you of the OECD definition of policy capture I read at the start. Capture is the opposite of inclusive and fair policy making, and always undermines democratic values. It's true, the trans lobby has captured the media, both mainstream and social. They've captured the police, the judiciary, the NHS, Girl Guides, sports authorities, public institutions and private companies, politicians, local authorities, the education system, and the list just goes on and on. Above all, they've captured our freedom of speech, and I don't know about you, but I want it back. By shutting down the debate, aided by the complicity of the justice system, they have undermined our democracy in a properly functioning democracy. The voices of everyone would be included in open debate, but in this one, only one side is getting heard, the other is being silenced, so much for democracy. So I'm going to finish quickly now, coming up with some ideas that we can toss around today and later, of what we can do. First of all, know the law. Know what the law says about freedom of speech, thought and conscience. The relevant articles are just a few sentences, but you need to be ready to quote them if necessary. When the police come knocking on your door, they may come knocking on my door after this, you need to be ready, my brain will freeze. So what I've done, this sounds really paranoid, but it isn't, I've actually printed out the judgments that I've quoted to you, the one on the Moldovan case and the one that Lady Hale gave. And I've printed out those articles, 8, 9, 10 and 11. I've got one in the car, I've got one in a handbag and I've got one in a briefcase, because you're going to need these. It's so many of these cases that have been getting in the headlines, it's because people didn't know what to say when they were confronted. Being better informed about my rights has given me so much confidence, I genuinely didn't know the word transgender 18 months ago. And I'd like to see that judge try and compel my speech if I'm unfortunate enough to come up against him or any other one. In the context of the transgender situation, I think there are some very specific things we can do. On this list that I've got here, I have also at the top got the nine protected characteristics under the Equality Act of 2010 and make no mistake, if we get self-identification in this country, and if we get a Labour government, I guarantee it will happen in the first 12 months, the Equality Act 2010 is very much under threat. Stonewall, they deny it, but it's actually on their website I've looked. They want these protected characteristics gone. Sex is a protected characteristic. So is gender reassignment, that is if you are one of the tiny number of people that have a certificate, but that is also a qualified protection. They can still be excluded from sex-segregated spaces if the circumstances warrant, like from a woman's refuge or something like that. Gender and gender identity do not appear as protected characteristics. Print them off and keep them with you because it's become apparent, and it was from some very good work done by some of these grassroots organisations that sprang up last year because of this government consultation, that many local authorities, police forces, public bodies, private and public companies did not have the list correctly displayed on their websites. The Welsh government website had it wrong. Some of them had removed the word sex altogether and shoved in gender, more inclusive, more diverse. The law is the law, and they have to comply with it. How to enforce it if they don't know what it is. Refuse to use the word gender. David, don't do it again. The right word is always sex if you're talking about the difference between male and female. I never remember hearing the word gender used throughout my education and most of my life I think until recently, unless it was in a grammar class, I speak Spanish so I had to know whether something was a masculine or feminine noun if you did Latin or French or whatever. It's the same. Stop using it in this context. It is sex. Refuse to use preferred pronouns. People are free to choose whatever language they want about themselves, but what they may not do is compel others to comply with their choices. And we have the law on our side. That's why it's so important to know it. Make sure they understand this is not a politeness issue. This is a freedom issue. Boycott companies that cave in to the transgender demands. My boycott list is now so long I may never go shopping again very soon. They're all on it. There's no time to go into this now, but this is really something I am prepared to spend some time liaising with individuals, with branches, to organize collective and cooperative action. We spend money. They want it. Marks and Spencers are not having another penny of my money until they reverse their decision that they took about 10 days ago to introduce self-identification for changing rooms. Oh, yes. We've got so much going on that we kind of missed this stuff. They have now decided that something that is not UK law well it's nice, isn't it? So if you go into an M&S store anytime soon, you may find yourself sharing with a self-identified man. So let's collaborate. Let's start boycotting and let's put Marks and Spencers at the top of the list. And it's coming up to Christmas. We could do a lot of damage. It's not like they're making a fortune. They're always giving out profit warnings. And so you have to decide.  Don't go there. There's always an alternative. This is really important. Demand investigation of the links between lobby groups such as Stonewall and Mermaids and others and the police and others. They were established as charities but they are operating as political activists. So how come they're training the police, the NHS, other public institutions and private companies? Both Stonewall and Mermaids and all of these lobby groups receive public funding which is not government money, it's our money. We're taxpayers. We have a right to ask. Right to MPs, police commissioners, chief constables demanding to know why self-identification is being introduced by stealth when it is not recognised in UK law. Above all, we need to organise collectively for maximum effectiveness. So let's put our heads together. This is just too big to leave it up to a few brave individuals.  Thank you very much and enjoy the rest of the day.


So welcome to the last part of this tutorial. So my name is Matthias Berndt. I'm working at the Center for Environment Research, the U of Z in Leipzig, Germany. So I'm a bioinformatician and I'm working with Galaxy for a few years. So we host our own Galaxy server for our research center and I'm developing tools for three to four years, I would say. So in this part of the tutorial, I would like to introduce you to Planemo, showing you here the main GitHub page with some information. So GitHub.com, galaxyprojects.planemo, but maybe even more important could be the documentation, which is hosted at readthedocs.io, which contains also quite a lot of useful information for tool development. So advanced tool development topics, how to FAQ section, you have best practices, and so on and so forth. So this section here, Building Galaxy Tools itself, is kind of a different tutorial for how to build tools. So a rich source of documentation. So what is Planemo? Planemo is a command line tool that helps you, for instance, to develop tools. So it helps you to link tools to make a static source code analysis of your Galaxy tool XML files. It also allows you to test Galaxy tools. It means that the tests that are defined in the Galaxy tool test section are executed on a Galaxy server, which is run within or from Planemo. And the third thing that we want to cover in this tutorial is to serve Galaxy tools. So this means that a Galaxy instance is started, and the tool is displayed within a Galaxy, which helps you to fine tune, let's say, the representation, also test the tool more or less manually. OK, the first thing that we want to do, what I need to do, is to install Planemo itself. So Planemo is a Python software, and you can find it on PyPy. And PyPy software can be installed with PIP. So if we would just do this, then this would go to your system's Python software installation location, which would need super-user access, which is not always available in particular high-performance systems. So we will install it in a so-called Python virtual environment, which we need to create first, which is quite easy. So we do this with the following command, virtual-env, which creates a virtual-env in the location that we specify, temp-v-env, in this case. So for a long term, on the long term, you should choose a location that is persistent. So I just do it for the tutorial here in TMP. So it will be gone after a while after reboot. But maybe you install it in your home directory or some other permanent location. And I usually specify with minus p that I just want to be sure that Python 3 is used. So many systems still have Python 2 and Python 3 available. And I just want to make sure that Python 3 is used. So then we can just enter. And virtual environment is created. So this is basically just a directory which has its own file system tree. And in particular, it contains links to the actual Python implementation and also contains pip, the Python package installer. So the first thing that we always need to do then to work with this Python virtual environment is to activate it. And we do this by sourcing. So just type dot or type source, whatever you prefer. And then the pass to your virtual environment and then bin activate. And this activates your virtual environment, which is always indicated with the name of the virtual environment or in your prompt. So it should. So then we can install planemo, pip install planemo, which would install the latest version, which is useful, but you could also specify which version you want to install. So this will now download planemo itself and all its requirements. So this might take a while. So here it's quite fast because I did this before and all the packages are taken from the cache. So just consider that it might take a few minutes in particular if you are on a slow internet connection. So when everything is downloaded, it's installed. And everything goes into the path where your virtual environment is located.  So if this is done, we have planemo ready to go. So the command is planemo. And let's just check with minus version if it's running. So we see we have installed planemo version <IP_ADDRESS>. Might be different if you check out this tutorial later. So planemo minus minus help will give you an overview of the commands that are available in planemo. And you'll see it's quite a lot. So I even need to scroll here. We will consider, first of all, the lint command. We will consider the surf command and the test command. But there is many more to do. You can, for instance, tool init, which would create starting XML for a tool. Then there are things to upload tools to the toolshed. And many more things, also commands to work with conduct packages. But the three lint, test, and surf are probably the most used functionalities of a planning. So if you want to have help on one of these commands, then you just type planemo, then, for instance, lint. So the name of the command and then minus minus help for the corresponding command. And then there are command line parameters that you might want to apply. OK, that's it, basically, for the installation. And then we can go right away into testing tools and linting tools. So the first thing we want to do is to change into the directory of the example tool that is provided with the tutorial. It's called Belero Phone. Let's just open the door. Here we have the tool XML file, which looks good. So then let's, first of all, lint the tool. So this is really easy, planemo lint. Planemo lint will just lint all the tools in the current working directory. So we can just execute this, or we could add explicitly the XML file that we want to lint. There's also a shortcut, so we can just type planemo l, which would lint the tool. So let's execute this. It has a little bit of output, and in the end, it tells us if it was successful or not. So in this case, it wasn't. So we can now check the detailed output. So first of all, the linter checks the order of the elements in our XML file, and it tells us that requirement is at the wrong position. So it's after the command section, but it should be before. So we can simply move this. Then the output check tells us that the output doesn't define an output format, which is correct. So this is missing. So we can just add this here. So let's further the inputs. There's no warning. Then we have a warning for the help section because there is still a to-do, because somebody thought that it might be cool to have more documentation. So more documentation. So let's see. Then we have some information that the tool targets the 16-0-1 Galaxy profile. So no profile was specified here, but it might be a good idea. Many repositories like the IOC even demand that the profile is not older than the year. So let's just do this profile because 20-0-1. So tool contains a command, has citations, and is also valid XML. So let's save this and linter again. And yeah, that's basically it. Now, after our changes, linting is successful. So we see that now the new profile version is detected, and so on and so forth. So the Planimolint command helps you to find errors or common mistakes in your tool XML file. So it's a static code analysis, which can be really helpful. So the next command that we want to cover here is Planimoltest. This has lots of options. So I only will mention two of them later. For the other ones, I think it's a really good idea to go through them once, at least, to just read the documentation here. And in case you have questions, what this and that parameter does, just ask it through while we are doing the tutorial. So Planimoltest, like Planimolint, the execution is just Planimoltest, which we'll do the following. So let's just go through the output while it's doing those. So the first thing it does is some git actions. So it basically gets a clone of Galaxy. So this is basically located in your home directory in .planimol, which stores the Galaxy repository or clone of the Galaxy repository, kind of bare repository. And this is then deployed into your temp directory. So after this is done, Galaxy is starting. And the first thing to do there, also Galaxy is certain in Python, is it sets up its own virtual environment and then installs, again, quite a lot of Python packages which are needed to run Galaxy. So also this might need a while when you do this the first time or if the requirements update, which happens from time to time. So after this is done, Galaxy basically installs the database. Let's see where this happens. Galaxy main queue creating database. So it creates a new database for this Scratch Galaxy that is just running. Let me just increase this here. And then after a while, Galaxy is running. You see that it's running on local host on a specific port. So I think it's a random port, I'm not sure. And then it's basically running the tool. So the first test basically starts here. Test one, starting. The first thing it does, the tool uploads or Planemo uploads the test data from your test data directory. So this is done with the upload tool. The upload tool is running from here to here, essentially. So it creates a script for the upload. And then it's basically it. And the second thing, the second job that is running is the actual tool script, another upload. Sorry for this. And then job three is the actual tool. So basically what is executed is this script. So the so-called tool script. What it does basically is it activates a conda environment. So this might also need a while. So before, essentially, after you see this output, it might also here need a while until it continues because Galaxy will create conda environment that is used by the tool. Anyway, then the script is generated. So activation of the conda environment. And then the actual tool is executed. And you see here the command sign that is generated. And then the tool is executed. And you see that there is a problem. So the test fails. It says that test files differ between the ones in the test data directory and the ones generated in this Galaxy Run. So we have two lines of difference. And we can also see this here. So what's basically different is the PG line. Which is created by Bellerofone. So basically the output stores what programs have been run to generate the data that we see. In this case, it's Bellerofone. And the problem is that the data set differs here. So the test data basically was generated manually. Was using forward.bum and reverse.bum for the data set names. But in Galaxy, it's this hash data set name dot dot. So what we need to do is to allow a difference between the generated test output and the one that is provided in the test data directory. So I think this was line stiff equals two. So we'll allow one difference, which is manifested in one removed line, one added line. Therefore, we have two. So let's just name more lint again. Because I'm actually not sure if it's line stiff. Yeah, this seems to be correct. And then we can test again. Before we do this, I want to show you something different, which is the output generated by Planimo. So Planimo generates two outputs. One is an HTML file, which is by default named tooltestoutput.html. And one JSON file. So mostly interesting is the HTML file. So let's just open this. So this is basically a nice-looking report. What's the result of your test? So it tells you how many tests have been executed and how many failed, how many passed, and so on. And if you click here on the text failed tests, then you can see the test report. So it shows you the problems that have been found. It shows you the command line that has been used, the exit code, job parameters, and so on. So usually, this is sufficient to determine what's going on in your test. And only in really few cases, you need to check the output of Planimo test itself. So let's test this again with our change. Again, Galaxy is starting. The requirements are checked. So this should now be as fast as on my computer here, because you will also now have already the clone of Galaxy. You will already have the requirements. And then this doesn't take too long. The Galaxy virtual environment is just activated. Again, the database is created. And now the test should be starting in a second. So Galaxy is up. First test is starting. So this is the first upload running. Now we have the second upload, the actual tool. And now the test runs OK. And in the end, we also see the summary here. All tests executed have passed. So that's wonderful. There'll be one more note. So we see here all sorts of outputs, so all the get requests that are made. And also output. So this will go away soon. So this is essentially it's not a bug, but it's not really nice, because it makes it more difficult to see what is actually going on. So don't wonder if in the near future this will go away. So many of the outputs. And then you will only see the most important pieces of information for you. So let's just undo the change here. Now I want to show you, let's say, my most favorite command line options of Planimo test. So the first is dealing with the problem that often it's good to have many tests. So let's assume you have maybe two or three tools. Each of them has five to 10 tests. So my rule of thumb is always that if you have a parameter, then you should have at least one test covering this parameter. So maybe you have an integer parameter. Then at least one test should set it to a non-default value. And then you can check if it's set correctly on the command line using assertions, or you can check if this changes the output as expected. And if you have that many tests, of course, this needs quite a while to execute them using Planimo test. And now we can have the case that maybe just one out of the 20, 30 tests that you're executing is failing. And then you are working on fixing this. It might be as simple as in our case here, but often it is not. And it needs many iterations of running Planimo test. And running all those failed tests, all the successful tests, again, usually is not really helpful. And so there is an option for Planimo that allows you to run the same tests again, but executing only the failed ones. So in our example here, it's not really realistic because we only have one failed test. But I just want to show you how the system called. So the option is called failed. So this will lead to the execution of only the failed test of the previous iteration. And how does Planimo know which tests failed or not? So this is basically stored in the JSON file of the output. So we just have a look here. So it's an hierarchical document which contains the information of all tests and somewhere hidden is the information if it failed or not. So this is basically used by Planimo test failed. And the other option that I use quite a lot is no cleanup. So usually when Planimo is finished, all the temporary, so the Galaxy instance that is created in the temp directory is deleted and also all the job output directories and so on and so forth. But sometimes it can be helpful for debugging to keep those directories. And I will show you how to work with them. For debugging, a Galaxy tool run. So let's just wait for the tests running again. Database has been created, Galaxy is up and now the two uploads are starting. This is the first one, actually tool starts. So here's an interesting piece of information. So the actual tools, so what we can do now is we can change into this directory which is the working directory of our local phone job. And the problem, if you don't run this with the no cleanup option is that this will be done after Planimo finished. But now since we use no cleanup, it's still there. So what we have here basically is two shells. So this one here, some colors. So this one basically sets up everything, the environment for the job. So it sets variables, it creates directories and it executes the actual tool script. So it changes into the working directory in our job directory and then executes this tool script and records our exit codes and redirects outputs and so on and so forth. So the actual tool script is this one here. This is also the one that we see in the output of Galaxy. So what is this doing is it activates the condo environment and we can now do this here. So we are now basically in an environment that is more or less the same as the one that is executed from the Galaxy. And now we can just execute this command line here and then see if this fails or not. So in this case, it doesn't. We can also have a look manually in the output. So for instance, with some tools, and then we see the generated file. So in case you have problems with the generated command line, then you can basically play around with the generated command line and try to fix it in an interactive way, so to say. This can often be much faster than iterating a planning mode test and planning mode test and planning mode test again. And here you can be much faster sometimes. Okay, let's go back and go to the last command that we want to cover in this tutorial, which is planning more surf, planning more surf. You can call it in the tool directory and then it will basically start a Galaxy instance running the tools contained in your directory. So again, it does the same clone and get, starting Galaxy, but here it will do a little bit more that we'll start after the initialization of the requirements, which starts here. It basically installs all the client code needed for Galaxy. And this will need quite a while. So I would say 15 minutes, something like this. So this would be now a good time point to have a break, maybe get a coffee or your favorite drink. And then we will continue after Galaxy started. So now Galaxy started. So basically the same things as for planning more tests started, but in addition, if we go through, there's loads of things happening here for the initialization of the client code, also loads of downloads happening. And in the end, we will see that it has a skeleton so instance main is running and a little bit up. We find here listening at local house port 1990. So we can copy this text open browser and open it. So we see that our Galaxy instance is running and we can check now the tool form. So we see how it looks like. We see maybe we should add a description to the tool. So the description tag is missing more or less. We see the help, we see how the citations would look like. Actually it seems they're missing, I don't know why. So, and we can of course test the tool. So let's upload some data on. So this Galaxy instance works completely as a normal Galaxy instance, but it just has this single tool running. Yeah, what's going wrong here? So for some reason, this is stuck. So now I restarted the plan demo self. I don't know what went wrong, but now it seems to be fine. So I go to the browser, open local house 1990 and can check the tool and I can upload data. Now it really works. And I can also choose the test data from a test data directory, just upload it, start. I also noted that now the citation is shown. So apparently something went wrong during the first, my first try to plan a more self. So now the upload is happening and now you're fine to choose the upload data. But hey, it doesn't work at all. So the problem is, so that we have actually a bum input and the tool only accepts some. So there's something wrong here and this needs to be fixed. So we can fix this by just adding unsorted bum as a data type for the input and then we can reload the tool. So the nice thing is that if we change the tool then we will see that the tool is passed again. I don't know why this is throwing an error here, but tool loading works. So we have the forward and the reverse and then we can execute it. And then we see the same thing as in plan demo test that the tool script is generated, it's running and in Galaxy we see that also the tool is running now. Yeah, and here the problem was that we also need to set output to unsorted.bum, short comment on this just quickly. And as you see, this is one nice side effect of plan demo serve. So sometimes it's faster to say in particular for hard to debug problems. It's faster to play around with the tool in a plan demo serve session and just updating the tool XML file. Of course, plan demo serve startup as you have seen needs quite a while and then you need to see when this can get faster iterating test runs. Because you just saved the Galaxy startup time, that you would have in plan demo test, but the plan demo serve upload time is quite fast. So maybe a little bit to the problem here. So this seems to be bug currently in Galaxy that if you have some as input, this also accepts bum which it shouldn't. So we are currently trying to fix this. So this should have been detected already in the plan demo test, but we have seen that at least in the plan demo serve session we can find out that something is wrong here. Okay, that's basically it for plan demo that should get you started in developing high quality Galaxy tools. And in the next part, I want to show you how to contribute your tool to one of the public repositories or to your own repository that you could set up.


Alright, you are still watching Waze National Cinema Day, it's celebrated annually on November 1st. It is a day to celebrate the delicious and versatile spice that is cinnamon. Cinnamon is a spice made from the inner back of several trees from the genus Cinamonium. It is native to South Asia and has been used as a spice for thousands of years. Cinnamon has a sweet, warm flavour and a unique aroma. It is used in a variety of cuisines around the world, both sweet and savoury. Who is a fan of cinnamon here? I am. I love cinnamon as well. I literally had the cinnamon roll yesterday. Yeah, I was just going to say, I do the cinnamon rolls. And again, I have incorporated cinnamon to my everyday supplement for the last one year. Because again, it's also a weight management spice. I didn't know that. Yeah, it does. It manages your weight. So a lot of people that want to go to the natural weight loss part of it is probably boiling the sticks. The cinnamon sticks, you can add a bit of lemon, honey, some cloves, whatever it is. There are just so many formulas. I haven't done the sticks, but I think the only time I ever, I tasted it once and I liked it. So now I use the ones you get off the rack, like the powder ones. Yeah, nice. So you see, it helps absorb anything, fat and all of that. But so I do that. I do with oats. I've never tried noodles. I'll try that. I do with oats. I've not done any oats. In fact, it was normal that I thought of oats. Because she would make the oats and she would put the cinnamon. It gave it a very nice flavor. Yeah. It gave it a very nice flavor. But I like the cinnamon rolls. So anybody that is struggling with weight and all of that, I think it's a good recommendation. It helps to just keep your weight in check. Some people mix it with coffee, like dark coffee and all of that. But I'm not a coffee fan. So cinnamon is good. I'll definitely try out some of this. I'll try out the noodles one because I haven't tried that. But I do with oats. I do with a lot of things. I wouldn't use it to cook my meals sometimes. Okay. Yeah. Okay. So who are we starting with? Angie, let me start with you. What's your news for today? Well, Maja Kuti released his pre-wedding photos with him and his partner. You know, one year after they got engaged. So they got engaged, I think, last year. And they tied the knot today. Yeah. And, you know, they released the pictures. And she's evil. I never knew. I know. And his school daughter. Yes. She was his school daughter. That's such a sweet story. I'm telling a very lovely love story. I was listening to it when I was on my way here. She said that. So when did he switch from being his school father? To a lover. To a lover. I know. So he said it was seven years later. Oh wow. They had left school seven years later. This time she was in the university. He had just finished. He had just finished and he came back to Nigeria. COVID then happened. After COVID, it was like after the lockdown. When they met, it was, they just picked up from web. Since there was already history with them. It was very easy. He was very easy. He didn't ask what it was. He liked the best about her. He had a smile.  I said, oh wow. It's sweet. But that's so sweet. I saw that. I never, you see, what shocked me the most was the fact that she was evil. Because, you know, like I had. So I didn't see her. I thought she was Yoruba or something. But when I saw her mother, where the Ichago. And she's full evil. She even did the palm wine, Karin. She didn't ask. Wow. That's beautiful. I would like to say that I feel like the family part of the family, they're a bit liberal. I don't know if the word I'll use will be liberal. I'm trying not to use any word that makes him look a different way. No, it's not like fella is... But I feel like, yeah, you would want to keep certain traditions within the clan. Let me put it that way. That's why I'm saying that I'm extremely shocked. Yeah, that's why. So for me, that's why I'm actually a bit... Not shocked, but I was like... You don't even get what I'm saying. The way she has incorporated the Afro-Bit culture to her lifestyle. That's why I'm saying that I'm extremely shocked that she's not even... Because I would have thought that she's part of the entire culture for Afro-Bit. She's completely... I think it just goes to say that when someone is a fit for you... She really embraced... Round hole, round hair. I'm telling you, so I wish them a beautiful marriage and a happy married life. I wish them all the best because there's nothing like beautiful love. The only prayer is that God just preserves the home. And I saw her mother-in-law... Her parents? Yeah, her parents-in-law. And I just have to applaud Femi and... Funke, Funke Kuti, yeah. The relationship has been divorced and stuff, but the relationship is just... It's beautiful. I mean, I wish that even though some parents are divorced and their marriage doesn't work out, but it would be nice if they maintained that friendship. I was just going to say that, you see, it's only immature people. Because I've not seen any reason that if I have a child for you, I've not seen the reason that I would become very hostile or you see all this fighting and all of that. There is absolutely nothing you're going to do to me because what I can do is accommodate your nuances and keep a very cordial relationship. Not because you are deserving of it, because definitely there would have been something that would have made me to say, and not do marriage again. But because we have children together, so it would be nice that people can take a cue from people like this, right? I might not be with you romantically anymore, but because there is a child in the matter. At some point, adults just need to drop all the nonsense. It's not about you at that point, it's about your child. So if it means that whatever anger or whatever you have, you are throwing it off the rack just to make sure that that child is raised in a very loving and healthy manner. That is what is needed. So I wish a lot of people can take a cue from that because I've seen some people who are no longer with the person. You start fighting unnecessarily. It doesn't make any sense to me, honestly. So that was a fantastic observation. Alright, I think we should talk about that one day. It would be nice. It's kind of a sensitive topic. It is, right? Oh, that's true. It just clicked. I just clicked it. We'll still need to talk about it.  We'll just talk about it. It would be nice to hear from the perspective of the child, right? And it would also be nice to hear from the perspective of the person, the parties involved. Because again, sometimes if parents hear from the part of the child, this is how this affected them. Maybe the others will learn and make better decisions. Absolutely. I agree. Look at your story, Sanzee. I don't feel like taking my story anymore. Why? It's preferable to say more cliche, budgeting in Nigeria. So recently they got the SUVs, 360 SUVs for the National Assembly and whatnot. So there is a supplementary 2.17 trillion net, which is part of those funds, is a budget of 5 billion net for presidential yards and then 5.5 billion for student loan. And so I was reading a breakdown of, you know, the supplementary 2.17 trillion. So the federal government is to spend 6.9 billion on cars in this office and presidential villa. And also he's spending 2.9 billion on utility vehicles and 28 billion on the state house. I think for me, what the major thing that stood out for me is the fact that, I mean, over and over again, we've talked about prioritizing or just being considerate of the state of the nation and just being careful about the expenses you're making. You cannot make all these humongous budgets for yards. What do you need a yard for? And then you're making 5.5 billion for student loan and even higher than that for the first lady and renovation like. You see, when I was older first lady, I just want to remind the president, you know, and the entire family, the first family, that part of what they promised was that, you know, you are wealthy. Everybody knows that you are wealthy. And so the promise was that, you know, you were not coming to office to spend Nigeria's money, right? You were coming to office to actually, what's the word now, govern Nigerians and, you know, serve, right? New hope. Yeah. So, I mean, when we hear expenses like this, it kind of like begs the question, what exactly was the promise and those conversations about? Because, I mean, if you talk about cars and all of these things, these are things you already have. Like, do you get what I'm saying? I don't know how people do things, but every day I look at Nigeria, I keep on saying that if Nigeria were your business, like you... How would you manage it? You have it as your personal business that you are spending expenditures and all that. It's your money, you understand? Would you manage it the way it is being run now or you would do things differently? Like, literally, when we have that question at the back of our minds, it would just help a lot of things. You know, it would help a lot of things because it's just ridiculous.  There are things already. What is he using at the moment? I don't know, my sister. That's what I'm saying. So, it's okay for you to want to do like an upgrade or something. There should be a... By now, there should have been a plan in place on how to reuse the old cars. I don't know if you understand what I mean. Even if you cannot even reuse the old cars. No, there should be a benchmark. I've said this several times. NJ, if you work in a corporate organization and you are probably the manager, there is a cap to the kind of car that will be allocated to you as the manager. So, if they say your cap is 5 million and you say you want to drive a 15 million Naira car, you will go and bring 45 million Naira and add it to the 5 million. Do you get what I'm saying? Like, you cannot use a... What's it called? The company funds to buy that 50 million Naira car. It's impossible. So, that's what I'm saying, that we just need to find some level of... I don't even know what to call it.  There is a lot of suffering and I don't think these people understand how much suffering is out there.  We are the ones that see the suffering. We see what people are going through. Every day you are passing by, somebody is begging you for money and all of that. Why can't you as a leader see the pain of people? It is very insensitive. Very insensitive for us to be thinking of buying yachts, buying cars and all of those things. When there are so many more things that this money can go into, that will bring a better livelihood for the entire nation.  The NLC president, there has been a lot of speculation that he was arrested. Yeah, he was arrested. But the police has come out to say that he wasn't arrested, that he was taken into protective custody, that they said that it is pertinent to state that the NLC president was in Norway as part of the arrangement of the Congress to mobilize workers for a mega-protest rally in the state. In the course of their planning, it was reported that suggestions arose for the lockdown of some essential facilities, particularly airports, which led to some workers and other individuals resisting the picketing process, leading to scuffles and heated arguments and an eventual attack on the person of the president by EMOP. Upon receiving that report, the EMOP police command swiftly deployed police operatives to the scene where the officer in charge exercises operational discretion by taking the NLC president into protective custody at the state command headquarters to ensure that the protection of his life and that he was not lynched in the scuffle that followed. So the commissioner of police thereafter directed that he should be taken to the police medical service where he would be accorded medical attention as a result of the attack. He has therefore been accorded adequate security cover to proceed to his other legitimate engagements for the day. So they said there was no such thing as an arrest because I saw it flying all over social media that he was arrested. Well, let him also come out to come and see what transpired. It would be nice to also hear from the horses mouth, but not from the police command. So we'll take a break now. Let's discuss illegal migration in Nigeria. Stay with us. We'll be right back.


Isosceles is a method for hierarchical sampling of large image sets that uses affinity propagation to automate the selection of highly representative training images, reducing human bias and oversampling uninformative areas while eliminating under-sampling informative ones. It obtains a training set that reflects both between scene and within-scene variability for country-scale building extraction, resulting in an increase in accuracy of 2.2 to 4.2% compared to stratified random sampling using three, distinct model architectures. This article was authored by Benjamin Swan, Melanie Lavardier, H. Lexie Young, and others.


What is going on folks? Alright, so the ES is finishing up a little bit, still above that 4300, they were able to, oh man, a massive volume, at least today. So did not break below that 4300, that's a decent sign for staying out there for a little while. But I guess most people weren't concerned, I would suppose, with what's going on. Essentially on Instagram there was like a trafficking ring that people were communicating, at least traffickers were communicating through. And so the European government, essentially the EU wants Zuckerberg to kind of answer for that and how they're going to prevent it in the future. So that'll be interesting, but it didn't, I suppose, impact it too much whatsoever. Tesla finishing pretty strong today. So essentially what's happening as well, and I didn't touch on this in the show, but they're going to be able to get that kind of tax credit essentially. And so in March of this year, the current administration was saying you can get a $7,500 tax credit as long as the batteries, the quantity of component in it, some certain amounts are manufactured and sourced in North America. And I could kind of explain to Tesla getting out of China at least production-wise or natural resource sourcing-wise. So that's pretty interesting. Tesla is officially saying that the Model 3 starts at $32,740 after the $7,500 IRA tax credits. And then also reports are circulating on Wednesday of this week that Tesla has agreed in principle with a plan to set up a manufacturing plan in India. Tesla's website recently stated that the base Model 3 vehicle was eligible for the full $7,500 tax credit. The model previously only qualified at the $37,50 level. And again, I think that kind of explains their drive to start these kind of lithium plants in the US and the novel way that they're extracting lithium, which deviates from the kind of standard way that they do it. So Tesla's poised. It's great. Microsoft finishing .47. Pretty big. Apple staying at that, well, it kind of went down to take hundreds of big volume, but on the whole, not too bad, year-to-date-wise. So STLD, steel dynamics down 1% today, but cracked that 100 and just came right back down. It wants this. I really feel like it does. Again, it might be biased. Folks, thank you so much for joining me. I hope you have a great weekend and we will be back Monday.