Look at these stats over here. COVID-19 impact on media buying. 49% held back a campaign launch until later in 2020. 45% stopped or paused a media campaign midway. 38% paused all advertising until later 2020. 34% scrapped their campaigns pre-launch. Majority of advertisers don't have the spending power to buy additional impressions, which has resulted in extremely low CPMs. Ad moik, moik whatever, shared that there is 17.2% drop in week over week ad revenues, direct deal, real time bidding also dropped by 15% in CPMs of 14.8. B2B buyers count on vendors to provide more quality, accurate buying information, more confidence. Businesses that sell non-essential products and services can expect the dip to continue until the next few months. Forget the next few months, it's gonna keep on going. Let's continue, so paid advertising. 53% of consumers preferred brands to communicate through TV ads. 35% of consumers are more interested in hearing about online retail excluding food than they were before. As per the research conducted by AI software company Remesh, 97% of people are using social media for at least one to three hours a day. Despite targeted advertising, these were some statistics the research discovered. 64% of people ignored paid ads. 49% blocked those ads. 79% of people urged brands to have ads that are positive and caring and inclusive. Contrary to common behavior, it's time to apply common business sense and invest money into ROI. Oh, ROI, you don't say, oh my God, return on investment, call all. And that was a good time to invest in ads and webinars for the new normal post COVID.    Anyways, the rest is mumbo jumbo. What I wanna talk about is this. So yeah, it's no surprise. All the marketing budgets are down and people are spending more time online, but there's this huge opportunity. I said this last year. I think believe it or not, depending obviously on your product, and majority of this is e-commerce anyways, physical products, I believe there's gonna be a massive comeback when it comes to direct sales. And specifically now, you gotta think about this. If even when the quarantine is lifted, it's not like people are gonna be congregating left, right and center. Remote working is gonna become more normal. People will be spending more time in their house. And as the ad said, people just don't trust it. They don't trust ads anymore. And I will never forget it. I was at the Covenant House. So I try to do a Covenant House every year and we raise money. And I was asking like, how do you raise money? And 80% of how they raise money is direct mail. It's not online.  Emailing out their advertising pamphlets and what they do and case studies and they should send it out to their recipients. And so I think this is a golden opportunity where you can get dirt cheap, direct response marketing. Pay somebody to go deliver in a community. You can buy postal code ads or there's a bunch of different directories out there. But I think combining both direct marketing, so direct sales where I'm getting some nice, like a really cool marketing pamphlet where you're adding value, you're giving me something.  It might be like a cool case study. It might be like a small token of appreciation but the combination of the physicality to the digital will increase your ROI. People are, they're getting ad fatigue.  We call this ad fatigue or the burnout of a funnel. And so depending on the business you're in right now, I think it's a massive opportunity. Like if you're in a major city, go hire somebody right now. They can wear gloves. And obviously after this quarantine's done in a month or so, make a beautiful type of creative, like a really nice creative. They're cheap, man. I think it's so much low hanging fruit right now. Businesses need business.  Hire some kid out of high school. Pay him like, hey, here's 10 bucks an hour of cash. Go run around to these addresses.  Have a tracking code. So within that different case, within that direct response letter you give them, you wanna have some type of tracking code for online. So you tell them, hey, go online, check this out.  An interesting thing, Toby who is the founder and CEO of Shopify said not to long ago, or I would say beginning of Q1. Last quarter, they had more success with billboards than they did digital. Think about that.  They're getting bombarded every day.  And so people are just getting burnt out. They don't wanna see any of this digital stuff. Same old shit over and over again, but think about that pattern interrupt where for once they're actually getting, imagine you get a letter in the mail that's wax sealed that has your name on it and handwritten and like think about the impression that would leave on your new potential customer. It would leave an impression on me. If I got a letter that's wax sealed and I open it up and I read it and it's not like some bullshit is actually adding value and really informative for me and there's a more direct kind of tangible textile feeling. This is where I think the future is going. It's gonna be a hybrid of offline and online, but right now is a massive opportunity because no one's doing it anymore, nobody. But I think the environment is set right now for direct response to come back, physical advertisement to come back that in your cost of your, as they say, return on investment or return on ad spend is gonna be way cheaper. Actually, what I like to do from here is hear your thoughts about this. What's your experience with this? Leave a comment below this video. Don't forget to subscribe, like, hit the notification bell and I'll talk to you guys soon. Peace out.


Okay, well, after my first number theory website seminar, I swore I would never give another one. This is it. Sorry, that's only a joke. That's a spiteful joke. I'm very pleased to, to give the second one, the technical preparations were somewhat tedious, but the intellectual preparations were great fun. So there's my title, some new, then you see a misprint, elliptic, and that's, that's my favorite misprint. I was getting my PhD ready for submission to the University of Cambridge in 1974, and it was all typed up and I checked it 140 pages or all mathematically correct and the title page then had the word elliptic, and it was all typed.  It's, I got through, I got my PhD. Okay. So, it's an old title, a strange title. It's almost like some new positive integers. Some new elliptic intervals have been a new positive integer, positive integers, but there are number two, please. Philip. Here is a new positive integer. Six, six billion four thousand and 49. And I first met this number in 1979 in Sydney. I was invited by Vanderporten. And I went into the library I was the University of Sydney I went into the library and found this book. Find this pic this find by inspection a factor of this number. Six billion and 4049 and I thought how can anyone find solve this problem inspection means you can't even write anything down. And it contains all kinds of all kinds of things like this. Here, here you have to factorize these huge large numbers. You have to factorize as far as possible, but these numbers you have to factorize completely. And the book was written in 1906 so you didn't have any, you had no electronic calculators or computers or anything like that to help you knew only these funny calculating machines. Okay. Now, number three, please, Philip. That's. Yes. 1979. The first thing new number. That's a prime number. And if you add these six digits here you get primes. For the first few terms, like this is a prime I can do color you see, and then, and then all these numbers are primes. And showed me that probably in 1979. And it's an exercise to show that there's no longer example that this is quite useful to know this kind of thing if you have something you want to check for large primes you just write this number down and try only the partial sums kind of thing. Okay, number four. Yes. So much for positive integers. And these arise from the concept of elementary integrability. So, one over X is integrable integrates to log X. One over X log X integrates to log log X. But if you try and integrate one of the log X, then it's not elementary in any sense, in the sense that I'll soon describe. Oh, I know two arrows going on. It has a name. It's essentially the logarithmic integral li X in prime number theory. But that doesn't qualify for elementary. What is the key property that is that the integral of FX DX can be written down using X and FX, and then the log function and it by symmetry the exponential function, and you throw in algebraic functions. So, for example, sheet five. This could be an answer to the integral X of square root log log X plus log one plus X FX. So you're allowed all kinds of combinations additions and iterations and so on. You can do a formal definition and the best formal definition I think is by differential algebra. I'll do it here, but the differential algebra. Completely sweeps under the carpet all problems of domains of definition, or even differentiability and this kind of thing. It doesn't, it doesn't even sweep under the carpet eliminates them completely. I just skip this phrase now and and I another reason I don't give this is that there's a simplification that's about around 1840. Newville showed that exponential is not really needed in the definition and even log log and algebraic functions are not needed either. At this point I would skip back to the previous one today. That's to tedious I think in the previous one we did see a log log, but it wasn't really a log log it was log of log and log was given to you in the integrand so. And the idea of his theorem which I don't state precisely FX, the integral FX DX is elementary if and only if it is a linear form in logarithms. And what does that mean. Please. F zero plus C one log F one plus up to CM log FM. This is the formula labeled you will. C one up to CMR constants in C, and F zero F one up to FN are in this large looking field here that you get by joining all the derivatives of F, and we don't have to say that F is in many different if we often differentiable. This is implicit in the in the differential algebra business. So, if you know that the integral has to have this special form. There's no exponentials and there's no log logs and the. There's no iterations and there's essentially only additions, then it becomes a relatively easy exercise to check that this DX over log X is not not elementary. The hint here is that this big, this big field that I introduced, I have my arrow here. Yeah, this one here is actually rather simple just generated by X and log X. And X and log X are algebraically independent functions so you can call y equals log X and then you have a problem in a function field. You can call it transence degree to and that gives you plenty of room to work in. But if you are now. Look at integrals of algebra functions square root of x cube minus x. Let me just, let me just get rid of the. This, this integral also has a name is two times P to the minus one X, where P is the viastras function corresponding to a certain elliptic curve or G to G three, and the the verbal name is an elliptic logarithm. And then the transcendence degree of this apparently large field is just one and that means you haven't got so much space, and the thing is not quite so elementary. One has to consider zeros and poles on this elliptic curve defined by y squared it was x cube minus x and I multiply by four, because I will soon be in in viastras mode. This is an easy exercise if you know a bit of theory here. And then, once you've done that, it's just a small step to show something a bit more complicated. But if you take now this integral so DX over y is just the same as this one more or less because of the y. And then you put this rash simple rational function in one over X minus tau. Then this being elementary implies that a certain point is torsion on the. This the point with ordinate with abscissa tau, and then the, the ordinate is to root tau cube minus tau. This is a key formula as well it shows how torsion comes into the whole thing. And with torsion comes number theory and so on. Okay. So six extended footnote. Please. Yes, so that's a proof of this implication I think I'll skip this on grounds of time. There's not much to it a bit of elliptic. Oh, yeah, there's a bit of elliptic theory but I call it Whitaker Watson section 2013 and 2014. These are the old this is what I first learned elliptic functions from good old, good old. Where am I. Oh, I know. Here is here is Whitaker Watson almost falling apart at the seams. Then, again, and then there's not much to it. If you know a little bit about elliptic curves. Unfortunately, you can't reserve reverse the argument. And that's the whole. Okay, so now pay page seven, please. So in fact, I say that the, the opposite implications force a great pity as you'll see. So we finally arrived at elliptic in the title. The difficulties here can be illustrated by the fact probably known to Arbel and Chebyshev that if you take now DX over why, and put this rational function in. Before we put one over X minus town now I put this explicit rational function in. Then this is actually elementary becomes elementary again, even though without this thing it's not elementary. And that has M equals one in Louisville. So in Louisville, you had the logarithms and M was the number of logarithms. So that's elementary. With a single logarithm, but if you, it's no easy feat to work it out if you give this to maple it's completely baffled. Now to find the Porton and Tran in the year 2000 that gives many more examples. My favorite example is oilers in 1780. And now you put this rational function in much more complicated. This was in disguise. I've transformed the Arbel and Chebyshev were working with square roots of quartic polynomials and Pells equation, but I don't want to introduce that here. And so I had to transform it and I transformed oilers to this one. So this is heavy disguise. This one is then number eight, please. It's elementary with M equals two. So there's two logarithms now and you can't combine the two logarithms into a single logarithm. And just a kind of vague remark in the classical literature, which is rather copious and fascinating. We never found any natural examples involving three logarithms. I may make a later remark on this. And then we'll see later exactly how the difficulties arise. They were clarified and summarized in a short 1970 paper of Robert Rich. So now we come to the main theme of the talk in 1981 in his PhD thesis, James Davenport. So now the picture which I thought there's a picture of sheep, the sheep photograph. Philip, can you find that asset here is here is the man James Davenport. He's being declared a freeman of the city of London. And he has to swear these oaths he will be obedient to the mayor of London. And, but he will warn the mayor. If he finds out that there are plots against him. And there are other various things he had to pledge. And the fake sheep here symbolizes right to drive sheep over London Bridge. So he has the theoretical right to drive real sheep over London Bridge. But he says on this is all on his website he says that the Metropolitan Police of London take a very dim view of anybody trying to exercise this on their own initiative. So he has the theoretical right and I think there's a there's a particular day where these people can all join and drive their sheep over. And now the photograph, the other photograph which you thought Philip was of seagull. Yeah, this is not seagull. This is his father Harold Davenport. So, and this is because the confusion can arise. This is Harold Davenport either either clapping or washing his hands I don't quite know which, but it whatever. And that is the ubiquitous cigarette he was never without a cigarette. So that's how I hope that. And now page nine please. So asserted this is James Davenport who asserted that if you take now fxt with a parameter in. And it's an algebraic function of x and t. Now to algebraic functions. And this means that f is in the algebraic closure of see a joint x and t, such that the integral fxt the x is not elementary, identically in t. Then there are most finitely many complex numbers tau, such that the specialized integral when you specialize the T from the tower is itself elementary. Identically in T can be explained by an example. The integral of one over x plus T is log x plus T. So that's elementary. And then here you can simply sub specialized T to tau and you get elementary there. So when you have this identically in T business, then the thing become stays elementary under all towels, except perhaps for a finite number. So as long as this doesn't hold, then you get this finalness. This is a rather bold assertion and somewhat original. If you take classical specialization theorem of number theory Hilbert's irreducibility theorem, then this doesn't hold in such a strong form. So x squared minus T is irreducible. But if you put T equals n squared, then x squared minus n squared is not. So you don't have fineness in this case, but he asserted that you have fineness in this case, in our elementary integrativity case. Page 10, please. But in fact, it was too good to be true. And on the 9th of February 2016, I think it was about quarter past three in the afternoon. After about three years work on better as any and I found two count examples. The first was this one so we take again the old DX over why and we put another rational function in, which is slightly more complicated now degree two. And this is not identically elementary. Not quite so easy to see it, but it becomes elementary at T equals tau if and only if this point that we've seen before is torsion of order at least three on the curve on this curve. That looks like this formula torsion, but that has only only if so here is if and only if and here we can go backwards. This point is torsion for infinitely many. This gives infinitely many towels you can just choose your order as you like. And so you get infinitely many towels and so this is a counter example to his assertion. And if you think about it this has some sort of strange flavor. If we take order 1979, which we happen to know is prime. Then the integral becomes has m equals to it's a linear for me logarithms it's a C1 log F1 plus a C2 log F2 as a new bill. But F1 F2 there now in the function fields of the elliptic curve CXY they must have degrees in X at least 989. Whereas the original thing had degree only two. So if you take an arithmetically complicated towel. Then the integral gets a geometrically complicated number. Number 11, please. So arithmetic complexity implies geometrically complexity in some sense. This may remind people of Belly's theorem where you have a similar kind of odd behavior. So this. This count example is not one of the new integrals of the title. This is an old new integral. This elliptic curve has complex multiplication in this quadratic field Q root minus one. And for example, the action of minus one on X Y is minus X times minus X and then root minus one Y. We had a second count example and that had a similar phenomenon in Q root minus three. We all know these are the only imaginary quadratic fields with non-true units. And it seemed to me that our proofs used these units. Footnote here we already knew that every elliptic count example must involve complex multiplication. But so but in this in our paper of 2020 we only had the root minus one root minus three. Number 12, please. And in our paper we we had to we had to restrict to algebraic coefficients. I said that F was algebraic over C XT here we have to have algebraic coefficients in. And then we showed that such count examples are very rare. It was very difficult to find so we called them elusive. That was about the time that the Higgs boson was found. And also lucid. But there was a puzzle and it's mentioned in our paper. Some 10 years ago 1010 years before previously Daniel Betron found count examples to a different conjecture. And these were in every Q root minus D. Why do our elusive seem to stop at root minus three. And what about root minus two in the middle. Finally, relatively recently 2021 we could after all construct elusives with respect to every Q root minus D. And I just will now I didn't write them down. They're not so difficult to write down. But the method is analytic. So we're back to Whitaker and Watson and bias stress. So take your square root Q take your D a positive integer. And then you have the this field and there's an elliptic curve certainly with this complex multiplication. We can put it in bias just form with G2 and G3. And then you can always do this without your break G2 and G3. There are page 13 please associated bias just functions PZ which we saw already, and also Zeta Z. Then you pick any delta zero non zero in the endomorphism ring. There is a functional equation involving values of the Zeta function Zeta of delta Z is delta bar times Zeta of Z delta bar is the complex conjugate. Plus a couple of other terms one is a linear term alpha Z. And the other one is essentially elliptic function. And it's an old elliptic function. So it's the derivative of the P function times a polynomial in the P function. This alpha then depends on Delta. And it's also algebraic and Q also depends on Delta. It's a rational function of this new variable X formerly known as Twitter. And it also has algebraic coefficients. This function equation looks completely classical and I still don't know. I still don't know how to find it in the classical literature. As far as I know, it seems to be in written down only around 1975 independently by Dale Brownwell with Ken Kubota and by me and that was in my PhD thesis with a misprint. So if you differentiate this and then use the Zeta dash is minus P, then you get another functional equation. This time involving just P, and it looks much nicer because this differentiates to alpha. You get simply P of Delta Z is R of PZ where R depends on Delta as well. So this rational function. Now we're nearly at the different nearly at the count examples. They come in page 14. Now take Delta, not in Z. So a real a real complex modification. But first we had a differential we called it the usual suspect because it was always was somehow the obvious one to be to have this property. So it's omega now I talk about differentials I don't use integral signs anymore. So the usual suspect is only go usual suspect, depending on the and also the Delta. And you have the usual DX over why, and then you have these, these terms here this is also a rational function of X a simple rational function of X, but involves these rational functions of T as well. So you have X minus RT minus Delta, Delta bar over X minus T. And if you take the situation of the first two elusives, then it really does more or less lead to what we found for a while we thought it works for root minus two. And if you work at this out for root minus two, it's this thing five T squared plus 40 T plus 62 times X plus T Q plus 80 squared plus 70 T plus 144 over X minus T, then times two T plus eight times X plus T squared plus 40 plus 18. And the why has changed now. This is the, this is a convenient form of elliptical with complex multiplication by square root of minus two. So we have coefficients 1356. But this is definitely not elusive. And if you put T tower, it almost never becomes elementary. I think it becomes elementary just three values, which are easy to describe. It doesn't give you infinitely many values at all. So that doesn't work and the, and the final step was to make a final adjustment. Omega is the usual suspect minus a multiple a constant multiple of DX over why this is a constant this is a constant. With regard to X just involves the T. And the Q is the rational function in the fun now I would flip back, but I can't. Q is the rational function in the functional equation there. Thank you. This is this Q here. Thank you. 14. R is R is also as in the previous one. So you have these two related rational functions R and Q. So we make this function co-operation then we get to know this. Page 15. Please. We omit the proof. A footnote in Whitigan Watson section 2053 plays a minor but non trivial role. So, as luck would have it the, the modification to the, to the thing on the previous slide which turned out not to be elusive is just to add one to the rational function. And then after some simplification you get this, which looks a bit shorter than what I wrote down on the previous page but the degree of X has gone up to two. X squared plus two T plus 10 X plus two T plus 18 of X same denominator X minus T to T plus X to T plus X to T plus eight X plus T squared plus 40 plus 18 DX over Y. We could then show it's the simplest one. And essentially unique. There's no unique one because you can, in fact, you can always replace T by any other rational function of T. And this, this is essentially the simpler, simplest one. And in view of the enormous amount of time required to find this, we called it super elusive. As a color corollary all elliptic elusive can be written down now and they all have two logarithms. And this is this problem of three logarithms, and it's still conceivable that you can find somewhere three logarithms for something sporadic, which doesn't come from a specialization of a family. But this is a somewhat vague assertion. These calculations were very tedious involving sign endless sign problems, which is why I like to work in characteristic to where it doesn't the signs don't matter. Here they matter a lot. And we calculated the above integral at this value of tower so two plus three root six, and that corresponds to a point of order three. It is m equals two so it's C one log F one plus C two log F two where page 16 C one. There we are, they're written down. I've taken some trouble always to read out formula to slow the expedition down but I'm not going to read these out. You can see that here you can see that the C one and C two, their ratio is this root minus two. So it's irrational. And that means you can't combine the two logarithms. How does one actually do this integration maple as I said is is out of depth with much simpler things and and here you your. This looks like a number field of a degree eight here with I in it and square root of two and square root of three not dimensions, square root of a square root here. So it's a field degree 80 or eight or 16 and it's just out to can't handle these things at least I don't know how to make it. There's a, there's a, there's a computational machinery called Frick us, and that can actually do it. But it is not guaranteed to turn up an answer. Again one looks at the poles of the differential with T equals tau. They're simple. And if you remember the denominator is could we have 15 back yes. The denominator gives you the poles here. And so X equals tau is, is gives you one, actually two to a one pair of poles. And this other value of X gives you a rational function of T, and they're written down in the sheet 16 and now 17 I think is needed. That's 16 that's tau pi one, and now she's 17 is pi two and that's this this abscissa here. And in fact pi two is square root of two times pi one. And then you can find logarithmic differentials, the F one over F one df two over F two with the same poles. If you have this, if you take tau suitably to correspond to a torsion point, that would be pi one is a torsion point and therefore pi two is automatically torsion point. We then find C one C two such that this linear combination has the same residues. So now you've got the same poles and the same residues all the poles are simple. And so if you take the difference between the original differential and this linear combination, you've got no poles at all. Now the only differentials with no poles are constant multiples of DX over Y, constantly with respect to X. And one just works out C to 100 decimal places if, if one's desperate and the one gets C equals zero. So this C is related this final adjustment coefficient to delta Qt in the differential but we hit zero here because we kind of took it over to the other side and made it zero. We calculated some other super elusive and we went up to Q root minus 163 for fun. This is the last one where you can stay over the rationals because of class number one. The degree in T has gone up to 162. The degree in X is still two. And some of the coefficients have 535 digits. I could show it on the on my screen here while I can't. In fact, but I have it on maple but it takes about half an hour to scroll through. So page 18. And now I will change the theme a little bit. And I can link between the two themes is the Weistar sigma function, sigma dashed over sigma zeta. And there is a function equation for this as well of the same sort, sigma delta z here is sigma delta z and here is sigma z. And this is to a power delta delta bar that we've seen before and the whole thing is squared. And then you have this exponential polynomial. Alpha is as before and P now is also depends on delta but is a polynomial. So you've got gone from rational functions to polynomials and this is this is rather handy for calculations. If you differentiate logarithmically this one you get the functional equation for zeta, which then differentiated gives the functional equation P. So it's kind of a hierarchy of things and this, this one for sigma is somehow the fundamental one. And it also supplies an indirect connection between the elusive integrals and the rebate curves. So there's no clue how much time I have now. Could someone give me an estimate. About 10 minutes you can go because it started later. So it's up to you. Okay, I'll have to stop and really see. I'll go ahead with this. This. I wanted to talk about the rebate curves and the connection is Madeline Mumford, the well known in diaphragm and geometry circles about torsion points. The simplest case here is to solve completely x1 plus x2 equals one in roots of unity. Here it can be done with a simple picture page 19. It does not contain the simple picture. After that one can treat a general algebraic curve in GM cross GM with the multiplicative group GM of nonzero complex numbers. So you've got a general algebraic curve replacing this line after that one can work with a general inside a general commutative algebraic group G. But then you can have now an obedient variety. But just as in the Davenport assertion one must allow a parameter. And this puts you in the so-called relative Manin Mumford situation. And our own work in 2020 involved mostly a billion varieties then parameterized by a single parameter. But we also had to contend with so-called additive extensions of elliptic curves G and these sit inside an exact sequence or an elliptic curve E here. And GA is now a long hand for the for the additive group of complex numbers. And now you allow parameters. You can't allow parameters in there. You can see involves no parameters, but you could allow parameters in E. And most of the work it's the this is this is the genre. It's the genre of curve page 20 please. Defined by y squared it was xx minus one x minus t for example. So that was the situation for elusive as regards. And by contrast the rebate curves sitting multiplicative extensions G. And now it looks much the same. You have G and you have an elliptic curve and you have GM here. So that's that's now multiplicative. So I put the one instead of the zero. So it doesn't look like a big change. In fact now the theory also forces complex multiplication on you. Which forces E to be constant say again let's put it in by a stress form. As we did before. And, and then we have G. Now the parameter seems to have vanished again again there's no parameter in C star. And now there's no parameter in E because it's constant. So where's the parameter gone. And here it comes in a more subtle form. These multiplicative extensions are far from unique. And they're parametrized, they come in families whereas the additive extensions are. The additive extensions have much more rigidity and they're practically unique. They are 100% unique in current number theory terminology. And they're all isomorphic to each other. Here the isomorphism classes are parametrized themselves. And they're parametrized not by a simple T but by points pi on E itself. It's not clear how to see this. One can imagine one can see it through the exponential maps of the of the algebraic groups. The exponential map on GM is is is the exponential map E to the W from C to GM. But on G in here this G. Now that's get that's two dimension two dimensional. So you'll have functions in C to of Z and W. And the key functions are. Page 21. X equals PZ. And also you have P dash said but that's, that's, that's kind of somehow superfluous. Parameter is U. And this is given by Sigma of little Z plus big Z over Sigma of little Z Sigma big Z times E to the W. So that's the E to the W that we saw before with this little modification. And so we have little Z and W and we also have a big Z floating around the big Z is more or less Pi.  So with these two algebraic coordinates we can sort of see G in C to some kind of projection on it but good enough for practical purposes. And if we throw in T was PZ into here, then we get a much better view and that's in C three. And now you've got the parameterization into account even though you've still only got a group, an algebraic group in C two you've got an object in C three whose fibers of the various various genes. And now you have algebraic coordinates X you and T. And now in this C three, we would like to construct the rebate curve. We pick delta now in the endomorphism ring, even more special so it's purely imaginary delta bar is minus delta. So using this star thing, make a strange choice of big Z and W in terms of little Z and big Z is delta times Z, and W is Z times Z to delta Z minus a half alpha. And then I keep the dependence on delta here times Z squared. So, there's only one analytic independent analytic variable left that's little Z.  But in fact it's an algebraic curve. So, we can see this with a little bit of calculation and we can see one relation between these three coordinates. T is PZ and big Z and P big Z is P delta Z from here. And here we have the functional equation that's our delta of PZ and that's our delta of X. So T is a rational function of X. And so we have one, at least one algebraic relation between these two to three coordinates. Page 22, please. So an algebraic relation. Now, what about you?  And then we had some exponential parts and they simplify to to this. And here you see sigma delta Z. This suggests the functional equations for sigma. Here you see sigma of one plus delta Z. And so you're going to need the functional equation with delta plus one as well. And they involve squaring so you're going to have to square the whole thing. And then miraculously the exponential part goes away.  And P was a polynomial. So this is a second algebraic relation, definitely different. And that gives you your curve. And I think here this slide is the first appearance of the of of ribbed curves in print, at least in this kind of two dimensional form for delta is minus root minus one it's the boring. U squared is minus two minus one X, but for Delta it was minus two the the source of all our troubles.  So, do I have a, let me see. Do I have say three minutes. Yes, yes, please stick. Am I, I don't want to go over. No, no, please, please go ahead. Just perhaps one more slide. It reminds me of a story about that someone was in the next hotel room to the famous cellist Rostropovich, and they could hear him practicing a piece. But they knew it wasn't the piece for tomorrow's concerts and so they were puzzled. And when they got to the concert, they found that he was actually practicing his own course. So here are my own course which I've practiced and written down and this is just open problems. So complex coefficients to algebraic coefficients. There's no work on this at the moment, but it's not expected that you get any new elusive things. And then even over here, this doesn't, this doesn't automatically point to elliptic you have to allow curves. See say of higher genus, we've been dealing with genus one, a genus zero is easy there are no elusives. Already we had seen in our paper that if, if there is an elusive on C, then the Jacobian must contain an elliptic curve with complex modification. And this more recent work enables us to reverse this implication in other words, there's an elusive on C if and only if the Jacobian contains an elliptic curve on complex modification. I think I'll stop here.


Hello everyone, I'm Ivar Lazaro, software engineer from Cisco. I'm Miguel from Red Cup and I'm a software engineer in Red Cup. I'm Justin Pettit, I work on OpenV switch for VMware. And I'm Thomas Kroff, I work for Cisco as well and I work on OVS and the Linux kernel. Today we're going to talk to you about Neutron and how to improve data path performance with OpenV switch solution for security groups. So at a very high level this discussion will go through a problem statement and a possible solution to this problem. And more importantly we're going to show you the performance result which will compare our solution with the initial problem. So let's start from the beginning. Whenever you create a virtual machine today in OpenStack using Neutron ML 2 OpenV switch driver, your compute node looks more or less like this. And you can clearly see that there is something wrong with this and more specifically what you have is a couple of OpenV switch. So one is for the uplink and the other one is the integration bridge. And when you trigger the VM creation, Nova is going to create the VEAT pair and one side of this pair will be attached to the integration bridge and the other side will be attached to one Linux bridge per VM. So you can see there is an extra layer of indirection here. And on top of all this there's going to be a top interface or even an extra VEAT depending on what you're touching to these bridges and they will connect the VM to the Linux bridge. So for each VM you create, you're going to create from four to five network devices. And definitely when you see this you may ask why you are doing this. And you may think that the answer is this one, but in reality the answer is security groups. So security groups in Neutron is a way to provide port level security to Neutron users, which means that the filtering rules you specify with security groups are brought as close as possible to the virtual machine itself. And these architectures you use so that you can push your IP table rules in these intermediate Linux bridges and open floor rules in the integration bridge for tenant isolation. And then you can ask why not doing all this with OpenVswitch and the open floor rules. Well, the reason is that at the time this was implemented in the Neutron community there were not enough tools from OpenVswitch to make a solution which was in future parity with what IP tables would offer. But you will know more about this throughout the presentation. So how can we stack things properly in this architecture? One possible solution for instance could be to remove that extra layer of bridges so that when you create your VMs or even containers, you can use just one single device for attaching them to the integration bridge and using open floor rules for implementing security group with the new tools that OpenVswitch can offer us. But before going further, let's go with some background with Justin. So first I wanted to just go over quickly what OpenVswitch is. I think most people are probably familiar so we'll do this fairly quickly. But OpenVswitch is a virtual switch that works at multiple layers of the OSI layer and it has extensive programming capabilities. So to program how you want to treat flow behavior, you can use the open floor protocol and we support all versions of open floor although not all the features are necessarily supported and a number of vendor extensions. And actually the vendor extensions are one of the things that we'll be talking about today to enable the connection tracking. Probably the biggest use case for OBS is supporting tunnels so that we can create overlay networks. And in addition to using open flow to configure the flow table, we have this OBS DB protocol that can be used to remotely manage other aspects for example creating bridges and tunnels. And then it has extensive monitoring capabilities as well. And I wanted to mention a new project, OVN, for Open Virtual Network or we call it OVEN. And so this is a new project that we've created that will provide virtual networking for OBS. And it's made by the same team that is made OBS and it will have it work on a number of different platforms. So it will work on Linux, Hyper-V, and we've designed it from the beginning to work with containers as well. And so the point of OVN is to create virtual network as I mentioned. And so we'll have support for logical switches and routers, ACLs and software and hardware based logical to physical gateways. But sort of the most interest to this group is that from the beginning we'll be using this new connection tracking based model to implement security groups, which will have much better performance and security than what's currently available. And it works of course with OpenStack as well as other CMSs. So to implement a firewall in OBS, and this is why we ended up with that model that was shown before where we had to go through IP tables, that OpenFlow is really designed just to work with stateless, just as stateless matches. So you can match on what's in a particular field for packet and maybe some metadata. But that doesn't work for something like a firewall where you need state. So to implement a firewall in OBS, in the past there were basically two ways that you could do it. You could implement it matching on the TCP flags. So you could, for example, enforce your policy on the SIN packets and then allow all AC and reset packets through. And so this works pretty well because you can create mega flows, which are a way of doing wild carding in the kernel. But the problem is that it's not really a great security solution because you're letting all AC and resets through. You're not just allowing connections that had been allowed previously. Another option, which is a little bit more secure, is that OBS supports this learn action, which allows you to insert new flows into an existing OpenFlow table. And the way that this works is that when a packet comes in that you want to allow, you look at the ephemeral port, so for example the TCP source port, and then you create a reverse flow that will allow the return traffic through. And this works a lot better because you're only allowing previously established connections in. But the problem is that this is really slow because we can't do things like mega flows. We can't do wild carding in the kernel, so every new flow has to go to user space. And this can affect performance by orders of magnitudes for flow setup. And neither of these work with things like allowing FTP data connections through and they don't do things like enforce the TCP window. So Linux has this feature called Contract. It's a module within the kernel. And this is actually what IP Tables uses as well. And its job is fairly simple. All it needs to do is... Well, it keeps track of all of the connection entries. It's a very specific job. It doesn't enforce policies. It just says, is this a new connection? Or is this a previously established connection? Or is this a related connection? So as I mentioned, the FTP example, maybe it's the FTP data channel. And so what we can do is use OBS by... We can add the state of the connection to the metadata of the packet that we're looking at. And so this kind of allows us to do stateless matching on something that's stateful. And this is how the proposed solution works. And so what we will do is there will be a new action to send to this connection tracking module. And then we will kick the packet back to OBS to have another look at it. This time with the connection status bits. And so I don't think I need to preach why it's good to do things at the edge. But it's much better to... Better performance doing this at the edge. You don't have a central choke point. And you have better visibility because you're doing the detection closer to the source of the traffic as opposed to further away. So you have more context. And so we actually have a working prototype of this. This will be going into OBS 2.4. The code's actually been ready for quite a while, but we've been working with the Linux kernel community to get this upstreamed. Because while we have control of the OBS user space parts, the kernel is actually maintained by the kernel community. And so while we can make suggestions about what's included, it's not ultimately our choice, but we think we're making some progress there. So here's just a diagram of what the flow of the traffic will look like. So if you have here in one, the traffic will come in and hit this OBS flow table. And the OBS flow table will say, okay, well, we want to enforce a security policy here. But we need to know what the state of the connection is. So then through this contract action, we will send it to the net filter connection tracker. And that keeps... That has a hash table over here that maintains the state of all of the connections. And so now when the packet will go back to the OBS flow table, and this time it will have the connection state set. So we'll know if it's a new connection or established connection. And what we do is then we kick the packet back to the OBS flow table now with those connection status bits set. And now we can enforce the policy and say if it's in a new state and we don't want to allow the traffic from the source, then we can enforce that policy. And one of the features that we use that the contract supports is this idea of multiple zones. And this allows us to be able to have overlapping addresses which you need in an overlay network. So if you have two IP addresses that are the same, you won't have them conflict with each other. Okay, so I'm going to explain how we put this all together for the neutron security groups. The work is based on the original proposal by Amélie Sadovi. I don't know if he's around. If you're around, thank you. And you have the code for the profile concept available on the second URL. That's a great review. Basically, we implement the firewall driver interface that is used on the OBS agent of Neutron. We have methods to update security group rules and vendors. We have methods to manipulate and create firewall rules for new ports. And this module basically translates all those methods and calls into open-flow rules with the special connection tracking rules. We actually made open-flow rules in parity with the current state of APT walls filtering. We have all the anti-spoofing rules for port security. And we also have a source mark filtering that is not yet available for APT walls. And I'm going to put a little example without going into too much detail with two VMs talking to each other with a typical HTTP connection. The VM one is a security group where all the outgoing traffic is allowed. And VM two is a security group where only port 80 is allowed. So we have a shortcut for ARP rules, for ARP traffic with some filters to avoid spoofing. So they can learn each other's IP address. And here's where I won't go into too much detail. You can see it on the slide later. But basically for the first packet going out from one VM to another, it will have to match the specific rule that is allowing the traffic and we put that in the connection tracking table. And then this packet goes to the second VM. In this case, everything is on the same host. So it will have to match the incoming rule that allows the destination port and that it sends to VM two. So later traffic, the outgoing traffic that normally will then be allowed for VM two because it doesn't have an output filter to allow anything out, will go through the... Okay, one slide right now. But basically it will hit these rules saying that any traffic that is tracked with an established or related state will go to the destination port. It will act as a normal switch. So everything goes pretty fast. And thanks, Miguel. We've seen that we have a possible way to simplify how the bridge model will look like on the compute node. And we also saw that we'll be able to solve all of this with OBS and later on OVN. But none of that would matter if the performance numbers aren't right. And I think this is what most people came here for. Like, how are the numbers? Unfortunately, they're looking pretty good. But before we go into the numbers, I want to explain what exactly we measure because comparing numbers is very difficult and we have to know what kind of setup we're talking about given the numbers I'm about to show you. So basically we have two compute nodes and we're running net-perf and corresponding net-server pair on each of the compute nodes. The compute nodes are an IV bridge 24 core machine, two soccer machine, 3.5 gigahertz CPUs. We're running REL7 3.10 kernel and we have eliminated the virtualization overhead. And I'm going to explain why. What we really want to measure is the performance of the actual packet processing and security group enforcement and not the path in and out of the VM. So the numbers here are net-perf and net-server running bare metal on the actual compute node. So this would be what you would receive by running a container and not necessarily an actual VM of the compute node. So we will not see these numbers if you run VMs. We will have additional virtualization overhead, in particular if you're using Votaio and software mode. We're always showing two different numbers. Local, meaning packet goes over the loopback. This would be one container talking to another container on the same compute node or one VM to another VM on the same compute node. And multi-node, which is across the network where we have a 10 gig NIC. We're doing TCP stream tests for various packet sizes and we're doing TCP requests, number of requests per second. So the stream is measuring bandwidth or throughput and the request per second is measuring latency. The lower the latency, the more requests per second you can get through. All right, enough explanation. Let's dig into the numbers. On all the slides, we'll always see a dark blue and a light blue. The dark blue is the existing security enforcement of security groups through IP tables and the light blue is a pure OVS solution. The bar is, in this case, representing the bandwidth in megabits and the line is representing the number of CPU cycles spent. So for the bar, higher is better and for the line, lower is better because we are spending less cycle per megabit. And what we can see here that OVS is doing better on all packet sizes. So from 64 bytes, minimal packet sizes all the way to 64K jumbo frames doing GSO. We're seeing 22 megabit... Gigabit, sorry, gigabit, 22,000 megabit on a local TCP stream. So OVS is doing fairly better. And on the left side, for the smaller numbers, you can see another essential piece, which is OVS is doing better and at the same time consuming less CPU cycles. Consuming less CPU cycle means that those cycles are available for your actual workloads. So we're not wasting them for actual packet processing. So this is local and it's a single net per thread. That's one core sending packets, one net per thread sending packets. Obviously, if you have multiple containers, you would have multiple core sending. So this is what this slide is representing. We're seeing for 16 net per thread sending local, we're seeing OVS is doing extremely better for large packets, but we're also seeing something that we're still looking into, which is this piece here. For certain packet sizes, the OVS solution is doing worse. We're looking into this and we actually noticed that on a different system, we didn't see this glitch. This is definitely something that we need to look into before we can get this merged. This is the only occasion we found where OVS was not doing better. So this is local traveling again. Let's go into multi-nodes. So this is going over the network and over a 10-gig nick. And you can see we're hitting line rate at the size of 512 bytes, size packets. Interestingly, like both the IP table space solution and the OVS solution are doing the same performance, but the OVS solution is doing two cycles. And for smaller packet sizes, that's the first two bars, OVS is doing better and even consuming less cycles per megabit. TCP requests, that's a number, that's a TCP request being sent to the server, sent back, and then the connection is closed and then the next request is being sent. So this is measuring latency. And we can see in this case if I'm 64 bytes or 64K, we can see OVS is doing better for all of them and consuming considerably less CPU cycles as well. This is TCP requests scale, like how does it scale using one core, four cores, eight cores, 16 cores? OVS is doing better at all of them. And in this case we can see something very interesting, that as we scale up, IP table space is always doing about the same degree worse than 16 cores. Remember this is a 24 core machine. So we have 16 cores sending and 16 cores or 16 tasks receiving, meaning we have a total of 32 net per threads sending and receiving. And for the IP tables case, there seems to be some kind of contention issue because the performance is actually worse with 16 cores or 16 tasks than with eight. While OVS is scaling up, you can see this clearly, it's exploding at 16 cores. Whereas with OVS, it's fairly ever. Multi-node, this is sending TCP requests over the NIC. Obviously the NIC is putting an upper cap here. You can see OVS is doing better for all packet sizes. You can see the larger the packet size gets, the more CPU cycles we need to spend, obviously, because there is more data to send. Same required, same numbers, but for number of cores, like how does it scale? Again, we can see OVS is scaling nicely. OVS uses the same number of, almost the same number of cycles per request. We got less of the number of cores utilized. Whereas for the IP table solution, the number of cycles consumed is increasing the more cores we use for actual packet sending. OVS space solution scales much better. Conclusion. We have noticed that both throughput and latency is considerably better than the IP table solution, except for that single occasion that I showed in the second performance slide, and we are still investigating that. We're fairly convinced that it's either a bug or it's something specific with that system that will definitely verify and explain that and try to find the root cause before we attempt an upstream merge. If limited by a NIC, OVS is consuming less CPU cycles, which is highly interesting for any kind of compute workload. I'm going to cover next steps, like the kernel side. I'm going to hand it over to Miguel for the other ones. As Justine already mentioned, this work will be available in the 2.4 lease of OVS. There is kernel support that is needed for this feature to work. It's integration of connection tracking with the kernel, and we are working with the upstream communities to get that included. We're going to the standard process and working on the feedback that we are receiving. We're fairly convinced that we'll get it merged in the next couple of weeks. At a point we will, I think, finally release OVS 2.4 and we can go full steam ahead and actually do the OpenStack piece as well. Miguel, do you want to cover the OpenStack next steps? On the neutral side of OpenStack, what we have now is just a proof of concept, so we have a few gaps to cover. We have functional tests to verify that all the security group cases and corner cases work as we want. Currently, we are only handling IPv4 traffic and we have to cover the gap for IPv6. We have we also have a few gaps when we switch port rules, there is, right now we delete the old rules and set the new one, so there is a few instants when you don't have security on your port, and that's not good, but it's just a matter of refining that. And also we need, of course, to propose this to the Neutron upstream community formally. We write down a specification and we all decide how we are going to do it. And despite that we are planning that there is a proposal to put, as we have done for all the other drivers, to put the reference implementation out of the tree, it's still valuable for experimentation or for, yeah, to have another solution, another operating solution. Also, of course, this will have to be integrated into the OVN solution to have port security. Hopefully this will be available for liberty. And as a last note we have a background configuration, if you want to try this on your own compute on your own NBM locally, you can use this bar and definition to deploy RDO-UNO with the back port of these patch and try it locally. It will compile the latest OBS with connection tracking and make everything available to you in the dashboard. And a link to the main OBS project. The connection tracking code currently is in my private repo, but we hopefully once that gets upstreamed in the kernel, we'll merge that into the main OBS repo and into master. And then this was a presentation that Thomas and I did at the OBS conference back in November and it has additional data, a little bit more details about how the work works or how connection tracking works and also some different performance numbers, additional performance numbers. And with that, I think we have just a couple minutes for questions if there are any. I should repeat the question. You just need to switch the the question is that when we use this implementation if we only need to switch the security firewall driver you only need to do that. There are a few changes to the platform to properly communicate to Nova that we don't need the hybrid beef driver but that's all. So far. To integrate with that also keep in mind that there may be parts in the OBS which agent in which you may need to change the priority rules. Because now that everything is living in the integration bridge some priorities may need to change. So there may be small changes in the agents as well. And of course we need to do that but compatibility with the OBS with the rules. The rules will be completely compatible. Of course, we will need the new version of OBS with CT otherwise it won't work. So the question was since OBS is stateless, where are the IP tables rules stored? So there are no IP tables rules. So what we're doing is that they're written in the OpenFlow flow table. So you would write a flow which matches in forest based on the IP address and the port. Which the bottom slide? Yes, there's more details about how the connection tracker works in that. Sorry? That is a present. Oh yeah, it's online too. So if you go to the OBS webpage you can find where there's links to the videos of the conference. So we do analytics on all of the firewalls. All the security events in our enterprise both in the cloud and not in the cloud. So we took the ML2 for OBS that writes the IP tables rules, hacked it up a little bit so that we get IP tables logs of all the drops and all the accepts. Any thought on how you could generate those security event logs in your solution when you don't use IP tables? I think some of those stats will be available through the connection tracker itself, right Thomas? And then I think... I don't want stats, I actually want log events for all the drops and the accepts.  You're talking about auditing, right? If you drop a packet you want to have an audit. If I drop a packet I want a log event. That currently does not... Like through the audit system that does not exist for OBS. But that is definitely something that we could have. There's an audit system in a couple of FESA links for example and if you drop a packet there's an audit IP tables target that will lock the event that I've dropped a packet in the audit subsystem. That's definitely something that we could implement in OBS through an audit action for example. That currently does not exist though. Thank you. Migration, are you guys looking into it from IP tables to the new implementation? During the... or benchmarks we had of course we had to switch back and forth for both solutions.  But if you want online that's... There may probably be solutions with live migration so you could place this new solution in an empty host for instance and then you can move the BMs from another one and do it again with live migrations but this is not something we dig into. More questions? So with live migration does Connection Tracker support that? Is there any code you have to add or does that just work? Well there is the since we use the Connection Tracker from the kernel there is the contract utilities as part of that ship it with Linux and so you could imagine something like contract D but I'm not sure of all the implications there probably have to be some open stack integration to make sure that all of the mappings happen correctly. If you wanted to do that we could deploy contract D between the original node and the new node and... Yeah I figured you could do that just wondering if you've done the work yet or anything to do with the timing and so on. So basically we're at the stage where we're presenting the numbers and we're looking for feedback whether we should continue with this work and against... if there is an official driver then migration is the next step obviously. Okay great. Hi. If you're using kernel contract do you know is it a separate database to the one maintained by IP tables because in the past I've had problems where the contractor has seen the packet twice. So for example if there's a reset the state will be torn down and then something else say for example at the moment a Linux bridge IP table sees it again and rejects the packet. So is the contract database being kept by this separate to the one that IP tables keeps? Basically you can have both like as Justin explained there are zones and if you put them into a separate zone you can have a zone for your IP tables and one for OBS but if you put them into the same zone then the OBS connection tracking entries can be the same and is seen by IP tables as well. So you could have for example the state created by OBS and you can match on the state from IP tables. Basically in the next paragraph there are some details to fix but basically every different tenant network goes to a different zone so overlapping APs are not going to be a problem and also connections on the host will be out of any zone so they are independent connection tracking tables. Great, thank you. Possibly as a slight follow up to the last question. Is there any performance characteristics due to the size of the contract table with this work or not? Absolutely but since like the IP table solution and OBS is using the same contract technology that will have the same issues I would say. Thank you. For the upstream kernel work is that going to be available as a kernel module that will work in what we are deploying today CentOS 7.0 or we are going to go back to the bad old days where you have to install custom kernels. Do you want to take it? Should I? So basically it is the same for us any new kernel feature. You need a backboard into your distribution kernel and you need to take it given the attention that is being paid to this feature at this point I think all the distributions will be happy to backport that for you and make it available in your favorite distribution kernel. This is... His question is currently in the neutral implementation, the reference implementation with the IP table there is an issue when you switch rules to a security group that maybe existing connections will still keep flowing because they are in the connection table so we are leveraging the zones of connection tracking and using the same strategy that AP tables is going to have that is still under development that means that when you change a security group with new rules basically if you take out rules it is going to reset the connection tracking table for that zone that of course will break other connections but it is more secure than leaving connections flowing it is still not perfect because you are... I think that in some cases it is going to break some connections but it is really a matter of how the rules are written the connection tracker does not actually have policy in it it just has the state of the connections so if you write an OBS rule that says allow all established connections then it would continue to flow if you wrote it a little bit more specific than that it reflects the new policy so it is established and it matches the policy then it would be enforced so the question was how will this work on other platforms that are not Linux based and so I think the plan is that there will probably be an effort to create a connection tracker that works on other platforms like DPDK and Hyper-V okay, that's good thank you


A leader is someone who has influence over people, and because you're in that position of influencing a group of people, there comes more responsibilities, more expectations, and more criteria and requirements to carry yourself at a higher level so that whoever is watching you, just by watching how you live, they become inspired to become better, to become a bigger version of themselves. I feel like a lot of these qualities just make good, common sense to have. Hi guys, this is Linda from Brain Education TV. If this is your first time, welcome! Please like this video, consider subscribing to our channel, and click the bell for notifications of each new episode. In this video, I'm going to talk about the five qualities of a leader based on brain education teachings.  Are you somebody who wants to create some kind of positive change and be a driving force in creating good in the world? If you're somebody who aspires to be a leader, especially if you're a young person right now, and you're imagining the years to come in your life to be something of great influence, of great power, of great success, then these five qualities of what it takes to become a leader will be very, very important to you. There are many leaders in the world today, people who are in positions of power, positions of fame, positions of status, and yet not all of them display qualities that are admirable to have in a leader. I think people get caught up in the superficial things about what it means to be a leader of the power that you have, the fame, the status, the recognition that you're above a group of people. I think people get caught up in that and get attracted to that aspect of becoming a leader, but actually becoming a true leader is something that is beyond the surface. To become a true leader, you have to have certain qualities inside that make you someone who is righteous, someone who is just, someone who truly has the qualifications to stand at the forefront of humanity to truly lead people towards the right direction, towards the right future. Also in brain education, Ilchili teaches that a leader first and foremost needs to have good, upright, righteous human character.  So then let's get down to the five qualities as taught by brain education that make a truly great leader. So these five qualities, they build on each other. So number one is most important, and then it goes down the list, two, three, four, five. So the first quality, number one quality that's most important in a leader is integrity. Integrity is the quality that makes someone do the right thing, even though there's no one watching, even though there's nothing to gain from you doing the right thing. When a lot of eyes are on you, it's pretty easy to do the right thing because you're afraid of the repercussions of not doing the right thing when people are watching. The judgment, the criticism, the rejection, all of this can help fuel someone to do the right thing when a lot of people are watching. However, a true test of character of someone's beliefs and virtues is can that person act with integrity? In other words, can that person do the right thing even though there's no reward at the end? Even though there's nobody watching, nobody's that's giving you praise, nobody giving you recognition, nobody telling you you're a good person, even though there's nobody watching and you have nothing to win or lose by doing the right thing or the wrong thing, can you still in that moment stand by your beliefs and do the right thing? That is integrity. Integrity is number one because if you have integrity, then even if you have power, even if you have money, even if you have status, you will not become corrupt because at the foundation of integrity is me living truthfully, me living honestly. So if you can hold on to integrity as a leader, you will be less tempted to become corrupt and in our modern day and age, how valuable is a uncorrupt leader? There are many examples of corrupt leaders in the world. So people who are uncorrupted in their position of leadership are very valuable and necessary to our society now. Number two, diligence.  You know what to do. But if you don't have diligence, you fall into laziness. When a leader is not diligent and falls into laziness, then no change can occur. So something that Ilchili teaches a lot is no action, no creation. If someone is diligent and they take action to create positive change, then that leader will be very effective in their role. However, if they aren't diligent and they fall into laziness, they get too comfortable. Oh, yeah, I'm in a position of power. Oh, yeah, everybody do these things for me.  That kind of leader will fall into laziness and laziness causes no change in your world and in other people's. So needless to say, when you're in a position of power, it's very important to work hard, be diligent to actively create the change that you want to see in the world. Number three, responsibility. Responsibility is number three because having a sense of responsibility gives you a sense of purpose and mission in your leadership so that all of your energy and efforts can be focused on creating a common good, something that's beyond myself, something that goes beyond the limits of my capability, beyond the limits of my awareness and consciousness. Having responsibility will pull that leader to the next level to act, think, behave beyond their comfort zone. So this sense of responsibility is what distinguishes a good leader from a great leader. The minute you take responsibility, you are carrying the lives of other people on your back, saying that with this one life, I will use all of my energy to bring good for people beyond just myself, beyond just my immediate family. It's natural instinct for somebody to take care of themselves, take care of their family. You don't have to be someone great to know that much. Even the most corrupt politicians, corrupt leaders take care of themselves and take care of their family. But that is where it stops and that's what differentiates just a good leader between them and a great leader because once you take responsibility, you see the world with bigger eyes and you see the scope of your role with more people in mind. So someone who acts beyond just the good of themselves and good of their family and now to their community and then even bigger humanity at large, that person with that sense of global responsibility will act, behave and think in a much bigger way and will feel more purpose, more mission in what they do. And as a result, more joy, more satisfaction too. Number four, courtesy.  If you don't know how to embrace love and take care of the people on your team and take care of the people that you're responsible for and all you do is walk around with arrogance. Oh, look at me. I'm a leader. I have all this power, all this money, all this status. Then you will never gain the respect of the people who are your constituents. A teaching in brain education that Ilchi likes to repeat all the time is the way you receive love from somebody. If you're somebody who wants to be loved by people, be someone who is very courteous. When you have good manners and you're a very courteous person, people will naturally love you. So a leader, because you are in a position of influence, because there are people who look up to you as a role model, more so than other people, you must become a model of courtesy, a model of good behavior and good manners because there are people who are literally looking up to you to learn subconsciously how you act, how you behave, how you talk and will mirror whatever you do. So like social media influencers, celebrities, politicians, even teachers, parents, anyone in a leadership role where you have a following, it's very important to be courteous.  But this is just my personal thought, but more so than anything, we nowadays have less emphasis on this area of courtesy. I feel like we're a little bit more rude to each other than we used to be back in the day. So let's bring back courtesy. Let's make having good manners cool again so that we can create a new generation of people who are very well behaved, have very good manners and are loving and empathetic towards each other. Number five, credit. Credit means being able to be trusted by other people. Are you trustable? Are you reliable? Can people depend on you? When you are in a leadership role, it's very important that you become someone who is trustable and dependable because that is the foundation of growing your audience, growing your following, growing your constituents, growing the people who listen to you and who take your advice. So how do I become a more trustable person? Become somebody who actually does what they say instead of throwing your words around lightly and saying things that are socially acceptable, but you don't really mean it and it's just whatever I'm just saying because I just don't know what else to do. I don't know what else to say, so I'm just saying things to fill the time or I'm saying things because I don't want to make them feel bad, but I don't really mean what I say. Become somebody whose word is something that people can trust because whatever comes out of your mouth, whatever you say, even though it might seem like such a light thing, it's actually a promise, a promise that you make with the person who is listening to you and also a promise that you make with yourself. So if you say you're going to do something by a certain time, actually do something by a certain time so that people can, through your action, see, ah, this person is trustable, this person is reliable, I can count on them. How do you think you can be a great leader if what you say, you don't do? So you say, oh yeah, I'll finish that by a certain time, but you never carry out your promises. How can people ever trust you? And if people don't trust you, how can you lead a group of people? That is why number five is credit. Be somebody who doesn't just throw their words around lightly, doesn't make empty promises. Somebody who, if they say that they're going to do something, they actually carry out that deed to the end. And actually the reason why credit is number five is because if you have all of the previous four qualities of being a leader, you will naturally gain credit by society and gain credit by those around you. If you have integrity, if you have diligence, if you have responsibility, and if you have courtesy, then naturally number five will come. You will have credit with people. So these are the five qualities of a leader that is taught by Brain Education Methods and taught by our founder, Il-Chi Li. What do you guys think? I feel like a lot of these qualities just make good common sense to have. And the thing that I really want to emphasize again is that a leader is someone who has influence over people. And because you're in that position of influencing a group of people, there comes more responsibilities, more expectations, and more criteria and requirements to carry yourself at a higher level so that whoever is watching you, just by watching how you live, they become inspired to become better, to become a bigger version of themselves. So let me know what you guys thought about this topic. Do you resonate with any of these qualities? Maybe one of them really stuck out to you or one of them is something that you can see that you need to work on. Whatever it may be, I want to hear your thoughts. So let me know in the comments below what you guys thought about the five qualities of a great leader. Thank you all so much for tuning in. I'll see you in another video very soon. Bye.


So we continue our discussion on this ordering of sets and I've got a question for you in a statement So the first question is one that when does a relation partially order a set and the total ordering is not included It's when the following holds when the following holds that R is reflexive that relation is reflexive reflexive Spelling seems to be a problem today. So R is reflexive when R is anti-symmetric Anti-symmetric that's a new one. What does that anti-symmetric mean? Well, if we have a sub a sub one and it's relation two and we have two and one That can occur if and only if if and only if a one equals a two So there's this constraint on this symmetric property So only when these two are equal do we actually have that and if they are equal obviously we set with a reflexive property And then the relation must also be transitive Transitive so transitive spelling really a problem today anyway long long long night So it must have these properties for that to partially order a set and then of course total ordering is not included Because look at the statement if a is a partially ordered set with respect to some relation Then every subset of a is at least partially ordered with respect to that same relation so remember we had the set and the set was one two three four twelve and our relation was as divides So it divides and we could write out and that there's a nice way to do this one two for 12 and that three and three to twelve That we do have that partial ordering because let me take one subset a sub one and if a sub one is one two three Well, what do I have I have one? one divides two and One divides so for the noise one divides three there Two certainly does not divide three. So we have partial ordering here. Remember we have We have a first element. We don't have a last element first element is unique We have a minimal which is one and we have two maximals which are two and three But I can have the subset. Let's make the subset a two and that subset might be one two and four And certainly I have one two and four one divide itself one divides two one divides four two divides four and two And four divides four In other words, this will be That will be totally ordered versus this partial ordering So that's why I say at least partial ordered in any of the subsets that you can take there on the same relation If the original one is partially ordered all its subset will be at least partially ordered


So, today I wanted to share with you all our cut vinyl, so if you go to a restaurant, carry out Neighborhood Store, you see these vinyl graphics similar to this one, on the front of the window, on the drive-through, maybe even in the parking lot, but I wanted to share with you a step-by-step of how we import the job, set up the job, print the job, and then trace the job out, so it'll contour, cut that job out, and we'll start right now. Alright, so we have our job all set up here, our Henry Soul Cafe. If you notice in this graphic, we already have a transparent background. That's important because when you're setting up the contour, you see that white stroke going around it, there's a white outline. Because this graphic is going on the storefront door, as well as the storefront windows, those windows are tinted, so if we didn't have that white stroke around it, it would make it harder to see, I don't know the right term, but it would not be as transparent and as vibrant if we didn't have that stroke around the graphic. So, in order to do that, to set this job up, we're going to have to do what's called a color overlay, and that's going to create a solid image that will then import into Illustrator, and then I'll show you here, in Illustrator, you would then place the file, the black image that we just created, you place that to the same parameters as the graphic that you already have on your screen, and the reason we do it as a solid black is because what we're going to do is we're going to basically do an image trace of that black image, so we're going to have that black image on the top layer, and we're going to go ahead and do an image trace there, and then after we do that, we're going to up in the top menu, hit expand, that will now create the contour line, the vector lines, and we'll use our selector tool to select the white background, and hit delete, that'll get rid of the transparent background, and then clicking on the black image, the contour image, in order for this rolling machine that we're going to run this job on, we want to set the fill to transparent, so nothing there, no color, and on the outline, we want to set it to 100% magenta, for our rolling 300V uses a 100% magenta to know where to cut, and you actually have to name that file correctly, so I'll do that here for this presentation, so you want to create a new swatch, and the name of that swatch for this machine has to be cut with a capital C, contour, and contour with a capital C, you then also on the color type, you want to make it a spot color, and then make sure 100% magenta and zero on all other colors, hit OK, obviously for this presentation, we already have that swatch already set up, so we're going to click on that swatch that we just created, the cut contour, we're going to change our stroke to 0.25, so it'll be a nice thin line, and then if I zoom in here, you can now see that magenta contour cut line all the way around our graphic, so let's go ahead and head over to the printer, let's get this job rolling, and I'll see you in a sec. Alright, so the job is now just finishing, as I said, now that it has fully printed, the machine is now feeding it back, we'll be feeding it backwards into the machine, so what it's actually doing now is cutting around all of the words, around all of the graphic, the picture, the photo, everything in the image, and guys I have to mention, this machine saves so much time, other devices you would actually have to print it with registration marks on it, when it's finished, take it off, load it into another machine, and then it would do the contour cut there, this machine is wonderful because it does it all in one, you don't have to take this one job and put it on multiple devices, you can do it all at the same time, so we're gonna let it finish cutting, and then I'll take you over to our flat table, where we'll go ahead and what's called weed out, so we're gonna peel off the excess material that we don't need, so then we can transfer that image directly onto the door and to the front windows of this business. Alright, so the print is all done, as you can see, nice, vibrant, high-gloss, and what we're gonna do here is what's called weeding, so I'm gonna take my little tweezers here that I have, these are a great little weeding tool, and we're gonna now pick out the graphic, excuse me, not the graphic, we're gonna pick out the excess material, so we're peeling off the stuff we don't need, because the contour cut all the way around this image, we're going to easily just tear away all of the excess material, you guys have a nice sharp blade on your screen, it makes weeding so easy, and then it's actually, it's so intricate when it cuts, it actually cut around these letters, so then I can go on with my tool and then just peel out the material that is basically waste, we don't need that because this is gonna be a transparent image on the front window of this cafe, you get rid of that, and then we just have a couple little areas inside some of these letters, get that out, and it just makes it so easy on the application when you're doing the install, actually on the windows, or maybe it's on the back of a vehicle, we use these vinyl adhesive vinyl material on all sorts of applications, so last little thing is down here on this S, have that, and then around the H here, there you go, now everything that is not needed is no longer here, so in order to transfer this image onto a glass storefront or the back of a vehicle or whatever it may be, we take a transfer tape and apply that transfer tape down, and the reason you want to do this is this becomes what they call the carrier, so if I had to think about it, if I had to peel just this graphic off, there would be nothing to hold it, as you see this material, but it's thin, you know it's gonna fold over and stick and it's gonna jumble up to the point where you're gonna waste that graphic, you're gonna end up having the printer cut it and weed it all over again, so by using this application tape or transfer tape, it acts as the carrier, so then you can peel, if you can imagine, peel the graphic off, and then this transfer tape acts as the bonding, so that when you put it onto the window graphic, you now have a carrier for it, in which you apply the adhesive stick to the window, and then all you have to do is peel this tape off, and now you have a nice smooth image on your substrate or window or vehicle or whatever you're applying it to, so just do one more tape, tape that down, I'll take my burnisher tool and just smooth it all out, if there's any air bubbles in between the tape and the graphic, it could affect how it transfers to this window, smooth it all out, and that's all you have, it's now on there, and so what I was referencing on transferring, so now with this tape, because it'll act as a carrier, when I go to peel this transfer tape off, the graphic now comes up with it, alright, so you don't have to worry about that graphic folding over or flipping around on you or whatever it might be, so guys look, if this was helpful, please give me a thumbs up, subscribe to my channel if you like this content, also comment below because I want to know from you guys, you know certain things that you're interested in that we might take for granted here in the print shop, because it's stuff that we do every single day, and you know, comment below, let me know if you want to learn about banners or other signage or postcards, you know, all of these things are, you know, to us we take for granted because we do it every single day, but we do understand that this content is giving you information and knowledge that you might be willing to learn more about, so talk to you guys soon, this is Chris Birch