Okay, we're good. So, please roll the bus for the last talk of the day. Hello, everyone. Hello. That's like that. It's really amazing to see the room full of people, even though this is the last talk, the last session, and the last day of the conference. So, thank you and welcome. So, this is a collaborative work from my colleagues and supervisor from Athens University of Economics and Business. So, all the good part you are seeing going to see today is all belongs to them. All the problems that you may say, what is that? You can point to me. And, well, let's start. So, what we are going to talk about, we will discuss about smells, code smells, and some earlier speakers have made my job a little easier. So, I'll probably skip those parts very quickly. So, we'll talk about smells. We'll talk about how people detect smells today and we'll talk about how we tried to detect smells using deep learning. And, I'll go a little bit in technical detail what we did and what kind of experimental setup we put up and what kind of results we got. This is what we are going to do. Sounds good? Great. So, before going into that, let me briefly talk about myself and give a disclaimer that I'm not really a machine learning expert like most of you. I'm a software engineering researcher. I'm completing my PhD hopefully in a couple of weeks. So, and these are the topics that I'm mostly working. So, refactoring, smells, code quality, these are the things that I mostly work with. Okay? So, let's start with the term smell. Who coined the term smell? Any guesses? No, no, you just say who coined that term. Anybody? Not really. Actually, the term came up in the book by Martin Fowler, but it was coined by Kent Beck in 1999 in the famous Martin Fowler's book, because that chapter about smell was written, written, code written by Kent Beck. And they defined that term very casually like certain structures in the code that suggest or sometimes scream for the possibility of refactoring. And later on, and especially in academic world, many people defined that much more vigorously and you can find all the definitions here. If you are interested in the smell catalog, I put together at least the known and common smell. And right now there are 264 smells belonging to different domains and subdomains of software. If you are interested, you can find that catalog here. So, let me give some examples before I delve into the detection part. So, when we talk about smells, we can classify them based on the granularity based on the scope and based on the impact that they make. So, the lowest granularity is the implementation smells which you can detect or you can sense just looking at for example, a method. So, magic number, complex method or a empty catch block, these are the kind of smells that you can spot just looking at a method. The next granularity is design smells that are mostly at a little high granularity and when that kind of smell that you can detect by looking at this and the classes abstractions and the relationship among them. So, examples are like multifaceted abstraction when a class is doing much more or realizing much more responsibility or insufficient modernization which means more commonly known as God class. When you see a software from components and the relationship among them and that granularity and you are detecting smells, you are detecting architecture smells and these examples are basically architecture smells. God component or feature concentration. Future concentration is nothing but a component is doing more than one. Scattered functionality is like a responsibility scattered across multiple components. So, how people are detecting so far smells. So, there are basically five different categories if we try to analyze all the different smell detection algorithms of the methods available today. There are basically five different categories. Matrix based, rules are heuristic based, machine learning based, optimization and history based and most common ones are matrix and heuristics and what people do normally this is what people do. So, you have source code and you prepare a source model out of that. Okay, that's not really working. Okay, so you prepare source model and source model could be anything more simpler an example could be AST, Abstract Syntax 3 and from that source model you compute matrix and then you apply a certain threshold to classify whether that smell is present in that particular method or class or component. Recently some attempts have been made to detect smells using machine learning and this is again a very high level view what people do when they want to detect smells using machine learning. So, you have source code and you again prepare some sort of a source model. You have a machine learning algorithm. Again, there are different kinds of machine learning algorithms that you may apply. There are some existing examples especially I'm talking about I mean you have existing examples that you used to train the machine learning algorithms and you have a trained model and with that trained model you actually infer a new code that whether those code snippets or code fragments can be classified as smells or non-smells. I would like to brief about what kind of existing academic work has been done on related to machine learning based approaches. So, people have used support vector machines, bios and belief networks, logistic regression and even CNN. And for first three of them the features that are the input is matrix, object oriented matrix typically. And that's basically a double edge sword. At one end you are trying to help machine learning algorithm to pick the classification feature very quickly so that the algorithm can decide whether it's a smell or non-smell but on the other hand you are reducing the search space and so that the and you are limiting the capabilities of machine learning or deep learning algorithm by limiting the capabilities of that because you are now giving only the matrix so the machine learning algorithm is bound that can do at best what that metric can represent. The metric is not representing the feature or the characteristic that is helpful in detecting that smell then well we are not going to get a good classifier. Another related problem especially in the existing work is either the validation is there are many details missing or if there are details are there then the validation is on balanced samples and in the morning also we have seen that when we have a balanced set versus in balanced set that can be really drastic change in the performance. If you are representing a realistic case in which you have maybe 1% of classes are smelly and 99% classes are non-smelly then and you apply some sort of a machine learning algorithm and your precision recall curve will be like this. So that is one of the observations that we had and with this sort of background these two major research questions that we set up for ourselves the first one is is it really feasible or possible to apply deep to detect smells and if it is possible then which method is performing superior and basically we analyze CNN and RNN and we give inputs in 1D and 2D so we basically have three models to compare CNN 1D, CNN 2D and RNN. In the second research question we are exploring whether transfer learning is feasible and what is transfer learning? Transfer learning is nothing but a technique where we exploit the commonalities between different learning tasks. So what we are going to do essentially is that we learn a model from one programming language and then we apply that trained model to another programming language. So to do this what we have done we have a research question, set of research questions that I already talked about we downloaded source code obviously our first approach, first step is to download source code and GitHub is the to go method. So we downloaded C-sharp and Java repositories. We use designite to detect smells in both kind of repositories. We use code again our own tools that we have made available. I will share all the details where you can find all these tools. So we basically we are generating code fragments from these big projects. I will go into each step individually also. So I will go a little bit in more detail. This is just I am giving an overview. And then these code fragments and the detected smell we basically classify these code fragments into positive and negative samples. And then we tokenize them. After tokenizing we prefer a pre-processing which is nothing but removing the duplicates. And then we finally give it to the deep learning models. This is the overall setup that we used. Let me go into a little bit in detail one by one. So we downloaded more than 1000 repositories containing C-sharp code. We selected 2500 and downloaded 100 repositories just for validation. We are using Java repositories just for validation. So we just downloaded 100 repositories. And how we selected these numbers? 1000 and 2500. We have 8 dimensions architecture, continuous integration, unit test and so on and so forth. So we selected all the code studies that has at least 6 out of 8 positive numbers, favorable numbers in these dimensions. And number of stars at least 5. So we discovered everything which is less than 5. With that we got these kind of numbers and we downloaded the code. The second thing we did is that for each project we need to split the big projects into individual samples, individual fragments. An individual fragment could be a method when we are detecting implementation smells and a class if we are detecting a design smell. So depending on that we basically split the code into either method or class and we put them in separate files. Same thing we did for the Java. The next step is smell detection. We use Design Night and for both Design Night C sharp for C sharp code and for Java, Design Night Java for Java code and detect all the smells that can be found in the code. And by the way Design Night is a tool which can detect 19 design smells, 7 architecture smells and 11 implementation smells and similarly Design Night Java version is also picking it up to that level. You can download these tools and again at the last slide I will share all the links to you. So we know what kind of smells a project has and we know all the code fragments. So with these two pieces of information we classify these code fragments either through a positive sample or to a negative sample. After that we use tokenizer. What tokenizer does basically takes a code fragment and converts into integer tokens, a set of integer tokens and to do that and in that context there are two important things to mention. Tokenizer defines specific ranges for specific tokens. For example all the reserved keywords are always assigned the same token and all the user defined symbols are also specified or assigned a specific set or specific range of tokens. Another fact about tokenizer is that right now it supports six languages including C-Sharp and Java which was our subject systems. It looks like this so if you have a very small method then if you tokenize this method into 1D it will look like a 1D vector and if you have a 2D matrix then it looks like something like this. And again it's important to go a little bit in more detail and see how we prepare the data, how we train the model. So that's why I'm showing you a very specific example of a smell. So this is a 5,000 approximately 5,000 number of positive samples we have for a smell and more than 311,000 negative samples. So this is the, you can see that it's a highly imbalanced data and that we split into 7030 for 74 training and 34 validation and what we do obviously we have 3,000 and we have a split 7030 and for training we take this positive part and this negative part and similarly for the evaluation we do the same. Here when we train the model we do balanced training which means that we have equal number of positive and negative numbers samples. So what we do basically we discard anything extra that we have with this particular part, the negative part so we have equal number of positive and negative only for training. For evaluation we keep the ratio as it is we don't change it and we all the results that I'm going to show it on the real world evaluation. And we selected 4 smells. All 4 smells are different kinds of smells. 3 are implementation and 1 in 1 is design. So the complex method is a method that has a high cyclometric complexity. Magic number is a numerical literal is used in the expression without explanation. MP catch block is a catch block of where the exception there is nothing written in that catch block and then multi-faceted abstraction is a kind of difficult to detect smell because and that's why we chose it because it is very different from the rest of 3 and because it has a semantic meaning you can't detect a multi-faceted abstraction just looking at the code. You need to understand what it does because what it means is the cohesion of the class is low. So these are the 4 smells that we chose and now let's talk about what we did, how, what kind of seen and what kind of model or architecture we prepared with the CNN. So you can see that we have convolution batch normalization and max pooling layers and these layers are repeated. Repeated in the sense when we experimented with number of deep layers and when we say deep layers we only refer these number of deep layers 1, 2 and 3. So if deep layer layers are equal to 3 which means we repeat these 3 times and we did a kind of a grid search which means that we chose different kind of hyperparameters and we experimented with all the permutations and combination and we used dynamic batch size depending on the input sample size. So if the number of samples are very small then we use the smaller batch size but if the number of samples are very large then we use the higher number of batches for regularization we use early stopping with patients 5 so that we don't overfit and model checkpoint along with that and some other configuration you can see here that drop out layer has a point 1 drop out and the dance has I mean the output is 32 with the Rayleigh activation and so on and so forth. Similarly for RNN we have LSTM layer and before that we have embedding layer and when we have a number of layers multiple deep lining layers we basically repeat this LSTM layer. Again we have different kind of hyperparameters and dynamic batch size and similar size, similar callbacks although we use patients too because it is very expensive to train RNN model and if time permits I'll talk about that in little bit more detail. So essentially what we did is we had two phases. In the first phase we did a grid search with the different kind of parameters configurations so we had 144 configurations for CNN and 18 for RNN and we kept validation set 20% aside for the first phase. In the second phase when we know which configuration works the best we run it again with validation 0 obviously and we performed all the experiments on VANET facility which is a Gleek supercomputing facility with one GPU and 64 GB of memory. So what we got is before I go into what we got and I said initially that we were very we started without any knowledge of machine learning so the first thing that I did is figuring out accuracy so I was computing accuracy and the first time when I run the model I got 99% accuracy and I was jumping and I told my supervisor see 99% and he looked at me hmm you have imbalanced data and huge imbalanced data obviously you'll get 99% even if your model is just predicting 1 or 0 you'll do you'll get that so then we learned that okay that's not the right way so the first thing we added is ROCAUC so this is the kind of ROCAUC we got so area under curve basically this is what we got so though it's crossing 80% in some cases and the lowest and it's 50% or something like that. However we again realized that this is not the right way to precision recall and precision recall curves and this is what we got for precision recall and basically we summarized precision recall into F1 F measure to have a comprehensive one number so you can clearly see that some of the smells these deep learning architectures that we designed can pick it up but some they can't the reason in general F1 is low because we have low precision and why we have low precision because we are predicting false positives a lot of false positives so well we can optimize that whether we want high precision and recall and probably you know better that precision and recall always have a trade off so if you want to get high precision we can have to compromise on the recall so this is what the first result and we go into little bit on detail that whether CNN versus RNN so whether CNN is better or RNN is doing better in our case and we see if you look at the maximum F1 there is hardly any difference even if we plot all the cases then also it's not decided decisively we cannot say that whether CNN is better in our case or CNN2D is better we also did comparison between CNN and RNN I would not consider this because in all the cases in all the three models the performance was very low so 0.004 or something so which means that it's not really fair to compare 0.004 and 0.006 because it's very it will bring the multi-fold difference however here when RNN can detect something it's doing very good in case of complex method it's not doing that great because probably it cannot capture the structural property of the method however in other cases in these two cases probably RNN is picking up that feature and that's why it's doing much better than the rest of the two models another experiment that we did is is it beneficial to increase number of deep layers and what we found is well for the second layer maybe we get some boost up however it starts decaying or at the best it will not change anything so again when we are applying deep learning we need to see that whether increasing number of layers whether it is beneficial or not or we are just increasing our training time this one is even interesting so I would repeat what we did here so we trained the model in C sharp however we applied the trained model to Java samples to see whether the same trained model how good it is to classify Java samples into smelly and non smelly code and this is what we found and again it is something similar trend but if you compare this direct training versus transfer training transfer learning you will see that transfer learning is doing much better so the model trained on C sharp is better in doing smells in Java code rather than its own code which is kind of surprising and I am still looking why it is happening honestly but this is what we got so this is what it is the first conclusion is that it is feasible to make deep learning model learn to detect smells obviously which smell you are detecting and the performance varies but we can do much more that is a separate thing transfer learning is also feasible we have seen that it is feasible so what it implies that if you have a very good tool for one programming language then you do not have to invent or write the tool for other programming languages at least similar programming languages you train the model and you apply the model to other programming languages and obviously there are many many possibilities for improvement we can improve performance we can add more smells different kind of smells and this is I believe this is just a start and there are many many things that can be built over it these are some relevant links as I promised you can download all the source code and data here I made it open source today morning you can download the the design for C sharp here and for academy use it is free for java it is open source project you can do whatever you want code split is again this java version is open source you can download and you can play with that and for C sharp you can download freely without any charge tokenizer is another tool that we have offered and you can again use it it is open source project feel free to use it ok thank you if you like stickers I have some stickers some fancy stickers please feel free yes ok what is the exact input to the convolution layer ok so as you can see the architecture I mean you we have defined and before giving to the deep learning model to the whole models we convert source code into tokens so yes tokens integer tokens but we have a numpy array basically which individual element is basically integer token in 1d 1d cnn 1d we have each input or for example each method is a single vector 1d vector in 2d cnn 2d we have the matrix so each input sample is a matrix 2d matrix it doesn't remove I think it's only the white spaces it removes so ah so the question is that how does the tokenizer work and how what it removes from the source code so I think it doesn't remove anything it just remove white spaces and for each for each token for example public I mean if it is a reserve word there is a set of tokens assigned to it if it is a user defined symbol then there is a range of tokens on which it will be assignment and if it is a numerical literal again it says range of tokens which will be assigned to it framework dependent code the question is how it will work on framework dependent code I don't see any difference between framework dependent code or otherwise but we have not tested it so this is a very first attempt right now maybe we can do that I don't think that will impact anything because whatever code you provide I mean anyway the scope is very limited for the scan so it's for implementation it's just one method so it's just looking that method ah ok the question is what are the challenges if we want to extend this work to more involved smells more complex smells for example scattered functionality it is difficult it is difficult because our goal was that we will not give the processed input to the model we want to give model as close to the raw source code we just tokenize it and remove the duplicates but we didn't do anything else which normally referred as feature engineering we didn't do that and that's the one of the aim we intentionally didn't do that because this is how we want to process it but if we want to if we want to go little bit in detail and more involved smells and which we have seen in the multifaceted abstraction it's not really easy the whole characteristic of the smell is not captured really and the model cannot capture even we given a training size of 10,000 cannot capture that that is one possibility but probably we need to do some sort of or mix or introduce relevant features or give relevant features to help the model to detect better when is it useful to accuracy of natural language processing above 95% right now to detect the smell when do you consider it useful at what accuracy level is the goal for the industry the question is that is it ready for the industry if I summarize it at what level accuracy is it useful for us to okay for the industry what kind of accuracy will be needed to so that we can say okay now it's ready for industry that's difficult to answer but in the morning we one of the sessions we say that the precision is really important for this kind of analysis so if we have a precision or lower precision like less than 70-80% than people will reject it very outrageously so it must have something decent precision and because this is not really a life threatening if you miss something it's not life threatening so we can compromise on precision but we cannot no sorry recall but not on precision because otherwise if precision is very high which means false positive is already high which means if precision is low then high false positive is very high which means people will say out of 10 only one is useful don't want to use it so a decent percentage could be at least 85 there is no goal rule for that but something like that


this has been a very crazy season to say the least it has been filled with a lot of ups and also a lot of downs and everything in between as well but on this special episode of NFL questions from subscribers Lamar Jackson what's going on with him well what is up with Lamar and why has he been in this funk that he's been in for so long will he get out of it can he adjust can he make changes can he play better well let's talk about this so youtube team keep it clean what's going on it's engraving here with another video and a very special episode of NFL questions from subs a series where you can ask me any NFL question you want and we answered in a video just like this if you want to be part of it you can send me an email to team keep it clean at gmail.com if you send it to the wrong email i'm not even putting it anymore no more chances for anybody you send it to the wrong email oops oh well but for the patrons for the patrons you don't have to send it via email you can send it directly on patreon shout out to all the team keep it clean patrons if you want to become a team keep it clean patron you can go to patreon.com slash engraving vids if you don't want to that's fine as well i'm not gonna love you any less trust me i appreciate y'all team keep it clean i love y'all we got a lot to go over in this episode without further ado let's just jump straight into it first question came from my boy martin and and appreciate you being a patron he said i'm confused on where our offense went first half of the season the rapids were airing the ball out making plays downfield marquis brown was on pace for a pro bowl season lamar was on pace for his second mvp he looked good passing and running but after the buy this offense has been terrible the deep ball isn't there our first round pick is getting one targeted game after watching my marquis brown this season i know he has a talent but it seems to me greg roman just refuses to use our receivers according to their skill sets what happened to keith williams and t martin's making dividends in this receiving court it was there at the beginning of the season i don't even remember the last time pro shape caught a ball why are we not using our receivers we invested so much in if your name's not hollywood brown and mark andrew's forget the ball uh we throw like four screen passes a game to hollywood brown that go nowhere it has it where it hasn't worked can we go back to using hollywood as a deep threat i understand lamar hasn't played that great either since the buy but i'm still putting most of this on greg roman i haven't been one of the ones who wants him fired but after piss bird game i'm officially on the we need to fire greg roman right now all right so we start this thing off with marvin bringing it um this the play over the past couple weeks yeah some of the play calling it's been on greg roman but i feel like right now i feel like lamar is a bigger a bigger issue uh than greg roman um you you said it in the uh in your your message and your question you said if your name ain't mark andrew's or marquis brown then you're not getting the ball and that's what it's been with lamar especially over these past couple of weeks lamar has thrown six interceptions to mark andrew's in the past two games five of them counted the sixth one if you remember on the very last drive of the game very last drive of the game lamar snapped the ball through mink of his patrick jumped it it was intended for mark andrew's with mink of his patrick jumped it interception but they said oh no no no no false start oh boy saved it said oh they saved the game with that false start i don't even remember who it was on but regardless it was intended for mark andrew's the interception at the very very beginning of the game the ravens offense is doing something that we like whoa where have these guys been they had they've been doing something at the very beginning of that stealers game that we weren't used to them doing and that's moving the ball downfield early on in a game but then lamar lamar he the hero ball the superman ball to save the day ball he can't do that all the time now i ain't i ain't got no problem with i understand him trying it but i just you you gots to be sure like you gots to be sure i remember um him making a throw like that his first season starting starting from the beginning of the year in the miami game against the dolphins um i remember same same exact thing same exact scenario pressure comes in lamar evades this guy he evades that's guy he's on his back foot he's on his back foot and he throws it it miles boykin touchdown he's wide open it's like okay let's go lamar let's go loved it appreciated it was a great play but it's situational mink of his patrick was right there and when mink of his patrick saw that he was like what is this is this easy i mean i saw how it was in the browns game last week but it is this easy right into his arms right into his arms and you know i remember we remember the flacco days one of the our biggest gripes with flacco sometimes will be those throws off of his back foot we know we knew flacco had the arm we know lamar has the arm but the throws off of your back foot is especially in the traffic if you're gonna throw in a traffic okay you're gonna throw in the traffic you're gonna take some risks sometimes but if you're throwing the traffic off of your back foot lamar's decision making recently it's it's i don't know what's going on it's been bad his decision making has been bad cannot put this all on greg roman it is not all on greg roman this is low lamar has been he's been missing open guys he's been making bad reads and he now we know what mark andrews is capable of what mark andrews is it's either it's it's hot hot and cold hot and cold it gives it is very extreme with mark andrews mark andrews either makes these tough crazy catches and these big plays and it's like let's go or he drops some easy ones and the stealers game prime example of it but with mark andrews he he isn't the only person that's out there but sometimes lamar acts like he is now we know if you have somebody that you know this person y'all y'all done been through a lot together y'all close with each other y'all done been through so much that person you start to rely on that person and you feel like man if i'm in a pinch i could just hit this person up and be like look hey i'm going through this can you help me out with this hey can you come through for me one more time with this and they do it's the same thing right now with lamar and mark andrews lamar's in a pinch he's in a bind stuff going rough he looks for 89 but the problem with that is that he locks on an 89 and a lot of other people will be open but since he's so focused on 89 because he knows what 89 can do he knows what 89 is capable of we all do but lamar will be focused on 89 and won't give other people an opportunity and those other people they could be in a position where they can they have a chance they got a shot but lamar won't even see them even on that interception on the interception of mark andrews right in the middle of the field coming in right across the middle of the field was hollywood another one of his favorite targets but lamar didn't didn't even see him didn't see him didn't look for him and again he was getting pressured but still still uh and of course we go back two weeks ago to the cleveland browns game four interceptions and literally every single one intended for mark andrews every single one every single one so it's like after the first one it's like okay whatever whatever and after the second one it's like oh okay whatever then the browns were probably like okay well okay these two were intended for mark andrews but and we know lamar loves this guy i don't know y'all let's let's just see how it plays out all right well watch mark andrews even if these other guys are on the rattle but watch mark andrews the third one boom mark andrews didn't like oh oh we honest something here we honest all right you know what every passing double mark andrews double because we know even if he's doubled lamar will still throw the ball his way double let's just double sit in the fourth one mark and now now that the fourth one was again that was just an amazing play by that safety a corner whatever he was from the that was just a fire play but still mark andrews i was talking to my guy jt early today he's talking about like how can ravens fix this how can they fix lamar right now because like i said i think he's broken right now he's broken he's broken right now and the ravens are sitting at 84 so they're still in a very good position in the afc and in the afc north of course but they gots to this this has got to be righted asap now i know most ravens fans are not expecting them to make any noise in the playoffs whatsoever a lot of ravens fans are like oh we're not even going to the playoffs i disagree with that part and again there's some ravens fans are like oh man they should just go ahead and cancel the season go ahead and just throw in the towel no no not at all i disagree with that wholeheartedly i'm never for tanking even if the team was doing bad because i feel like hey even though this team decimated by injuries decimated by decision making decimated by different things the eight and four so their biggest problems i feel like a lot of them are fixable a lot of them now with the offensive line that's the biggest issue that i feel like would be the toughest to fix i feel like that's like you're extremely limited on what you can do patrick mccary out for a couple of weeks so you just lost somebody else for a couple of weeks so i just um i'm not sure exactly what they're gonna do there but you have to counter that you have to you have to counter that and as bad as the offensive line has been this year there's still been opportunities to make place with the passing game but back to mark andrew's when i was talking to my guy jt it was like man maybe as a coach because you you could you could talk up lemar you could coach up lemar you could tell him hey this what you should do this what you shouldn't do but and this could be an addition addition by subtraction what you might have to do would be to take mark andrew's off the field so then and i'm not obviously not permanently obviously not throughout a whole game nothing like that and not for no crazy amount of time but you may have to in certain situations and but but that's that's what makes it so tricky because you know in those certain situations mark andrew's has been a go-to guy he's been a go-to guy for lemar and he's made a lot of plays over the years these two been together since their rookie years rookie years they've been in this thing together so it it will be very very tough for and this is your 54 56 million dollar man as well but like hardball anymore what you say there's no one man that's bigger than the team so there's gonna have to be times when addition by subtraction you may have to remove mark andrew's from the field take him off the field so that would force lemar to throw it to somebody else and to build that big trust with somebody else because again right now it's just been andrew's andrew's andrew's andrew's and again like we said earlier when you were when you can rely on somebody when things are going rough for you you're gonna you're gonna go to that person you because you trust them it's like oh i know they're gonna come through for me i know they are but teams they're plotting on that they're watching that so and i would i would love to see um out of all of lemar's interceptions this year i think it's like what 13 14 something like that i forget how many it is but i would like to see out of all lemar's interceptions this year how many were intended for mark andrew's i think it's 13 but we know at last i had the last two games five of them were so that's only what uh man math just messed up um that's uh eight eight left wow can't believe that took me so long but there's eight interceptions left uh and i would love to see how many of those were intended for mark andrew's but as far as lemar um he's got got to step it up because like we talked about earlier i do expect the ravens to be in the playoffs um and like i said i would rather than be in the playoffs than be okay you know what let's let's end the season all right malin huntry's out for the year you know what okay it's over no no no no because anything is possible and all you gotta do to is get in and try to make some noise i would much rather that than oh you know what uh let's just since we're not superbowl contender you know what uh since we don't look like a contender you know what oh forget the season no try still try don't give up the odds are definitely against the ravens for sure but i don't think that they should tank i don't think they should give up at all um but yeah lemar he's he got to get this thing right now um something else that needs to be done and coaching really has to get this through lemar's head throw the ball away you hear commentators say it all the time you hear it so much live to play another down live to fight another down when you force the ball and then you end up turning it over when you try to force the play you hold the ball forever forever no nothing's coming open you end up taking a sack you can end up fumbling the ball you lose field position like that and sometimes you you can lose the ball and you can lose because whenever you lose the ball whenever you turn the ball over you take away points from your team automatically because anything that was a possibility you take it away just like that immediately because you gave the ball to the other team so now your team the possibility of them scoring on whatever drive that was it's done and something that my guy can brought to my attention he was like man if the ravens uh if the ravens would have kicked the field goal on that first drive then we're not even talking about a two-point conversion at that point and i was like oh man i did not even think of that but who knows how the game would have played out but that's just something to think about the ravens at the least on that first drive the least well the least would obviously have been zero if Justin Tuggle to mr field goal but the least amount of points they could have scored if they scored would have been a field goal ravens lost this game by one but that's because they ended up going for two but they didn't even get an opportunity for three in the beginning of the game it's crazy it's a game of inches game of inches it's a game of points though too you got to score so coaching they they gots to get it through to lemar throw the ball it's okay to throw the ball away it's okay to take it in completion it's okay to throw the ball away you don't have to be a hero on every single play now i think this whole hero ball i think it comes from a good place with lemar jackson because you know that lemar he wants to do whatever he can possibly do for this team we've seen it in so many games and you can tell like you could tell by the way that lemar jackson runs you can tell when he's in that all right it's gotta be me you can tell when he's in that mode in the stealers game he was in that mode early you could you could always tell by the way that he runs always he was in that in that mode early this game and you can understand why the team decimated with injuries the team is just they they they limp in to the end of the regular season limping but lemar gots to realize if you keep turning the ball over like crazy if you put the team in bad positions they may be limping now but they're gonna be paralyzed come uh playoff time and they won't even make it to the playoffs as a matter of fact so he's got to do a better job with that throw the ball away it's okay yeah trust me at this point of the season especially with it with his touchdown interception ratio ain't none of us worried about that right now none of us saw but that brings me to something else that some people have brought up that they think lemar jackson he may be thinking about his contract he may be thinking about his bread he may be thinking about oh man i really got to show this team that i'm worth it and we know like lemar and his mom they could present it to edc and them like hey what would you do without me because we can all easily say and we everybody knows without lemar this team is not 84 they're not they are not but recently lemar has been a big issue now just because he's been playing bad recently does that mean that he's not worth a big deal oh of course not he is definitely worth that big deal because he is the ravens the raven they go through him everything goes through him everything does i was talking to one of my guys the other day and i was just like flabbergasted when he said it i thought he was just joking around at first but he wasn't he was like man i i i want a new uh i want a new coordinators maybe even a new coach and for all that i'm like okay i haven't heard plenty of people say that before then he said i want a new quarterback and i was like what excuse me and then again i thought he was trolling at first but then he named the quarterback he said uh desmond something i forgot what his name he plays for the uh the school that um that chris more went to the bear cats or the wild cat i think the bear cat something like that i forget Cincinnati yeah Cincinnati bear cats i think anyway but when he said that i was like whoa i was thinking like what hold up now like i know i know Lamar struggling right now yes but new quarterback no not at all let's fix this let's fix these issues let's let's let's correct these problems because they are things that are fixable and we saw some promise of the of the fixing in this game we saw the problems in this game too but we saw some promise with the fixing the check downs the check downs lamar jackson threw check downs to davante freeman to letavious murray was like yes there we go he and they resulted in great plays and we were like oh my goodness this this is great and it was weird seeing it but it was great seeing it so that needs to continue and obviously not every player is going to be a check down but every play also does not have to be a big play it doesn't it doesn't so coaches got to get in his ear they got to get in his head and let him know like hey lamar you ain't got to do all that not every time but again like i said going back you know he he wants to be the hero because the team relies on him so much already they already rely on him so much as is but then with all the injuries i can understand like oh man all these people hurt it's so much more that's on me now it's it's so much more that's on my plate i i got to do it so that's why he tries to play hero ball but they got to let him know like no you you don't have to do that all the time you don't like james urban we saw james urban first drive of the game that's how we knew we knew that lamar was already in his own head because the first drive of the game and they i'm i'm sure they know you know what it's it's not ravens that are capturing the game it was cbs i believe because i was about to say i'm sure they regret it showing that but no it was cbs so i'm sure they love showing it but first drive of the game james urban was like to lamar he said he told him to breathe relax chill out he told him the first drive of the game he's telling you that so you know lamar was he could already tell lamar was pressing he could tell he's been his coach for what the past like three years i believe two three years so he knows lamar so you just the hero ball it gotta stop well at least he gotta slow down a lot we know there gonna be some plays with lamar he gotta do some crazy stuff because of the offensive line because of this and that but it's it's gotta slow down now as far as uh what my god martin was saying about g-roll um with with g because he said that he feels like g-roll should be fired with greg roman um there's been a lot of frustrations and again all the offense just as a whole has just it's not been good but but right now like again i think the bigger issue is lamar right now then g-roll now um one thing that the biggest thing that i think with g-roll in my opinion is with rishad and this is on lamar too we're not feeding him when he is out there and not that you gotta force him but you gotta see me like this guy he can make some stuff happen man he can get open um but i just i'm still not understanding why they taking them off the field i know some some people have been like oh well and it was a really good point it's oh well well sammy walkins is back remember when rishad first came back sammy walkins he was out i was like ah yes that's a great point that's a really really great point um but now sammy is obviously back and he's healthy again uh so that has taken away a lot of rishad's playing time um now one thing that my god jt said if if you really i mean this this will be something right here and we will probably never know if this ever happened well maybe we would if we saw how the offense went but uh a couple things number one uh with g-roll i he talked about a couple weeks ago how with the uptempo offense he said oh you don't you don't want to do that early on in the game he basically shut down uh the ravens running the uptempo offense early on in games i didn't like that i was like uh no i disagree even when mark andrews was asked about it he's like oh yeah i would i would like to run up to uptempo in the games i would like it but then he was like oh but but but greg roman is doing a great job so mark andrews was like hey i'm i'm not i ain't talking down on greg roman at all i need my targets even though i know i'm gonna get my targets regardless because limont always looking for me but mark andrews was like nope y'all ain't getting no drama out of me nope uh uh giro's doing a great job but if they ran that uptempo offense early on in the game oh boy it would do wonders for this team and you don't got to do it chip kelly style but just incorporate that uptempo offense earlier on to just wake them up wake them up because they they come out sleep every game but back to what my guy jt was saying he said maybe for us to really see who the problem is they should let limont call it call his own game let them call his own game and giro just sort of take a backseat let limont call his own game and then see what kind of personnel limont will want what kind of tempo limont will run how that would be now we know that's not gonna happen but well you never know but it's not gonna happen they ain't gonna do that but just something to think about and i know what giro giro got he got his history he got a long history again with the bills with the 49s and whatnot i did not know that he was actually an offensive line coach for the ravens back in like 0607 what really giro gregory um but that was a cool little find from yesterday so anyway bottom line whatever the issue is uh with lamar jackson um they have to get it fixed because it's all it's stuff that can be fixed the way that he's been seeing the field or the the way he hasn't been seeing a field that's that's new that's not lamar jackson he's been seeing the field good ever since his rookie since his rookie season you could see the way that this guy looked and went through his reads and the progressions and all that you could see that from his rookie season but he ain't doing that right now he is not doing that right now so something's gotta give me to where this gets fixed and it gets fixed fast you got a division game coming up against the browns you're playing the bingos again you're playing the stealers again you're playing the packers and you're playing the rams you have a tough end of the season schedule say let me give it a sunday though so there's that hope but anyway team keep it clean i love y'all i appreciate y'all shout out to Martin for this great question um and i just oof let's hope that these issues they end up getting corrected i love y'all i appreciate y'all and just like we want these issues with lamar jackson to be we out


Pizza Pizzazz. In this three-role game, you serve as the chef, then assistant, and then customer. Will your pizza have enough pizzazz to please the customer? Today we are demonstrating a variation of the game where all three players play at the same time. Materials needed for this game include the dough, toppings, spinner, pen, and a paper clip. To begin, each player spins the spinner and writes down the number they spin. Each player is a chef and designs half a pizza using the number of shapes on the spinner. Your design can be as simple or complex as you choose. However, the chef is very busy and must leave the pizza half done for the assistant to finish. Each chef passes a half-done pizza to the player on their left. Now each player becomes the assistant. As the assistant, you now need to finish making the pizza. First, find the line of symmetry. Complete the pizza by making the empty half of the dough symmetrical to what the chef already designed. Once each assistant has finished a pizza, players pass the dough to their left again. Now roles change to that of the customer. The customer evaluates the pizza and determines if it is symmetrical. It is helpful to first discover the line of symmetry on the pizza before judging it. Once the customer judges the symmetry of the pizza, points are awarded. If the pizza is judged to be symmetrical, then the assistant for that pizza earns two points, and the chef for that pizza earns one point. If a pizza is found to not be symmetrical, the chef of that pizza earns two points, and the assistant of that pizza earns one point. That concludes round one. Players receive new dough to continue playing. Each round consists of a new shaped dough. The dough of round two is square, and for round three, it is heart-shaped. The previous steps are repeated each round. After all rounds are completed, the player with the most points wins. For helpful hints, create a visual for the line of symmetry with a pencil or a string. Another idea is to try to think of symmetry as butterfly wings when placing your toppings on either side of the line of symmetry. Some questions to think about. How can you tell where the line of symmetry is in the figure? Can toppings overlap on the pizza? How does the placement and number of toppings used by the chef make the game more challenging for the assistant? There are several possible variations for this game. One includes changing the shape of the dough. To increase the challenge, allow the chef to place toppings anywhere on the pizza. Then the assistant must define a line of symmetry and place toppings relative to that line. This game could be used to play with rotational symmetry. The chef could place toppings in only one quarter of the pizza. Then the assistant must use rotational symmetry about the center point to finish the pizza. Use the instructions link in the Regional Math Science Center website to read the game rules or re-watch this video pausing as needed. Thanks for playing!


Well, hi there.    I do have a lot of videos I've done with the crazy birds, but these are sized well to go with each other, which is what I was inspired by because they looked like they could be friends and what I did was match up the ones that I thought could make a cute little scene of some sort and relate to each other. You can also do it within the cats family or within the dogs family, but it's kind of fun as you know, kind of I want to be one of those households with dogs and cats. Right now I don't have a dog that's gonna change soon, but I'm going to zip quickly through the coloring because I really am mostly gonna talk about the colors I'm using. So I'm speeding this up to twice the normal speed. Don't really color this fast, but I'm using the E-fives in order to do the the dogs, all the E-fives family, and I'll be using grays for the cats, and I wanted to show you a bunch of things about the E-fives and that is that the color of the finished image depends on how much of each of the colors that you use on the dog. A lot of people will buy exactly the markers I use in something because they want it to look exactly like what I've colored or what you've found on somebody else's video. You want exactly those colors to replicate it. Well, I hate to tell you this, but depending on how much of each color you use, your image will come out different than somebody else's image.  In some of these others, you're going to see he's going to be, there's going to be really dark dogs. Other ones are really light dogs, but they all use the same markers. So that's one of the things that I know is frustrating to folks. They want to buy exactly the markers used by the artists that they saw on the blog or on a video, and that is why it's so hard to replicate. So unless you use the exact same amount, and it's even hard for me to replicate it from one image to the other. If I were to color the same image over and over, I often would not get the same amount of ink down, and the color would come out slightly different. So with any of these, you can add spots to customize them, and for this particular one, I don't do it throughout the rest of these, but on this little guy, I made him like my punch, who has half a gray face, and he's got some brown spots on him and stuff. So you can customize any one of these, even though a lot of the cats have stripes on them. That's just the way they're drawn. And for each one of them, I'm going to do a little bit of shading on the ground, and I'm just making the shading go out to a point, and you'll see throughout each one of them, I'm really doing the same thing, almost a line of shadow off into a light color, so that it just fades out slowly. And that's a really good way to ground something. Now these two were far apart from each other, because one looked angry, one looked scared. And otherwise, you know, I tried to relate each one of these pairs of critters. Here, the kitty is looking a little bit like, you know, scared, or I'm not really sure if he's ready to play or exactly what the deal is with that dog. But the dog is kind of looking all goofy and happy, which is what, you know, a lot of dogs and cats will have that kind of relationship where one wants to play and be goofy, and the other one just wants to sit and hiss at them. So for this kitty, I colored the whole base of the kitty in a light color. And the only time I'm using the tease throughout this, except for on this one, where I used a W marker. So you can see that you can change colors. You don't have to stay with all worms, all cools, all teas or all ends. You can use a combination of them and be just fine. They'll all work together. And it'll just give you a little browner look if you end up using a W along with your others. Now I don't recommend anybody needs to have the teas or the ends. If you get your Ws and your Cs, you're usually pretty good because you've got a good combination of light to dark in each one. And you can have some cools and some worms and be just fine for your coloring. For this guy, I decided to color the E 53 as the base color. And I do end up coloring over most of it, but at least this gets the paper wet before I get started. I did do a little bit of light shading on his snout. And then I went in with the almost darkest brown in order to create some shadows. Now on these particular stamps, the person who drew them did a lot of lines in the areas where the shadows would be for the most part. There's some of the lines that are just stray sketchy lines. They're not necessarily shadows, but I'm mostly following along where the shadows are drawn. That crosshatching is intended to be an actual shadow rather than being really a sketchy line to just add to that look. And then I'll go in with my E 55. Now E 55 can be a little on the greenish side. It can feel that way depending on what colors you use with it. So some markers will change a little bit in their flavor depending on what you're using. But with the E 53 under it, it doesn't tend to go green that way. Now here I'm using my E 55 to put down some base color. And I'm trying to leave some of that light color showing at least for the moment. So I wanted to soften out all of the areas where that E 57 was and then go over it really quickly and not scribble a whole lot. If you scribble a lot, you're going to end up losing a lot of the difference between the lights and the darks. But I am covering up most of that E 53 underneath, but having it underneath of that really helps to keep that kind of weird greenness from showing up. And again, same thing on the shadow. Just do basically a line under it. Each one of these is drawn with different shading. I'm not really worrying about a light source for this. If I were, there would be some things I could apply to the shadows. But for the most part on images like these, I'm keeping these really simple for cards. I'm just doing some quick swooshes across them with progressively lighter colors. And each one of their eyes gets a little bit of blue in it because I think that just makes them glow a little, a little nicely. My card designs are all really basic and simple. I just added them onto card bases that were black. Now these two, I decided to do some masking so that I could make the kitty standing behind the dog looking a little bit surprised. I guess they both look a little bit shocked. And on this dog, I wanted him to be kind of a whitish dog, but I wanted him to feel like he'd been out in the mud. So maybe he'd had a little bit of wrestling going on outside and been outside playing. And he was going to have a brown nose instead of a black nose because dogs can have that. Even some dogs have pink noses. And then in a few spots, some in the shadow spots and mostly along his feet and everything, I put some of the darker colors and I'll continue to add the next to the darkest and that sort of thing just to add a few spots where he's going to have some darker shades and slowly blend that with some lighter colors. But being careful not to color the whole dog, but give him enough color that he just looks like he's got some character to him. He's not just a totally light dog. And you can see he's got a different color flavor than the other dogs we've already colored just because I'm using different amounts of different ones of these E5s. But I'm getting a lot of variety. So you don't have to have a gajillion different markers in order to get some variety in your coloring. So with this kitty, I decided to see what else I could do. I'm kind of limited in the gray since I'm not adding too much in terms of browns to my kitties.  You don't really want to necessarily color a light gray. A lot of people try to color with a very light, you know, number one, number two, but your your light colors on a dark animal are going to be still dark colors. So there's a little bit of practice you need to do in making some colors that look really dark, but leave a little bit of light shining through, not a ton, but I'm just going to go over this with a T6. And you can do these same things as I said with W's or C's depending on what you have. And you can see as I go over it, it's leaving some depth, but it's adding enough color to it that it feels like it's a black cat. And again, there's the blue for the eyes and using a little bit of a zero marker to soften some of that out. And my horizontal shadows, just give it a little bit of a scribble, a little bit of softness with another color. You can use a very light gray or a colorless blender to soften that out and then put it on a card base. And when I send these, I can either come up with some really fun sentiments to write inside, even handwrite my own crazy sentiments. If one of these pictures ends up seeming like a conversation that I might have with that friend. So the reactions that these two critters are having to each other on each card are going to make for some fun cards that I can send to friends to make them smile.  So you're going to see how the same color combination can look like a very dark brown dog. I'm just going to use one of the mid tones for the lightest instead of going with one of the light ones and adding a good amount of this very dark E59 color. As I said, it's all in the amount of the color that you put in there. If you put in less, then you're going to leave more the light showing. So it's even kind of a fun exercise to take one of your animal stamps and color it, you know, 10 different times and see if you can create a light colored looking animal, a dark color looking animal, but using the same markers just so you can get an idea of how much marker you need to put down in order to make them look like what you want them to look like. Because it's always fun to be able to customize whatever you're doing on your cards to send to the recipient because if it looks like their dog or if it looks like your dog, since you're the one sending it to them, those are both great options to do when you're doing some coloring for your cards to make them look like they are custom made for your recipients. So on this kitty, I decided to make a mostly gray. So I'm using a couple different grays and adding, as I said before, shadows are in the areas where the lines are on this one so that the artist has given us some guidance and we're able to know kind of what the intention is for where the shadows would be. They may or may not match the dogs that they're with and that's okay. As long as you're doing some fun shading for the most part, most people will never notice whether it's from the left hand side or the right hand side. So don't stress out about it too much. Again, I'm adding just some really simple lines that go underneath the animals to create those shadows and literally just make them come to a point on one side or the other and soften them out in a variety of ways. You could also just put a block of color down below the animals and not really worry too much about shadows underneath of them because that would also be fun on these really simple cards. On this one, I thought I'd try to see if I could make it a very light yellowish looking dog with these same marker colors and the E50 is a very yellow pale yellow color. So it worked really well as the base color and I'm being careful in how much of a mid-tone color that I'm using for my shadows. I just didn't use the darkest color and if you look on my blog today, there's one picture that has all of these dogs and all of the colorings of these in it so that you can get the comparison of all of those E5s and how they actually work out when coloring and you can see the infinite variety of colors that you can get as you as you experiment with one set of markers. So I'm just softening it out with progressively lighter colors until they start to feel like they're kind of coming together and there is my light colored dog. So in all of these I'm adding the same colors basically for my eyes and for their little colors but if you were going to use a different card base color, I just used black card bases but you could make the colors match that. You could put some just solid simple colors in the backgrounds on these. They would be really cute. On this one I'm doing a very light colored cat so I'm using a t0 to blend out some of that little slightly darker tea color and soften it out quite a bit giving little pink ears and pink nose but then I can take that E5-0 that same color that I used on the dog, add just a little tiny bit of it to the cat and change the tone of the cat as well. So that's a really easy thing to do to change these up just a little by glazing some color over top. Now the shadow on this I started getting complex and I realized after a while I just didn't feel like being that complex because it had gotten too fussy because I was trying to figure out the tail would actually have a shadow that would come out and then I started coloring into the image and was going to have to fix that and it was like oh man I'm making a mess of it so I decided to soften everything out and just add a whole bunch of light gray to it and stretch that color out so it looked more like those shadows were blending into the ground that's already there as opposed to creating a really simple shadow and just left it at left it be and didn't fuss with trying to make that shadow shape aside from leaving that little bit of tail there so it gives you a little bit of an idea that there's a crazy shadow but without being overly fussy and here we have this little dog who looks like he's had a few drinks I'm not sure if he's spent too much time with his head in the toilet and drinking too much water or something but he's looking a little bit too happy but I'm shading him with some tea on top of that very light brown color so it gives him again another look from the same set of markers and I'm just going to add a you know a couple little strokes here and there not huge not getting too fussy with it so I still have that light color coming through give him his pink tongue and his pink ears and there's something funky in the line on the color but just color over it no one will notice and then there's this kitty who's kind of leaning leaning on to him so maybe the kitty and the doggie had themselves their own little issue their own little party who knows this could be the aftermath of way too much fun with these two little guys so originally I was thinking I'd make him a gray kitty and give him kind of a white belly because a lot of animals will have a white tummy to them and so I can do that by taking my t4 and stopping short of the belly getting all the rest of the animal filled in and then use a lighter marker to just color that in and blend that color out and even get lighter as I get down to the lower part of the belly and I thought you know I think I needed some more punch of color in this one because the dog on the right hand side was so light so I just went right over it you can always go darker with your copic coloring it's just a little tougher to go lighter than than darker so always remember that don't go too dark unless you're really ready to commit to it and here's where I was really just deciding I was going to just go ahead and commit to it it's totally fine and then I'll add some more color to just do some blending and start to to work it into the whole image and you could do all of these animals of course instead of making them in realistic colors you could do them like pinks and purples and all different kinds of fun colors to do great things the dogs are the happier ones I think so they seem to you know be a little more on the whimsical side I think I like them best out of the bird cat and dog series of these from Tim Holtz so you might see me using the dogs a little bit more because I do like them they're kind of fun and there's something more cartoony about them rather than just being kind of I don't know zombie-ish the the kitties and the birdies can feel kind of zombie-ish I guess so adding some shadows underneath of this one as well do some blending out and soften that color and for the most part if you get a little shadow underneath of the object and then add some more to the base of it you're totally good to go because people are going to be looking at those cute animals they're not going to really care about the shadows so that is my video for you for today if you're interested in anything with the crazy birds these are the three videos that I've done with the crazy birds and you're welcome to click on any one of those to check them out you can hit the subscribe button if you haven't yet done so because I put out lots of videos if you want to see more from me you can do that there's more on my blog as always and the products used here are in the description down below I'll talk to you guys later have an awesome day and thanks for watching bye


In this module we will talk about the kinetics of fed batch culture as I have already told you in our previous modules that fed batch have two strategy one with variable volume and other is fixed volume. But as concerned the kinetics of variable volume so the kinetics in variable volume discussed in detail by different scientist as reported by Dunn and Moore 1975 and pert discuss in detail in 1974 and publish his research work in 1974 1975 and 1979. So we will discuss in detail with respect to the pert 1975 and 1979. So when we talk about the fed batch with variable volume just consider a batch culture in which growth is limited by the concentration of one substrate which we called as limiting substrate. So the biomass at any point with respect to time can be discussed by this equation Xt. So the biomass concentration at time t when we want to know that either addition of the substrate is needed or not then X0 is the amount of the biomass which we add in term of inoculum. So that biomass at time not mean quantity of the inoculum and why is the yield in result of fermentation either the yield in term of biomass either yield in term of product. So SR minus S so SR here represent with the initial substrate concentration so R can be denoted by the reservoir. So the amount of the substrate present in the reservoir mean in a fermenter vessel at the time of the start. So minus S so this small s represent the residual substrate so at time t. So this whole equation see the biomass concentration is equal to the biomass concentration as an inoculum plus increase at the yield in the biomass with respect to the initial substrate concentration and the amount of the substrate which remain in the vessel at the time of the fed batch strategies. So this equation suppose we assume either our strategy that we only add the substrate when there is no more because when we say there is no more availability of the substrate in the fermentation vessel then we add that. So that is the limiting substrate when we say the limiting substrate it mean that substrate is now become fully utilized by that organism so we can say that the S is equal to 0. So in that condition when we say that S become residual substrate become 0 no more availability of that substrate. So at that say we can say that maximum growth is achieved so no more increase in the specific growth rate of the fermentation vessel. So at that time we can say that maximum biomass has already been achieved. So we can write this equation that X maximum approximately equal to Y yield and SR. So if we can say that maximum biomass can be produced until and unless a substrate is present in the medium. So if we say that X is equal to X maximum a medium is fed started so the medium feed is started such that the dilution is less than mu max. So here we would be very critical. So when we start the feeding in the fermentation vessel we say that if our fed batch fermentation is going on and we start feeding our substrate when there is no more residual substrate S not as we can say that S is equal to 0. So when we add any substrate into the medium so we have to make that what quantity of the substrate in what rate we are adding mean the flow rate of the addition. So when we add something into the fermentation two parameters are very critical one is the flow rate and other is as much as the flow rate will be then that also act as the dilution of the medium. So when you add something into the medium if there are already the amount of the biomass that has already produced that become diluted and then we can say that so at the substrate consumed so we can say that the F flow rate SR is the substrate which we are adding that will be equal to the specific growth rate that will be the biomass concentration over the yield. So you can say here that F is the flow rate and X is the total biomass concentration in the culture and Xv is basically you can say that X is the total biomass concentration with respect to the total volume of the fermentation because volume is very critical. So here we are talking about different parameter with respect to the variable volume. So as the volume will be varied then the concentration of the biomass can be varied with respect to the time t. So when we say that and we are adding some substrate and our strategy is that we only add different substrate in such a way in having the flow rate that as we add different substrate that will be utilized by that organism. So we can say that ds over dt is equal to 0. So we can say that when there is no change in the substrate concentration and we are adding the substrate in such a way that will be equal to the utilization of the utilization of the we can say that by the microorganism or the organism present in the fermentation vessel. So the addition and the utilization become equal so that we can say that so when by the utilization of the substrate and then we can say that gradually the increase of the volume what happened. So during that time there will be a continuous increase in the biomass. So when we totally calculate the change in biomass concentration so the increase in the biomass with respect to the volume that remains same. So we can say that dx over dt is equal to 0 that is only possible when our flow rate which effect on the dilution of the fermentation vessel. And the dilution inside the fermentation vessel become equal with the specific growth rate which we called as mu. So if we say that mu is equal to d means specific growth rate of the organism become equal to the dilution. So then we can say that there is no more change in the biomass concentration of the fermentation vessel. So in fat batch when such conditions then that is known as quasi steady state. So in fat batch culture this is very important state.


I think that it's just another example of some stores that can't compete against these retailers because they're selling things cheaper and also Dressform just didn't keep up with the online merchandising. People wanna buy things online and if you're gonna get people into the stores, if that's the only way to really sell most of the products which is the best way to sell because if you're seeing something there and it's in your face and it's on sale, you tend to buy it more than just ordering online for the convenience and they couldn't get people in the store. So they're closing all of the stores, I guess within the next year, 650 stores. That's a lot. And if you look at the stock, Asna, the stock is now a penny stock. It was worth over 23 back in 2014 and that was only five years ago. Now it's pennies, pennies on the dollar. It's unfortunate, but it's another example of a retailer just going under their ways. And also, you know, a lot of people that shop with Dressform and also like Chico's and so they're seeing a little bit nicer products with Chico's. The ladies are going from the dress barn to the Chico's, I think. So dress barn just couldn't make it. I'm curious about Fast Fashion and Fast Fashion's role in all this. The rise of Zara and other companies that are able to just turn the merchandise around within a matter of weeks, not seasons. How does that play into dress barns closing? Again, it goes with the whole thing. How are you gonna get people to buy? You have to get them emotionally excited or it's the price point, okay? And again, you know, buying clothes sometimes really is the excitement and the emotions of it because you think it's something that's a hot item or it's in style for in this season and you wanna buy it right away. And sometimes it's not the price. So dress barn had good prices but they have other places that have good prices too that you can buy. So the thing is they couldn't excite people to buy the fashion of that time with that specific, you know, whether it's spring, summer or fall merchandise. It just couldn't get people emotionally excited to buy their products and they couldn't compete anymore if you're looking at A versus B, the sales for the price of it, it just, people wanted to go to B versus A, which was dress barn, you understand what I'm saying? Yeah, and Melissa, the physical space of these stores still invaluable. We see a lot of online players opening up more and more physical locations. When does it make sense for a company to simply shut down versus maybe be an acquisition target for an online player?  Like they should have been looking at that when the stock was around maybe $5, $6. Now, if you look at it, you say, well, who's gonna buy it now? It's, they let it go too long. You understand what I'm saying? Like you're probably right, there was a point that they should have been looking at that that people in charge though didn't or they didn't work hard enough to find someone. And so at this point now, it's next to worthless and that's why they're shutting down the stores and it's unfortunate, you see this happen over and over and over again. They have to act faster to either improve sales or they do have to find someone to buy them out. And they didn't act fast enough. And now you're not gonna find anybody most likely. Well, one company seemingly coming back from the dead right now is Toys R Us. I'm curious how, yeah. I mean, I'm curious how you're reading into this. Is this a new, a Toys R Us for a new era or is this sort of just a little blip in the history of the company? Well, you know, you look at it, you say the timing of it, they're probably gonna come back and open up these new stores now before the holidays. So they're probably have a great sales right out of the gate for the Black Friday and the Christmas holiday sales. But again, are they going to be able to make it long term? If this is a turnover, if this is a new phase for Toys R Us, what are they gonna do differently? Now they're saying they're gonna have smaller stores that used to have 30,000 square feet. Now it's gonna be 10,000 square feet but that's still pretty big for stores. So they said they're gonna have different experiences for consumers in the stores. But I mean, if you like Toys, it was a great place to go because you had everything, everything under the sun but they couldn't make it. So again, I'm not sure that just having smaller stores is going to be enough. They need a niche, they need something. And even though they'll probably start out really well because of the time of the new stores opening with the holidays, are they gonna be able to carry up through through the periods of the year which is pretty much January till October when most retailers are slow because if they can't make it this go around then they're probably not gonna make it. Is there space in consumers' consciousness for a specialty category specific store like Toys R Us where you have Amazon, Walmart, Target, investing more in the toy space because you're going there anywhere. You're doing your entire shopping trip at these e-commerce giants. Is there even space for something like Toys R Us anymore? Sure there is. There definitely is. You've seen retailers do well that can, that again, it's the specifications you say this is a really, really special thing. I'm gonna use as an example even though this isn't about a store. I'm gonna use American Express. Now that's a bang. But American Express, people pay more because they've made it a niche like this is a special, special card. So you can have stores do that with products. This is really special, Tiffany's. Tiffany's is a good example. Tiffany's is done well and they sell jewelry and it's high end and they have some low rent things but again, it's Tiffany's. So you have to find a niche where it's about, again, it's the emotions. This is really special. I really wanna get this toy at Toys R Us or whatever it is but that's the marketing. That's the marketing department. The marketing department, the people that are running that have to find a way to make it so special that you wanna go, you wanna go to the store, you wanna buy the toy from Toys R Us versus buying it from Amazon.