So this is like the fifth time I've recorded this video today, I guess I'm just blowing it in multiple ways. You blew it! Yeah, you got that right. Thanks. Thanks, Adam. I, uh, yeah, I did. I blew it. I need to do something. I need to do this for myself. Listen to me, you deff. I offered you a chance when we could have done something and you blew it! If you guys remember, I made a video predicting the Nintendo Switch would sell us 3.7 million in November. Well, I wrote a book, too. A little something called Wish It Wanted, You Blow It. I was wrong. I said the PlayStation 5 would sell 2.2 million in November. Really? Yep. Let me read your next point. You wish you were a millionaire. You want more money. Guess what? You blew it. I was also wrong about that. Oh, I also said the Xbox Series X slash S would sell 2.3 million. Ha! Knock knock. Who's there? You blew it. You blew it who? You blew it bad. You know what the last page in the book is? A mirror. So you can see exactly who blew it being you. I was wrong about that. Is it going to be the last time I ever make sales predictions? Ha! No. But I was right about one thing. The Nintendo Switch was the best selling platform. Let's just look at the MPD reports. Then we'll talk about it. So this, you know, Matt Piscotella, he works for the MPD, does all the video game stuff. I got it all gathered up here. Neo Gavis says, US MPD hardware, PlayStation 5 was November's best selling hardware platform in consumer spending with all the Nintendo Switch that led the marketing unit. So PlayStation 5 achieved the highest launch month, unit and dollar sales for video game hardware in platform US history. The records were previously held by PlayStation 4. And then you go down here to DualSense, wireless controller achieved the highest launch month, unit and dollar sales for a gamepad in US history. So basically it's the best launch of a controller ever in the history of controllers. Nintendo Switch, as I said on the top. Well, Nintendo released a statement on BusinessWire and it says they sold over 1.35 million units in November. We know that PlayStation 5 had made more money, but sold less units, but also beat the PlayStation 4 record, which means it sold somewhere between 1.1 and 1.35 million for PlayStation 5, making it the best console debuted in history, in the US anyways. As for Xbox, it didn't outsell the Xbox One. Initial reports said that it outsold the Xbox One, but I think maybe that was just based on the fact that it was sold out everywhere and a presumption that they had shipped enough units. The Xbox One sold about 900,000 units during its launch month. It sold less than that. We don't have exact figures, but it looks like around 700,000 or so Xbox Series S's slash X's were sold. Again, Microsoft doesn't give sales data for their systems anymore.    You couldn't even beat the really crappy, poorly marketed Xbox One bundled with Kinect. Well, it's not that simple. You see, the Xbox One only launched in 12 territories. So there was a lot more units allocated to the United States, whereas the Xbox Series S launched in 22 territories. So when you have 10 extra territories involved, clearly you're going to have less units to go around. And that's going to impact the United States, which is your primary market. The thing is, every single unit that has come off the manufacturing lines from both Microsoft and Sony has sold out. So there really isn't bad news here. Yeah, PlayStation 5 set records. Congrats. Sony was able to get enough units made to set records. If Microsoft had produced another 300, 400,000 systems, they might have sold out as well. And the reality is, both platforms are selling out like crazy. Xbox Series S isn't suddenly selling less right now because it didn't have Halo Infinite. That is something that I've seen some people pass on on the internet. This is what happens when you don't have Exclusives. PlayStation has Exclusives. There is no Exclusives for Xbox Series X, X, X. Ergo, the PlayStation 5 is killing it in sales. But they're both selling out of everything they can make. It's just that this Microsoft is spreading their stock out around more places. That's what's really happening. So that is really what we have for the sales data. Nintendo obviously on top for two straight years now. Winning November means they have now won the NPD in terms of unit sales for 24 straight months. And it does look like PlayStation 5 and Switch are going to be like the pillars of the top tier of the gaming sales pile for at least the next year through 2021. And then we'll see what happens, how much longer Nintendo can keep this momentum of Switch going, Switch revision potentially coming out all that jazz. Microsoft, obviously we don't know what's going to happen there. We're probably not going to get a sales update, maybe ever really again. But the NPD will at least always tell us if it happens to outsell PlayStation or Nintendo, maybe because the NPD report didn't really have much for Xbox in it. So I think that in the end, everyone's probably going to win. It's just when it comes to units, Switch and PlayStation will be on top. PlayStation 5 is clearly going to be 100 million seller. Can we just say that right now? Like, I know that sounded crazy when people were talking, you know, in the early days of Switch like in 2017, oh man, this could outsell the Wii. Why it's going to outsell the Wii? The Switch is going to outsell the Wii. It's very, it would be an astronomical drop off for Switch not to outsell the Wii. But every Sony platform except for one has sold, like home console anyway, has sold over 100 million units. The one that didn't was the overpriced, poorly marketed PlayStation 3. And that sold 80 million, which would have been better than any other Nintendo home console ever released until Wii came out. So yeah, pretty confident you could just say PlayStation 5 is going to be another 100 million seller. And it's interesting because obviously Xbox Series XS-S I think has the best budget offering, not just in terms of the S, but you kind of get that game pass in there, which is really makes gaming affordable. Again, different strokes for different folks. PlayStation 5, despite some launch issues, I think every platform has a launch issue, Switch did, Xbox Series XS-S hasn't been perfect either. I mean, there's some disc errors and issues with the Series X in particular. I haven't seen it happen to my Series X, but you know, your mileage always varies on these issues. Overheating for some people with PlayStation 5. Again, it varies, most of these issues are like a very small, less than 5% of the audience. I honestly think that both platforms are going to do fantastic. All three platform holders are going to be really happy by the end of 2021. And that's that. I think that's good. Now in terms of other sales data, we got some sales data on Cyberpunk. Some people might care about that because it's maybe, besides Animal Crossing, the biggest launcher this year. I mean, some people will say Ghost of Shishima, Last of Us Part 2. Yes, obviously huge launches and really big sellers, Mile Morales, really big seller. I think Top Sale, the Top Sale selling game of November was Call of Duty Cold War. Followed by Miles Morales, followed by Sasuke Bahalla. Well, I think Sasuke Bahalla was number two, and then it was, I don't, it doesn't really matter. I mean, pandemic, things are selling well. I have some data on Cyberpunk. 8 million pre-orders, and they've already made back all the money they have spent on the game and marketing just off pre-orders. So that includes physical and digital across all platforms. Cyberpunk is a game I'm stoked to play.  That's what early performance metrics are showing. Clearly the game seems to be built for PC because there's a lot of bugs in the Series X, PlayStation 5, Xbox One, PlayStation 4. It doesn't really matter. Any home console version of it seems to be buggy, whereas the PC version seems to be running much better, even on, like, you know, not necessarily top tier cards. Like, you know, I have a 5700 XT and a Ryzen 2700 X. I've seen other people with a similar setup and the game's actually running pretty well for them without the same glitches and bugs. So it's almost like they've made it for PC, targeting PC, and then, you know, try to, you know, port it to everything else. And obviously not, not maybe shock, maybe not surprisingly, considering that PC looks like it was the main platform that PlayStation 4 and Xbox One, the base consoles are having the worst issues, the worst bugs, whereas Series X and PlayStation 5 have less bugs. But they're not technically PlayStation 5 and Series X versions of the games. They are running in backwards compatibility mode on both platforms, which means they're just the PlayStation 4 and Xbox One versions, just with, you know, the frame rate and resolutions unlocked and stuff like that. When they're actually optimized and we get the next-gen patches, they should probably run significantly better. But it's interesting to see that the majority market that's going to buy the game is having issues. And you want to know how big this game is. See, PC gaming is a big deal, but a lot of PC gamers are spread across a wide swath of games. We don't really all come together and congregate around a single game. That is unless you're cyberpunk 2077. It had over one million concurrent players on launch day on Steam, which is by far a record, by like 400,000 players or something that's a record on Steam, which is not the only way to get the game, by the way, on PC. It also had like a million or two million people watching it on Twitch on launch day. Again, I think let's have a recording right now. It's over 450,000 people watching it on Twitch. It's become instantly one of the most streamed games, most watched streamed games as well. So, yeah, big game, big sales. Big sales for everyone all around. And, yeah, as soon as I get that cash money, you know, I'll be getting that cyberpunk and doing some streams of it myself because I'm very interested in this game. I loved prior games from CD Projekt Red, so why not give this one a shot as well. All right, folks, I'm Nathaniel Roppeljantz from Nintendo Prime. I'm going to go play some Immortals Phoenix Rising because I really want to wrap that up before I dive into another big game. Cyberpunk's a significantly bigger game than Immortals. I am playing that on Switch. I'm loving the Switch version, so take that for what it is. And, yeah, I'll catch you guys in the next video.


It's my lame attempt at turning the very insulting those who can do saying into something nicer. I'm Kenneth Love. You can find me on most things at my own name because I'm not creative. And it's rarely taken. And then I was supposed to tell you to do the feedback thing, and then I noticed nobody else put it on there. So now I feel weird. But if you want to do the feedback thing, it's on there. So feel free to do that. So I work for a school named Treehouse, which is on my shirt. Sorry, I got loud there. We do online training. So you can come to us, pay a subscription fee, and go learn Python or JavaScript or C plus C sharp or whatever. I also speak at conferences, do videos, corporate training, things like that. All of that's just stuff under the teaching umbrella, kind of to give you an idea of my background. I have no training as a teacher, though. I've made it up as I've gone along so far that's worked. Hopefully it stays that way. So I'm going to try and I'm not going to talk to you about how to teach a language. I know nothing about pedagogy, so I'm not going to cover pedagogy at all. I don't know the science behind teaching. But I'm going to talk to you about what I've done, things that I think you can do. Your mileage may vary, of course. But it's things that are meant to make teaching more diverse, more inclusive, and to help prevent people from shutting down their learning while they're working with you. I also have to warn you that I'm very much a social justice warrior, so if that bothers you, now you know. You can leave if you want, but I'd rather you not. So let's talk about reaching a larger audience. I have two main sections today. One is reaching the audience, and the other one is coming. We'll get to that.  I think it all is teaching. I think it all applies all the way across. So let's talk about reassurances. The first thing you have to remember as a teacher and that people tend to forget, especially when you're out of school for a while, is that learning is hard. It's really, really hard to learn things, especially if it's your first time in that area. I get a lot of students that are coming from, they've worked in grocery stores, stocking shelves, or they've worked in warehouses, or they've been a stay-at-home mom for 20 years and now their kids are going to college and they wanna do something new. They haven't spent a lot of time learning lately, so getting back into the learning thing is hard to do. I read a blog post recently talking about how learning requires deep work. You have to be able to get into that deep concentration, right? We're programmers. We all have that groove, that zone, right? You get into the zone and then somebody comes up to you with a meeting and oh god, there just went two hours because I can't get back to that mindset. Learning requires that exact same mindset. You have to get into the spot of being able to learn. So, reminding people that they have to spend time learning. They have to practice at learning. They may have to repeat your modules or your lessons multiple times to get the thing they want to learn. Personal story, decorators, it's a big part of Python, right? I've been writing Python for about 10 years and I think a year or two ago is where I finally understood what decorators do and I still can't write one from memory. Cause, decorators are terrible. And on top of all that, none of us are born knowing how to do tree traversal, which I still can't do. I just know that's a buzz phrase. And because of that, because we all learned and we all made our way through that, we can come across as teachers as being amazing, as being these gods or goddesses or whatever of programming and students will put their teachers onto a pedestal. So, reminding them that you're still learning, that you're still a student, that you still make all these mistakes, you still have a hard time, can go a really long way in helping them approach learning from a more open mindset. And, okay, so I lied a little bit when I said I wouldn't talk about how to teach. One thing though that I'll mention is that you should encourage breaks. I've had a lot of students that, they just wanna power through it, right? I'll put out a course that's three hours long and they'll wanna do it in one sitting. Three hours doesn't seem like a long time, but if you're learning something that's brand new that you've never done before, three hours is a really, really long time. And they just wanna power through or they'll get hung up on a code challenge or a quiz and they'll spend all night trying to write three lines of code. You have to encourage these people to take breaks. You have to tell them to do it. I've actually started putting it the last year, so into my course is telling people to go outside and get a breath of fresh air.  You can process, things start to move into deeper memory, but also when you come back you will automatically have a different view of the thing just because you walked away for a little bit. It's probably as simple as going through a door with how doors mess up your memory, right? Like you gotta go do a thing, you go into the kitchen and then now you can't remember what you have to do. Same idea. All right, so this is one of the bigger ones. This one's gonna be up there for a little while. If you take nothing else away from this talk, I hope you'll take away that inclusion and representation matters. Now, I happen to be a cisgendered heterosexual white male, which means I don't really ever feel out of place in the tech world, but more and more of the tech education audience is not like me, which is wonderful, that's great. For the place that I work, a lot of our audience comes from places other than the US and even regardless of nationality, they have different genders, they have different sexual orientations, they speak different languages, they have different ethnic backgrounds or religious backgrounds. It doesn't cost me anything as a teacher, it won't cost you anything as a teacher. To use a name that's not Bob or to use a pronoun like they, to a lot of students, this can mean that they feel seen and recognized. I've got a great example of that on the next slide. And also don't expect for things to be universal.  Yeah? So a co-worker of mine who teaches Java, poor guy, he gave, he had them writing Java in a text editor, not an IDE, just a text editor, they had to type out everything. So in his course where he finally brought in IDEs, he apologized that they had to type out everything and he promised that they would get to dunk him into a dunk tank. He had multiple students from around the world write to him and ask him what's a dunk tank? In America it's fairly ubiquitous. Like you go to the fair, you see the person get dunked in the water. It's not everywhere. So you gotta worry about those little things. Something that I have a problem with and depending on what my time is, oh, not too bad this time. I talked really fast as a native English speaker, right? So when I'm saying things that I know, I can go really quick and say them very fast. As a teacher, that's really challenging. A lot of students, especially if you're teaching online, English is a second language or maybe even later language than that. Maybe they don't understand English very well at all.  As kind of a side note to this, there's a couple of really good posts out there that are things programmers believe about names, things programmers believe about dates. While they don't necessarily apply to teaching, they are very good resources for the things that you think are universal, right? Like, we think time zones make a lot of sense. Well, okay, those of you who've never played with the date time module think time zones make a lot of sense. They don't, so yeah. So speaking about the inclusion thing, this is an email I got about a year ago from a student of mine. And I've got one of these videos where I'm showing them how to do string formatting. So, you know, curly brace placeholders and you toss strings into it. And I go through a couple of them, you know, I make like Kenneth is a lumberjack and he's okay because it's Python. And on one of them I use like a, I think I use the name Sam and I use the pronoun they. And I got an email from this student, which I won't read because I always have a hard time reading it without choking up. But they felt like somebody had actually seen them just because we used a different pronoun. So, it's pretty amazing. Like your words can have a lot of impact. So, second takeaway, leave relatives out of your examples. There's really nothing, like it's so terrible hearing, you know, it's so easy a mom can do it. This actually goes the other way around too though. Because a lot of audience members that you'll get will be often a younger boy, right? Maybe a teenage boy. They may have been saddled or they may now get saddled with the idea that oh, they're a young male. They must know everything about computers or electronics. So, they feel like they have a thing to live up to. So, just don't bring that stuff up. Just leave that out, right? You can talk about your friend Sarah or Jake or whoever that did this cool thing. And don't include their relationship to somebody else. But yeah, just leave moms alone. Moms are awesome and get a lot of stuff done. Avoid for a little words. I don't mean profanity. I don't really care if you use profanity or not, but that's me. Don't say easy. Don't say just. Not a four letter word so my analogy falls down. Don't say simple. Because those are all completely relative, right? What's easy to you is not easy to me. What's simple that you understood in five minutes of review I may spend three days trying to figure out. I may never get it. Obviously. Obviously, yes, that's a great one. All these ones that we use to just, well, anybody can get that, right? And no, that's not true at all. Along that same one is jargon. I find these as being, lots of times programmer jargon is less about handily encapsulating an idea and more about excluding people who don't know that thing yet. So when you find yourself using something, something pattern or such and such paradigm, if you cannot use that, don't use that. But if you have to use that, explain it. Break it way down, right? Bring it back to the real world. Bring it back to things they've already done, things they've already experienced. And it's the same with acronyms. Shout out to Java developers, but our world is full of acronyms. That same Java teacher, co-worker of mine, has broken me with how many levels of acronyms they have. It's amazing. Does anyone know what TLA stands for? Three of them, right? It's my favorite of them. And then for my last one is that you should make mistakes. This is one that I've always done as much as I can without it seeming ridiculous. It's really hard to write code perfectly the first time, right? Typos are a huge thing we all deal with. Or you wrote a function that does something you didn't actually even need to do and it never gets called or whatever. So making those mistakes as a teacher is really good because it, again, takes you off that pedestal. It helps the students see you as just another human, just another person who's writing code. But you can go a step further and turn it into an educational experience too because then you can teach them how to handle errors. You can teach them how to read stack traces. Stack traces are maybe one of the scariest things you ever encounter in programming because most of the time they don't make a lot of sense. I know I have encountered a lot of Python stack traces that are just pointing to lines inside of Python. And I'm pretty sure I didn't break Python. So what did I do wrong? Maybe I did, I don't know, but you never know. And it also gives you a good chance to explore refactoring, showing them, look, I wrote this code. I realized now it was a mistake to write this code. How can I break this out into things that are reusable and more useful? So just, you know, natural and normal. So to prove to you that I made mistakes, I'll give you one right now, I talked about how I had mentioned telling students they should go get a snack. I've actually had somebody write in and say I shouldn't do that, that I was encouraging American style overeating. Now that part's funny. But then I thought about it for a moment. And it's also something to worry about because lots of people, depending on where they are in the world and what their financial situation is, may not have that extra food to just go and eat.  And they're like, but I don't have anything. Because they're just trying to learn. May or may not apply, I may be overthinking that. But it's something I like to consider. Also, I like that my question mark fell on the next line. That was not intentional. All right, so this next part is a little bit more teaching oriented, but I'm still not gonna go into any specifics. But let's talk about reinforcement, helping people remember the things that you've taught them. Because that's the whole point of teaching as they remember it. So one of the things that I get to use at my work a lot is coding challenges. Now these may or may not be available depending on what platform that you are using to teach somebody. But it's not that ridiculous to be like, here's a prompt, go build a script that will display a tic-tac-toe grid and let me put X's and O's on it, right? Maybe you can't grade the code they wrote, but you've given them something to go and build.  We get a lot of students that are like, hey, yeah, I went and did all the JavaScript stuff at Udemy or whatever. What do I go build now? And it's like, whatever you want. Yeah, but what do I go build? Like they need those project ideas. So giving them challenges that they can work through is good. One of the things to worry about though with coding challenges, and I'm very much guilty of this, is it's often really hard to understand what somebody else meant for you to do. So get somebody else to like QA your prompts and your ideas to make sure that it's something other people can understand to go implement. And this goes back to the English as a second language thing. We'll use a lot of stuff like, you know, write a function that gets this argument and people like, where does that argument come from?  So it's challenging. But a great idea is if you can to re-approach your challenges from different angles, have them build the tic-tac-toe thing, then have them build a tic-tac-toe thing that builds however many columns and rows they want, and then one that does different glyphs between the cells. And then later on, come back and have whole coding challenges as one step in a larger coding challenge, which helps them, when you point that out, you know, it does a little bit of a mind-blown thing of, oh my God, look how far I've come. And ultimately it's all about progress, not perfection, when it comes to coding challenges, things like that. This is where I get to the technical advice part. Try to be as accepting of answers as you can and generally judge the output of the code they wrote, not the code they wrote. Like, it doesn't really matter if they used a list comprehension inside of a function if that would have been the best way to get it. So they did a for loop, who cares, right? For loop with a pen does just fine. It works the same as a list comp. Don't judge what they used inside.  And it gives them a great way for them to explore and it gives them a good way that, especially if you're watching, like, say, on a live stream, they can code along with you or they can submit pull requests to you, which is a whole other thing that you can go through that whole process, but they can code along with you, which really helps a lot of people. On that, talked about this earlier, story problems. You remember doing story problems in math class, you know, like Juan would have 100 watermelons and then he eats 22 of them and how many does he have left?  So giving people examples that tie to things they might be doing outside of technology, right? They're stuffing envelopes. Stuffing envelopes takes a long time. What if you could automate the stuffing of envelopes? Well, you can't in the physical world, but you can with code. Here's how we would do it. Things like that are really good. It helps people to bring the abstract technology stuff back into their own real life. Something that you, again, may or may not have access to is motion and design. There's a lot of things you can say with words that are way more easily understood with visuals or a prop of some kind. Now at Treehouse, I thankfully have a team of people that do motion design. If you've seen Treehouse stuff, they do amazing motion design work. I'm glad because I can't do motion design at all, but if you have it available, it's cool. If you don't think you have it available, you might be surprised. You can do a lot in PowerPoint and Google Slides and things like that. And then if you look online, there are a lot of places that offer pre-rendered video bits, stock photos, stock animations, things like that that you can use. And going back to that dunk tank thing, we cleared all that up by just, we rented a dunk tank and then dunked Craig, and then everyone knew exactly what we meant. We also dunked me, but that video's never been posted online, so I'm not gonna fix that. Provide notes and documentation, anywhere that you can, even if it's just some markdown scripts that are just like, here's what I just did in this lesson, you can do it as well. But if you can provide them links to documentation for bigger projects that you're using, if you can provide them definitions to your acronyms and jargony phrases, if you can provide them code snippets, Jupyter notebooks are amazing for this, as are again GitHub repos where you can give them all the code and the project files. Basically anything that helps them go back to the place they were in when they were learning the thing. That's all I have. We got one minute left for questions. I will be around though, I'm here the whole weekend, so find me, talk to me, tweet at me, do whatever. If you are interested in teaching, there are literally thousands of places out there that you can do it. There's meetups in your neighborhood, if there's not, start one. There are boot camps, if there's not, maybe start one. There's tons of places online that you can teach. Treehouse is always looking for guest teachers, especially if you're doing data science stuff, come find me. Django girls, or you can go do corporate training. Corporate training pays really, really well, but you have to travel a lot, so if you don't like flying, skip that one. Yeah, and then I want to say thank you to Sly Carnival for making my slides and people at Treehouse for taking my picture. But 25 seconds, who can ask a question that fast? No? Why? Why? Why not?  So the question is if we have students create portfolios. We have a program at Treehouse that is focused on the idea of making a portfolio and having them work through a set number of projects. That's obviously not something everyone takes and obviously not something that I would encourage everyone to take. But we do encourage people to put stuff up on GitHub wherever they can, you know, post about what you're doing on Twitter or Facebook or whatever. Basically, you want to spread awareness that you are programming. All right, thank you all very much.


how to understand or how to build that mindset to interpret in the two different ways, just like in mooting their toll that with the same proposition you can think both ways, how to develop that mindset. Deliberately I am not taking the other questions today because I feel that these students, young lawyers would like to understand. I would put it this way. When a brief comes to you, normal tendency is to look to the strengths of the case. What are the strengths on which I can succeed in this case? I think that is a wrong focus. First priority should be to find out weaknesses of your case. Once you find an answer to those weaknesses, then you can locate the strengths and build on them. This leads to a very critical thinking. If you want to imagine the weaknesses of your case, which is difficult because our kids are according to the champions. There is no weakness in my child. But by looking to the weaknesses, what would be happening is you would be trying to decipher what the case of the opponent would be because the respondent's brief starts after the court admits your case. Unfortunately, we are not in CPC region. When you go to the high court or when you go to the administrative tribunal, our first opponent will be Bench itself. They will start asking, what is your right? Then comes the respondent's counsel. They will first think what the respondent's counsel would think to oppose your case. Then you draft your pleading. That is how you can make your case that much more foolproof and you would be able to understand and assimilate both points of view and you would be ready beforehand to know the opposite person's case and keep your ammunition ready to demolish. Therefore, if a respondent comes to you, think as a petitioner's counsel. If a petitioner comes to you, initially think as a respondent's counsel. That is very essential for you to first formulate your case, then develop your case, then argue the case so that judgment will be delivered somewhere near your expectation. I don't say somewhat favorable to your client, but somewhere near your expectation because what we tell the client and what we know as the strength or weakness of the case, sometimes there is a divergence. Just three days ago, I had a case under commercial. By the time half-none of the company came, I had prepared a two-page note as to why their case should be distanced. The moment they came, I gave a copy of that note to the person leading the team on behalf of the commercial enterprise and told him, go through this note and tell me if I have understood your case first. If I have not understood your case, correct me on facts. After so doing, answer me the questions I have posed with you. They are happy they know what is their case. Then to my surprise, the chief executive of that company gave me answers which satisfied my questions slightly above 50%. Then I said, I will try to argue your case because it is an argument. Don't think as a petitioner, don't think as a respondent who is your client. First think of the opposite party's case. Then you are through. That is the only way we can analyze a case. We can say that we should start developing the art of reverse thinking and then start structuring our arguments. Yes, it is more or less like reverse the auction is there now.


So, we will start with the wherever we left last time and I think I was I planned to do buffer delta network analysis now. So, this is basically buffer delta how this whole thing will be analyzed by creating a simulation model as well as analytical thing and then we will be comparing it with the delta network which was there which we had done earlier and then of course, the cross bar. So, before we do this there are certain properties which were not evident, but now I think I am opening up one by one all of them. So, first one is a lemma actually which comes from there. So, if you have carefully observed the structure you can immediately know that this statement is correct and formally there is no proof required on this. So, this is basically 2 raise power n by 2 raise power n delta network there is a unique path from each network input link. So, when I am talking about a network input link it is the whole delta network the input to that when I am talking about a switch input link that is a input to switch in any one of the stage. So, network input and switch input are two different things actually similarly it is true for the output from each in network input link to each network output link which is obvious actually now. So, this was the definition which was given for in general for Banyan network there has to be exactly one path from each input to each output and that also means that has to be unique they are not multiple options. So, this is actually going to be true from each input to output there will be 2 raise power n possible each input to all the outputs there will be exactly 2 raise power n paths which are possible because they are 2 raise power n outputs. And this is obvious because from the first one this for a binary system remember I am not talking about a by b cross bars being used in between, but this is also true even for that. So, this case which we are discussing is actually buffer delta is path length is constant yeah path length will be constant from each input to each output that is true in terms of number of hops. So, it will be exactly equal to number of a stages minus 1 those many hops will be required for transmission from any input link to any output link or whatever n stages which are there. So, if you keep on expanding their total n stages each time you are multiplying it by 2. So, from each input you are going to generate exactly 2 raise power n paths and they are exactly 2 raise power n outputs there has to be exactly one a path available between each input and output which has to be unique. So, this essentially proofs come from there is by definition. Now, second one is more important observations this I observation I have not actually told earlier. Now, this one is a theorem as per the paper I am just using the same notation. This says that you consider a switch m m is a switch actually in the intermediate stage and this can be true in general for any kind of delta network a raise power n by b raise power n delta network also it will be true. But I am giving a very general statement here in stage s k. So, stages are actually going from s 0 s 1 to s n minus 1. So, that is the way the stages are defined total n stages. So, remember stages are numbered from 0 to n minus 1 from source to destination. Since paper is about 2 raise power n is a binary system. So, I am specifying 2 raise power n by 2 is prime, but this is true in general actually this statement will be true in general and this actually helps us in making the estimates blocking probabilities and all that thing can be estimated from here itself. And as I told k can take a value, but it will never be equal to n it is always less than n. Now, what I am writing is an input to a switch not input to the network. So, when I talk about the input to the switch k is always less than minus when it is never equal to there has to be exactly n stages. So, equivalently there is going to be also an output. So, I am writing technically 2 statements in one statement. So, you can replace whatever is there in the bracket also. So, I can read let i x and i y b 2 inputs or I can say let o x and o y b be the outputs. So, this I think a very standard thing this is about the switch. So, remember you take any switch in any stage there are if it is 2 raise power n by 2 raise power n every switch is binary. So, there is one top and one bottom there are 2 links input links is similar there are 2 output links. So, you can call them i x i y and o x o y whatever it is and now I think I need to I should draw this a flatter statement is fine it is clear, but usually what will happen is there will be a switch I am actually taking a for example, 8 by 8. So, let me make an 8 by 8 and I will give an example with that and I can take any arbitrary configuration of a delta network. So, I can take a shuffle or inverse bends both are fine. So, let me take a shuffle you take any switch from anywhere you take for example, this switch this switch can reach here. So, these 2 inputs can reach to this switch. So, I call this set in capital I of x this is I of x this will be I of y. So, this can reach here. So, these 2 this set is I of y number of inputs to the network which can reach to this particular switch is this on the output side. Similarly, this is one and this is one pair this you can call o of x and this you can call o of y this set and this is smaller o of x o y. So, I am talking about these sets let I of x o of x here and I of y o of y y b the set remember is a b the set it is not individual inputs and it is not the input to the switch it is input to the network. So, that is what it means to which I x I have to change the language will lead actually. So, in this case now important observation the 3 points which are important observation the first thing is your part a which is the conclusion that your set I x or o x and I y or o y are disjoint this set and this set will not have any overlap this set and this set will also not have any overlap overlap means there is nothing common between them they are disjoint sets which is obvious because there is always a unique path from each to each output. So, what if this is the path this can reach here and none of these inputs I should be able to reach through this path because there is uniqueness property path has to be unique. So, I cannot reach to these inputs through any other path except this. So, the first fundamental principle for Bunyan network itself ensures that this is true. So, sets will be disjoint and of course, the cardinality of the set will be how much you count how many number of the stages are there before this you are in a stage s k remember. So, how many stages are there before that 0 1 2 3 k minus 1 k stages are there. So, number of elements which will be there in this I x and I y both will be 2 raise power k obviously. So, I x is equal to I y will be 2 raise power k that is a first observation and similarly they should be after k how many stages are there you have till n minus 1. So, n minus 1 minus k those many stages are there. So, you must be expanding through that. So, cardinality for that will be 2 raise power n minus 1 minus k and most important thing that if you take a set I x union I y any input which is forming which is from this input from this particular set is a union of 2 sets any input in this if that you want to connect it to O x union O y this has to pass through this switch there is another option this has to pass through this switch. So, all members which are from this set if any one of them have to be connected to any member of this set the path goes through this particular switch that is again intuitive observation it is going to be true. And of course, the last one exactly how many paths will be passing through the switch this is going to be true here you can actually put you have 2 actually k will be because this is 0 1. So, 2 raise power 1 is 2. So, membership is 2 membership is 2. So, 0 1 2 which is n minus 1. So, 2 minus 1 is 1. So, again output memberships is 2 2. So, total number of elements which you can cover in I x is 2 raise power k I y is 2 raise power k. So, total number of input link input network links which you can reach is 2 raise power k plus 1. Obviously, total number of output links which you can reach from this switch is 2 raise power again multiply this by 2 n minus 1 minus k. So, when multiply by 2 it is plus 1. So, it is n minus k total number of possible paths you multiply 2 raise power n plus 1. So, every switch will have these many paths passing through it 2 raise power n plus 1 paths will be passing through every switch and total number of paths is 2 raise power n square because total number of input is 2 raise power n output 2 raise power n multiplied those are total number of possible paths which can be there. But from each switch this much will be there and of course, you can actually compute how many switches are there based on that you multiply by that that has to be equal to 2 raise power n square. At least you understand these many paths will be passing through a switch. So, how many switches I can reach from here input side I can reach this and I can reach this this is 2 raise power k this is 2 raise power k. So, 2 into 2 raise power k actually those many I can reach. So, which is nothing but 2 raise power k plus 1 on the output side if you take one link I will be able to reach 2 raise power n minus 1 k see look at the cardinality of the set. So, from the other link also I can go to 2 raise power n minus 1 minus k total number of output links which I can reach is multiply this by 2 which is like adding 1 in the exponent. So, it is 2 raise power n minus k. So, I know these many outputs I can reach through this switch these many inputs I can reach through this switch multiply these 2 those k will be the total paths passing through the switch. So, multiply these 2 these 2 raise power n plus 1 and this is independent of the stage remember it is independent of the stage and it is true it is going to be same for all switches it is going to be same for all switches actually while total number of possible paths which are existing in a switches 2 raise power n on this side multiplied by 2 raise power n on this side. So, it is 2 raise power 2 n total number of possible paths which can exist I think this this is there is a problem here this is not correct actually this is not correct this for all permutations all permutations are not permitted. So, it has to be different one it has to be it because this is 2 each possible thing now you take from here this is one path second. So, that 2 raise power n possible thing. So, total number of possible paths which are there from this input is how many 2 raise power n and total number of inputs are 2 raise power n. So, it has to be 2 raise power n into 2 raise power n. But all possible combinations may not be simultaneously may not be permitted that is a different question see that is a simultaneous permutation thing which you are looking at not the possibility of paths, but technically every input can be connected to every output, but the moment you set up a path some other paths will not be possible. So, we were looking at that when we are using factorial method we were actually considering that particular fact that is suppose there is no connection being set when I set this path to here. So, there has to be at least one path will which will get occupied and I can do it in n possible ways I can set up the connection, but possible paths I am talking about possible paths or connect the wires or possible ways in which paths can exist that is 2 raise power n square only. So, it is 2 raise power n square n 2 2 raise power 2 n. So, each switch actually the number of paths which can pass through see all of them cannot there can be exactly 2 paths which are permitted out of these possible paths which is passing through a switches only 2 raise power n plus 1, but only 2 paths will be permitted at any point of time depending on whether switches in cross or bar state. If it is in cross state then also 2 will be permitted in bar also 2 will be permitted remaining combinations will not be allowed, but possibility of all paths is 2 raise power n plus 1 and total number of switches here is 2 raise power n whole thing divide by 2 2 raise power n minus 1. So, 2 raise power n plus 1 multiplied by 2 raise power n minus 1 will give you this only 2 raise power n 2 n actually if you look at all things in the stage. So, all possible number of paths passing through a stage has to be equal to this which has to be constant important thing number of paths which a switch can pass through a switch is independent of a stage you take whichever switch in whichever stage it is same. So, this fact actually was not explicitly told earlier. So, this comes from this now before we go for this buffered system we actually have to make certain assumptions. So, without which we cannot hold. So, let me come to the assumptions now. This way 2 for banyan network is also banyan network. Yeah, it is true for banyan networks only thing banyan network you can you have to have you cannot have that uniform tag for reaching to an output for same output depending on it put you might require a different tag. Delta networks a common tag is good enough which defines the output port. So, what is the difference between exactly banyan network and delta network except tag? There is no other difference it is only tag which is the difference. Yeah, but then if you are using banyan what I did in banyan network I have always said in a stage the packet switch are coming in they have to come from the same output ID of the switches in the previous stage. So, in this switch for example, if you look at this I am getting 0 I am also getting a 0 this is a delta. So, this is also subclass of a banyan. If this condition you do not impose it is a banyan network. So, it is not a clause or anything there is exactly one unique path which is available. So, for 2 raise power n by 2 raise power n built using 2 by 2 you require n stages obviously for banyan network there will be exactly one path by design. So, first one is is a basic assumption I think which is obvious that each packet which is going to arrive at the network input link at here. So, we are not bothered about there is going to be a interface card or not. We are simply saying this is going to there is going to be a packet which will contain a label and a payload and label will identify to which output the packet has to go. So, that is the first and foremost assumption which is obvious. So, I am not writing it. So, I just simply say each packet at input consists of a label plus payload we call it also a tag usually interface processor will insert this tag. So, I am not bothered about the interface processor usually you look at IP packet header and then based on that decide what tag has to be inserted after looking at routing table. So, this being done this is an assumption here and of course, this is important condition of maximum loading exist. So, condition of maximum loading actually means at the input there will be a buffer only one packet can be stored here. So, at the input only at the input of the input links of the network not of the switches I am talking about. So, sometimes it is possible that buffers will not be occupied here, but at the input there is exactly one buffer one packet the movement this buffer becomes empty immediately a packet will be coming that is the maximum loading condition. So, traffic is always available at the input to be pushed into the switching matrix. Each switcher or the whole network? Not a switch there will be only one buffer for one buffer for each input port each input ports there are buffers inside also in buffer delta. So, we are saying 1 into 2 is power of n minus 1 buffers are there 2 is power n buffers at this point 2 is power n buffers here 2 is power n buffers here for a buffer delta situation if it is a unbuffered delta the earlier case then these buffers are not existing buffers are only here that is a maximum loading condition when p will be equal to 1 technically and of course, the output link if there is a packet it will be almost instantaneously taken out buffer will be emptied immediately ultimately packet is hopping it is being read one after another it is not a crossbar. So, at the moment it comes here it is immediately taken out there is no readout time readout time is 0. So, that is another assumption which is taken in fact interesting part is when the buffers are going to be here. So, you will find that sometimes buffers are here, but you cannot fill this buffer even if it is empty because these two guys made a conflict and they have both wanted to come here. So, one of them was pushed here other one was left in the buffer. So, one buffer emptied so packet came in, but no packet actually moved here in this buffer. So, here the probability that buffer will be occupied will is always equal to 1 as you move across the probability that buffer will be occupied will start reducing from 1 to a smaller value as stage is increased and ultimately if I know what is the buffer occupancy probability here that is a throughput performance under maximum loading condition that is what we are going to do ultimately. And of course, the third one is is a important thing that all input links are independent of each other and they independently choose an output port there is no correlation every packet coming in is independent. So, that is the important thing now this is something new at every switch when two packets come in you have to detect whether to which outgoing port it has to go by looking at the tag a digit in the tag has to be looked and once you have identified which outgoing port it has to be read out. So, usually there will be a buffer here it means there is going to be a one packet buffer and it has to be read out. So, if they both want to go here there is a selection time and then after that it will be passed it will be read out actually to the outgoing port it will go to the next buffer unbuffer delta technically means if there is a conflict one of them will be simply dropped. So, fresh packet is always allowed to come in that is what it means a buffer delta you will keep it there you will not allow other packet to come in. So, what happens is unbuffer delta technically means if you decide this packet has to go you simply transmit do not bother about whether the buffer ahead is empty or not empty because if there is a conflict one of them will anyway will be dropped at every stage this is what is going to happen. Buffer delta will not allow this it will keep the packet in the buffer it will not drop it. So, the packet from the previous stage cannot come here assumption is a random choice here it is random choice and remember the arrival rates here are also independent why they are independent because the input set i x and i y they are disjoint and I have assumed that all inputs here are independent of each other. So, take off the independent inputs to take one set take another set and if they are disjoint sets. So, these inputs also have to be independent of each other. So, this independence actually holds through all the all the stages because this independence of this i x and i y set is true for all switches in all stages is a consequence of that actually. Sir, in buffer delta sir we are not allowing the packet to be dropped in the intermediate stages. Yes. That means, the buffer will keep on filling if you move towards left and that means the packet will be dropped at input stage. I am using maximum loading condition there is some infinite buffer at the input I am not bothered. So, you are not bothered about that there is always a packet available when the buffer empties that is a that is a maximum loading condition. So, maximum loading condition may happen at your utilization factor which is when it is less than 1 it is possible, but inside you will have unit buffers in that case. So, delay now consists of this is basically independent arrivals at the input and equiprobable selection of output. The D part is there are two parts one is known as T select there are two times other one is known as T pass. So, this is the time when the selection is made after reading the tag and second time it is T pass that is one T slot actually and when the minimum delay will happen is when I am using unbuffered delta if there are two packets if there is a conflict one of them is permitted other one is dropped. So, how much time will take from input to output? So, this T select plus T pass multiplied by number of stages that is a minimum delay which a packet can suffer. So, this multiplied by n is min D or the minimum delay in this case. Sir, what is T pass actually? T pass is in a switch when the packets are there you have to first of all select to which outgoing port these have to go. That is T select. That is that time taken is T select and after that the packets will be passed or it dropped actually one of the two. So, that is the time in which the packet will be transmitted out is like store and forward is not circuit switching remember you have to receive the complete packet then you have to transmit after reception you do not start the transmission immediately you have to make some decision. So, on time actually scale if you put if I put a time scale like this. So, you receive a packet packet reception has completed here you will take some time to decide this is T select and then you will start transmitting the packet packet is finished. So, this is your T pass usually we will assume one of them to be 0 actually ultimately for doing the simulation thing, but real life this is the way it is. See most of this cannot be analyzed in with close form solutions it has to be done through simulation actually, but for certain cases certain kind of bounds can at least be estimated that is possible. So, in case of when the network is without buffering all packets will require will be delivered in this case or they will either be dropped actually one of the two things will happen either they will pass through in this time or they will be dropped they will be lost. Sir the pass system will be less than from one stage to other stage or the difference itself is which one the difference that is the propagation time that is going to be small actually. So, you can assume it to be horizontal line almost it is like a horizontal line it is like a horizontal line this is one first previous stage next stage. So, unbuffered this is what is going to happen, but for buffering this switch now can be modeled as a patrinette. So, patrinette model is will be of this kind again I think some of you have not read patrinette. So, I will try to explain what is it because each one of you have not done a course on communication networks earlier. So, patrinette is basically you have some kind of token buffers this is basically used for finite state machine depiction is for that thing. So, if there is a token here and I connect it to something called where the decision firing will take place. So, for example, there are two tokens. So, this firing can only take place when both tokens are available if there is only one token there is no firing possible actually and when firing happens all the tokens from on the input side will get consumed and they will fill up the tokens on all outgoing sites and we then put certain restrictions this what I will do. For example, then I can put a token here I can put a token here for example. So, if there are two tokens here there are no no tokens. So, condition is has been met for the firing and I will end up in getting two tokens here which then can be further connected I can also now put a time here is known a delayed firing actually I can put a time time patrinette we call it. So, when the condition is satisfied for firing after that there will be a delay and after that delay only the token will be generated on the outgoing token holding token holders. So, I can build up I think lot of machines in this fashion. So, I had done earlier I think one of the rattling control protocol was implemented this way in the previous semester. So, that is basically the fundamental, but now let us build up the switch because I am now doing backward propagation of the buffer status in a buffer delta if the buffer is busy I have to tell the previous stage that buffer is busy you cannot send any packet to me packet only can come if the buffer is empty. So, I have to build up the patrinette model for understanding this. So, actual implementation it means there is going to be a backward signal path also we shall give the status back if you do actual implementation of buffer delta otherwise you cannot do that actually. So, I will use two colors here one for the data and one for the control path. So, data will contain now two paths and this is known as input buffer there is nothing like an output buffer because output buffer for this switch is nothing, but the input buffer of the switch in the next stage input buffer in the next stage is nothing, but the output buffer for this and then of course if a packet comes in there is some time which it takes for making the selection which outgoing port it has to go. Once the packet is here in the buffer this will cause what we call a selection process. So, there will be a we call it T select will be the period for this. Now, this packet can go to up as well as can go to down both ways. So, there will be I have to now build up technically four things after this time T select depending on now the firing will depend on outcome of firing will depend on the bit which is controlling the routing if that bit says it has to go to bottom. So, this will the both of them. So, one of them will not fire because here I am doing a selection process. So, whatever is outgoing buffer which is connected outgoing token holder which is connected to this particular firing edge will not get a token because that will depend on the selection thing bit it is a bit controlled. So, that is not explicitly mentioned, but that is how actually it is. So, this in turn will then known as output request buffer. So, they are requesting the output if this has to go to here this will time this will actually be fired up this will not be that is decide by bit if the bit controlled is 0 it will come here if it is 1 it will come here if it is 0 it will go here it will 1 it will come here. So, this output request buffer there will be four of them. So, one of these will always be active not both similarly, one of these will be active not both of them or other way around know it is possible both of them can be active both of them can be on at any point of time. If there is only a conflict then only one of them will be. So, you will keep on holding and try next time if there is a conflict basically what happens this is 0 and this is 0 both of them will come here both of them should fire up I should actually hold up output request buffer I think both models are possible I will I will explain this this is one particular part. Now, this is the input buffer for the next switch in the next stage and usually I will have the status actually coming here we call it a successor buffer empty flag if this buffer is empty this will be set actually immediately. So, they are linked together there will be two such things we will use this color for so arrows are important here same thing this will be for the previous stage whatever you are seeing here is for the next stage switch similar thing also has to happen here there is a backward propagation of the control signal because of that. So, for example, if this guy selected the upper one it will pass the packet to the outgoing thing and this buffer will become empty actually in this case. So, I have to get back this will come here in fact, this should be I like it and of course, if this one passes through instead of this one. So, this token will get consumed and I will get I will set this particular flag in this case and then they will talk back further. So, backward propagation is there. So, this T select and only one of them should be there actually both of them cannot be there. So, that I think is taken care of by this conflict resolution T select. So, if both of them want to go to the top both of them will come here only one of them will be fired up other one cannot be. So, it will remain there as it is in that state and after T select this output request will be there and this will pass through when this condition is met and as this packet is going out this buffer status flag will be reset and this can then communicate back. So, new packet can come from again in this direction usually T passes a time in which the whole packet will be passed on to this buffer this will also include usually this signal time. Backward propagation signal time will can be included in that it does not matter every time when you are forwarding a packet signal is coming back. So, include both of them combining them does not make any impact. So, that is how it will be actually modeled as this is a pattern at model for the buffer delta system actually for a 2 by 2 if it is a n by n then it is of course, going to be tricky. Now, what you are going to analyze when you want to do a performance analysis. So, in any network one of the most important thing which you need to do is throughput performance. So, you have to analyze it under maximum loading condition ideally if it is possible you keep on changing your input arrival rate or input probability of getting a packet in a slot and then do the analysis. Second thing which is important is known as turn around time. So, this time is nothing but the time difference between two instance the first instance is when the packet is arriving at the input port or input link of the network not of the switch of the network and when it reaches to the output link of the network the gap between that is what is your turn around time. So, minimum turn around time will be min D or minimum delay. Similarly, maximum throughput will be what you will get with a buffer delta unbuffered delta actually. So, that is a benchmark which can be taken and based on that you can do a create a normalization of whatever exactly you will compute. So, I think I will close now and then we have to do now basically unbuffered delta analysis first. So, this actually I could have done it earlier also, but I am doing it now along with then cross bar and then of course, the analysis of this buffer delta system and then we can basically make the comparison of the three.


As millions of faithful pilgrims endeavor the walk towards Karbala, this arba'een, the Imam al-Husayn Development and Relief Foundation hopes to supply one million cups of water to the various moaqibs that are set up with the aim of providing food, drink, and rest to the pilgrims of Aby Abdullah al-Husayn, peace be upon him. The story of Karbala highlights to us the vital importance of water and by donating towards our campaign, you will be following the example of Imam's valiant flag-bearer Al-Abbas ibn Ali, peace be upon him, whose pride it was to supply water to the thirsty camp on the day of Ashura. The cost of supplying the water is only one pound and twenty pence for a crate of sixty water cups. Each cup is two hundred milliliters. For every pilgrim who drinks from the water we provide, you will have a share in the reward in this life and in the hereafter. To donate, please visit our website at www.ihdrf.org or call our website on the number shown below. This arba'een, be a part of something spectacular. Be a part of the largest peaceful human gathering on this earth that brings happiness to the Holy Prophet Muhammad, peace be upon him, and his pure holy progeny.


There is therefore now no condemnation. Because of what Jesus Christ has done for you, you are no longer under the curse of the law, forever and ever, taken out from under the curse of the law. It's handwriting of requirements that were hanging over you. They've been nailed to the cross. The justified man stands just. He stands as righteous before the judgment bar of God. Why? Because he is clothed in the righteousness of the Lord Jesus Christ. As just in the sight of God, you are justly and righteously entitled to all the blessings, all the hopes, all the promises, all the glories. Do the one who is himself perfectly righteous.


See for comedy, I'll put them all together and they spell the best teacher. Try a camel.  And drop a chair for tonight's Camel Show, starring Bud Abbott and Luke Costello. Costello. Come over here, Costello.  Where in the world were you? Oh, I spent the evening over at Eddie Lamar's house, Abbott. Eddie calls me two or three times every week to come over and spend the evening. Yeah, doesn't her husband object? Why should he? I'm the cheapest babysitter in town. Will you talk sense, please? Hey, Lowe, I hope you're saving the money. I hope you're saving the money they pay you for mining that baby. You know, we pay our income tax March 15th. Oh, don't worry about me, Abbott. I'm loaded. I got a California bankroll. What's a California bankroll? Two singles wrapped around an orange. Oh, how can you, how can you figure income tax? You can't even count. Give me a problem. Oh, all right, all right, all right. Give me a problem, give me a problem. The post state cost a dollar a pound. How many pounds would the butcher give you for five dollars? Four pounds. That's not right. I know, but they're getting away with it. All right. Place it, Castelli, or impossible. But I'm warning you, you'd better get busy on your income tax. Do you have any surplus money, Lowe? No, I'm so broke, Abbott. I had to dump four bottles of Coca-Cola in a sink so I could click the deposit on the bottle. Well, things will be even worse if you don't file your income tax. And remember, you've got to give them an honest count. Hey, Abbott, how can you say that? I always give them an honest count. I'm patriotic, and besides that, they watch you too close. Then collect us. Oh, boy, that's pretty sharp, Abbott. I once met an income tax man on the plane. We hit four air pockets. He had his hand in every one of them. Never mind that, Castelli. We should all be glad to pay our tax, even if it does leave us a little poorer. You're right, Abbott, because no matter how poor it makes us, we're better off than some people. Like that fella I was reading about in the book the other day, Jack and the Beanstalk. What was it about? Well, this story is about a boy who was very, very poor. His name was Jack. Now, when Jack was a little bit of a boy, and how did he get the name of Jack, Lou? How did he get the name of Jack? How did he get the name of Jack? Yes. How did he get the name of Jack? He was born while his father was changing a type. All right. How did he get the name of Jack? All right, go ahead. He was fighting a little soon, Abbott.  Go ahead.  Yeah, yeah, yeah.  Oh, now, please go ahead and tell a story. Now, one morning, his mother said, Jack, we have no money, so you'll have to sell the cow. What kind was it, a heifer? Yes. It was a, what'd you say? A heifer. Was it a heifer cow? How could it be a heifer cow? It was a home cow. All right, all right. So Jack started to milk the cow. Now, just a minute. Now, wait a minute. How could he milk the cow if it was wearing red slag? He was a pickpocket. Jack was walking along the road with the cow, and he noticed that the cow looked very tired. The cow hadn't been sleeping very good. Did the cow have bags on her eyes? Did the cow have bags under her eyes? Did the cow have bags under her eyes? That's what I asked you. Abbot, you never saw a cow, did you? Oh, yeah. He walked a little farther, and then he saw a farmer was making limbered cheese. What was he making you out of? Out of doors. Ain't I your speaker? Mother, get the flea powder. I'm lousin' them up tonight. Can't tell if they get this silly story. We were talking about income tax. I'm sure you know nothing about it, so why don't you go down to the bank and get my brother to help you out with it? Oh, that reminds me of it. My mother asked me to ask you what's your brother's job in a bank? Teller. What? Teller, teller. I will tell her if you tell me. I just told you tell her. You didn't tell me nothing. You gave me the same stuff last week. All I wanted was a civilized answer. Now, wait a minute, Castella. You said your mother wants to know what my brother does in the bank. Yeah, that's right. And I said tell her. All right, I will. Now, what does he do? I just told you tell her.  Tell her, tell her. Because Abbott's brother's doing a bank. What do I say? Tell her in the bank. How can I tell her? Listen, you dummy. When I say tell her, I don't mean tell her. I mean tell her. And that's what my brother does in the bank. His job is tell her. Tell her. Now, do you get it? Oh, when you say tell her, you don't mean tell her. You mean tell her. Tell her. Now, you've got it. Now, I've got it. I don't even know what I'm talking about. Now, brother works in a bank. Now, that's right. What job did he have before the job he's got now? Oh, he was in charge of a very important department. What department? Vaults. Could I have that again? Vaults, Castella. Vaults. Vaults. Abbott, you know I can't vault. But I will try a rumba. No, no, Castella. Go with me. Play, Ennis. Play. And remember, Abbott, you win for this end. Here's the best teacher the time several months ago. Two men are lunching together. Cigarette, Ed. Oh, thanks. I guess I will. Say you've changed your brand, haven't you? I don't remember that you smoked camels before. I didn't until the wartime cigarette shortage. You know how everybody smoked whatever brand they could get, then. It sure gave you a good opportunity to compare all brands. Well, I found I liked camels so much better than the others, even my old brand, that I've been smoking camels ever since. Yes, during that wartime cigarette shortage, the experience of smoking whatever brands they could get taught millions the differences in cigarette quality. Smoker's T-Zones, that's T for taste and T for throat. Tested more cigarette brands, and they'd normally try in a lifetime. That experience taught smokers that it was camels for rich flavor and cool mildness. Camels for extra smoking pleasure. As a result, more people smoked camels than ever before. Experience is the best teacher. Try a camel. And now, while you enjoy a camel, skinny anything, if this isn't love, the whole world is crazy. If this isn't love, I'm daffed as a baby with moons all around and cows jumping over. There's something amiss, and I'll eat your hat if this isn't love. I'm feeling like the apple on top of William Pell, with this I cannot grapple because, because, you're so adorable. If this isn't love, then winter is summer. If this isn't love, my heart needs a plumber swinging on top. I'm riding on rainbow. I'm busking with bliss and I'll kiss your hand if this isn't love. If this isn't love, I'm daffed as a baby. I'm swinging on stars and I'm riding on rainbow. I'm busking with bliss and I'll kiss your hand if this isn't love. Oh, wait a minute. What could you learn from Lana Turner? More than I could learn from Morgotho Rockefeller Vanderbilt and Guggenheim. All talk says, let's go into the accountant's office. Come on. Come on, Costella. You've got to find the tax accountant. Oh, I'll ask that woman over there. Pardon me, Miss. Well, if it isn't Mr. Orbus. Oh, well, it brings you here, Miss. I came to see my accountant about the talk says I owe to the government. The government? The government? Oh, yes, Sabbath. Washington, Ducey. That's where President Troman lives.  As they say in Russian, I crochet a sea-tall bublichkas to you.  Come on, Costella. Here's the accountant to help you. Aha! George Washington said that Thomas Jefferson, sit down. I'm just concluding some business with this client and I'll be with you in a moment. And now, as I was saying, about that $100,000 that you made last Saturday afternoon, we'll have to figure out the tax on it and get in touch with you later. Nice client, that all are very. Here, Patras said to Mark Antony, what can I do for you?  Fine, fine. Now, Mr. Costella, how much money did you make last year? Well, I... Speak right up, young man. Speak right up. All this information is confidential. Well, I may tell... Tell me about it. Tell me! How much did you make? Well, it was an enormous... Come! Come! Has the cat got your tongue?  Mr. Costella, if you don't fill out your income tax form, you'll go to jail. They'll put you behind bars in Leavenworth, Kansas, or Atlanta, Georgia. Please have it. Not Georgia. Don't let them send me to Atlanta. It's terrible to be in jail in Georgia. Why? Two wardens. Well, let's get down to business now. As John Alden once said to Miles Standish, did you work last year? Yes, and I had a very steady job. Uh-huh. What did you do? I was best man at Artie Shaw's weddings. Ah! You're here at 46. By what method did you ascertain your income? Well, what was that? The man wants to know how you filled out your form last year. By eating mashed potatoes and banana splits. Your paper's over. I've got great news for you, Costella. According to these figures, you earned $495. And if you don't make any more money between now and March 15, you don't have to pay any income debt. I promise. I won't make any money. I'll work for nothing. I'll work for less than nothing. How can you do that? I'll become a public school teacher. For you, Costello, don't make another penny. Don't even feel in telephone slots or play pinball machines. Thanks, Mr. And you can send me a bill. Yes. As Josephine said to Napoleon, I will. Oh, boy, Abbott, am I happy. No income tax to pay. No problems. Yes, no, Mr. Ander. Up to now. Hello there, Mrs. Wetwash. Well, Mr. And I see they've grounded the Goodyear blimp. Oh, pardon me. It's Costello.  I just came from the doctor. He's going to change my loan. Good. Maybe this time they can put it in the middle of your face. Mrs. Wetwash, Costello just filed his personal income tax.  I'd hate to pay the tax on your corporation. My brain for that one. Mrs. Wetwash, there's no tax on abandoned property. That reminds me, Costello, I still owe you $20 for mowing the lawn last month. See, that's well. And don't take it, Costello. Remember what the man said. Oh, that's right. Mrs. Wetwash, I don't want your money. But you did the work and the money is yours. Mrs. Wetwash, you couldn't force me to take that money. Oh, now isn't that sweet? Well, if you won't take the money, then I must give you a great big kiss. Okay. You forced me. Give me the money. Goodbye, Mrs. Wetwash. Now, Costello, look what you've done. You've got $20 too much money. Hey, Abbott, don't let them put me in jail. Hi, you fellas. Well, it's skinny in this. Hey, Abbott, now, maybe I can unload the stow on him. Hey, skinny, could you use 20 bucks? No, me? I got plenty of money. I just sold an invention for automobiles that will save racehorse players a lot of money. Oh, now, wait a minute. I'll get an attachment for an automobile to save racehorse players a lot of money. Well, every time they get within seven miles of a racetrack, the car blows up. Hey, by the way, Costello, here's the $20 I borrowed from you last week. Oh, forget about that, skinny. Wait a minute. I don't want that money. You couldn't force me to take it. Okay. If you won't take the money, tell what I'll do. I'll give you a brand new routine. You say, Abbott, what does your brother do at the bank? And he says, Teller. And you say, Teller what? Wait a minute. Wait a minute. Wait a minute. Wait a minute. You forced me. Give me the money. Okay. Well, so long, fellas. Costello, you did it again. Now you've got $40 too much. Let's go out and buy $40 worth, $40 worth of what? These days, who asks? Oh. Hello. Hey, look, it's Marilyn Maxwell. Well, honey, I haven't seen you since the cocktail party last Saturday. Did you get home all right? Yes, but I woke up the next morning with big circles under my eyes. From staying up late? No, somebody said a couple of wet beer glasses down on my face. By the way, Lewis, I'm selling raffle tickets for my club. They're $5 apiece, and I won't... I'll buy eight of them. Lewis, eight would be $40. Can you afford to buy eight? I can't afford to buy any less. Now, Lewis, I appreciate your spirit, but you couldn't force me to take all that money. Marilyn Maxwell, you sell me eight tickets, or I'll kiss you right here. Okay. You force me. Here are the tickets. Camel presents lovely Marilyn Maxwell from Metro Golden Mayor, producers of The Beginning or The End. And here's Marilyn, the thing for camel fans everywhere. I believe, I believe, I believe in wishing well things the days it tells. I believe, I believe, that's only clover brain. I believe those things, I guess that are naive, but that's... No part of the country was too remote. No town was too small. For that survey of cigarette preferences among doctors was truly nationwide. Doctors in all parts of the country, doctors in all branches of medicine were included. Three leading independent research organizations asked this question of 113,597 doctors. What cigarette do you smoke, doctor? The brand named most was camel. Try a camel on your T-zone. That's T for taste and T for throat. You're proving ground for any cigarette. And you'll understand the reasons for this preference. See if your taste doesn't joyously respond to camel's rich flavor. See if your throat isn't extra happy with camel's cool mildness. See if you two don't say, yes, camel suits my T-zone to a T.  Now do you think you can keep away from making any more money till March 15th? Oh, certainly. My Uncle Artie Stepplin's taught me that a man can do anything he puts his mind to.  He hollered, I'm a butterfly, I'm a butterfly. Did he turn into a butterfly? No, but they took him away in a net. Boys, I've been looking all over for you. Have you heard the news? Yes, Marilyn, Dick Tracy captured influence. No, no, no. I mean the news about the raffle. Somebody won a lot of money. Oh, that's all right, Marilyn. I expect it to lose, but I'll be a success someday. Castella, to be a success, you've got to have brains. I've got brains. And you have to work hard. I'll work hard. And you've got to keep away from women. I'll work hard. Who cares about money? I even wish I had more money to lose. You have. Good. I'm glad to... What did you say, Marilyn? Yes, Louis. The eight chances you bought for me won the first eight prizes in the raffle. No. Here's your money. $3,000. No. No. Marilyn, what have you done to me? After what we've meant to each other, I treated you so nice. I took you out. I took you to the swellest places. Showed you good time. And now in 10 days before income taxes are due, you put me in a higher bracket. Oh, I wish I was dead. Broke. Louis, I don't understand you. You should take that $3,000 and sink it into something. A great idea. Where's the nearest river? Come, Castella. We've got to work fast. See you later, Marilyn. Yeah, but... What are we going to do next? Tell her you're in great. Yeah. You and your raffle tickets. Here, I work my fingers to the bone. I slave. I stay up night thinking how to keep you broke. Then you go behind my back and win $3,000. Why? Why do you always do these things to me? Oh, I'll say you are.  Okay, Abbott. You can have it back any time you want it. Not ever mind. Are you listening to me? You've got to get rid of that $3,000. Do you hear? But how, Abbott? Well, wait a minute. I've got it. We give $1,000 a piece to the first three people we meet. Oh, pardon me, gentlemen. I'm in distress. Will you help me out? Help you out of distress?  Game on the land. Castella, castella, please. The lady boss. You don't understand. Bad lady. Look low, low, please. When she says she's in distress, she's not talking about this dress she's in. She's talking about distress. She wants to get out of it. She must be Gypsy Rose Lee's grandmother. No, no, no, no, Castella. Can't you see this old lady is in distress? Suddenly. Well, she wants to get out of it. Don't just stand there ever. Put a screen around her. Young man, when I say distress, I don't mean distress like this dress I'm wearing. I mean distress like the distress you're in when you're in distress. Madam, where do you live? In the old lady's home. How do you like that? Now they're doing our routines in the old lady's home. Cut that out, Castella. Give the lady $1,000. $1,000? $1,000. That's right. Here it is. $1,000 right on the nose. Be happy. Come on, Castella. You've got $2,000 left. Let's get rid of it. Fast. Yes, Abbott. You're right. We got it going. All right, you guys. All right. This is a stick up. Oh, oh, burglar.  This is a stick up man. Look at his face. What's he got to be stuck up about?  He means that. What am I saying? I got no time for routines. Come on. Come on. Heist them. Mr. Burglar, will you please say heist them again? What for? My pants are falling down. Hey, is that gun a 45? Yeah. What's the matter? Couldn't you get a 46 delivery? Don't be a wise guy, you. You could rob me of the last joke if you care to. Don't be a wise guy. My trigger finger is itching. I'll scratch it for you.  Wait a minute. What are you applauding for? When he said kill us, my whole life passed before me. The Castello story starring Laurie Parks.  Come on. Come on. Hand over the dough. Hey, Castello. Castello, this is your chance to get rid of the $2,000. Oh, that's right. You're right at it. Here, Mr. Burglar, here is $2,000 for you. What? I wish I had stuck me up about five minutes ago. I could have given you $3,000. Hey, wait a minute. Wait a minute. What is this? This is a funny stick up. You seem to be happy to get rid of this dough. Why does that confederate? Oh. No, no, no, no, Mr. Castello just wants to get rid of this money. You see, that $2,000 puts him in a higher income bracket. Oh. Oh, well, that's different. Yeah. Hey, wait a minute. What's the matter? I'm just figuring me earnings for the year. Let me see. I heisted the bank in Frisco. That was $21,000. The bank in Oakland, that was $42,000. Then I stuck up the bank in Frismo Beach. You must have got a few thousand clams out of there. Yeah. Yeah, I can't pay tax on all that loot. I got to get rid of it. Yes, sir. And you'd better do it before March 15th, too. March 15th? Mm-hmm. I'm going to get rid of it right now. If that's so, it's $35,000. And I ain't going to take it. You'll take it or I'll brain you. Don't be afraid of him, Castello. Stand up to him.  You're not afraid of him. That's right. Don't be afraid of you. I've got courage you haven't got. I've got portitude you haven't got. Now I've got a lump on the head that you haven't got. Here's the money.  Hey, Abbott, what am I going to do with all this money? Give it to somebody quick. Here comes an old lady. I'll give it to her. Pardon me, madam. Would you like... Oh, there you are. I've been looking all over for you. Hey, Abbott, it's the same old lady I gave the other thousand dollars to. Yes, I am. And remember what you gave me? The thousand dollars? You said be happy? Yes. Well, be happy won the race and paid 90 to one. Abbott, here's your share. Forty-five. Abbott! President Castello, we'll be back in just a moment for Camel Cigarette. During the war, the makers of Camel Cigarette sent a total of more than 150 million free camels to our fighting men overseas. Now, free camels are sent to servicemen's hospitals instead. This week, the camels go to Veterans Hospital, Biloxi, Mississippi, U.S. Army, Percy Jones General Hospital, Battle Creek, Michigan, U.S. Naval Hospital, Houston, Texas, U.S. Marine Hospital, Lexington, Kentucky, and Veterans Hospital, Fort Logan, Colorado. Camel broadcasts go out to the United States three times a week. Our rebroadcasts are practically every area in the world where our men are still stationed and to our good neighbors in Central and South America. And now, back to Bud Abbott and Luke Castello. Well, Castello, you got to get rid of that money before March 15th. But don't worry. Next week, I'll take you out to the racetrack. And we'll bet on the big jockeys. They're bound to lose. By the way, Abbott, what is the difference between the big jockeys and the little jockeys? Wait. Okay, I waited. Now you can tell me. I just told you. You just told me what? No, I told you wait. Why do I have to wait? Why can't you tell me now? Oh, Castello, you're impossible. I'm going home. Good night, folks. Good night. Good night, everybody. I'm sorry we can't wait to hear any more about wait tonight. Abbott and Castello will be back next Thursday, so you'll have to wait for a wait until then when Luke Castello plays the pony. Mr. Pipe Smoker, it's up to you whether you're smoking just a pipe or one that's filled with pipe appeal. To fill your pipe with pipe appeal, just pack in Prince Albert and enjoy the rich, tasty flavor of Prince Albert's ripe mild tobacco. Enjoy cool, tongue-easy mildness, too, because Prince Albert is specially treated to ensure against tongue bite.  So pack your pipe with good PA for pipe appeal. And for a half hour packed with good music and fun, tune in to Prince Albert's Grand Ole Opry on Saturday night. Tap your feet and warm your heart to the American folk singing of Red Foley with his guitar. Laugh with Mini Pearl and the Dukapadooka. Remember, Grand Ole Opry, Saturday night on NBC. Be sure to tune in next week for another great Abbott and Castello show brought to you by Camel Cigarette. And remember, experience is the best teacher. Try a Camel.  C-A-M-E-L-S. Abbott and Castello will soon be seen in the new Universal International Picture Buck Privates Come Home. This is Michael Roy in Hollywood, wishing you all a pleasant good night for Camels. The Andy Cantor Show. This is NBC, the national broadcasting company.


I'm here in Ventura County where families and communities are recovering from the Thomas Fire. Many of them have come here to the local assistance center to begin the rebuilding process. Over the first 48 hours of opening, about 600 residents arrived at the local assistance center, otherwise known as the LAC. All were impacted by the Thomas Fire, now the fourth largest wildfire in state history. Particularly as a one-stop shop where people can come and get anything that they need or information that they need to help them get through this disaster. Although LACs vary based on the incident and on needs from residents, one consistency is the overwhelming support from state, federal and local agencies. And it's more also being here as an emotional support for them. I know sometimes they've come in and they're emotional and just to kind of sometimes all they need is for someone to hear them out and just hear that they are someone cares and that we are here at least to be as a support system for them. There is plenty of support available. These guys are also roaming the LACs to offer comfort in their own way. And they're here more for support for the children and for the adults too, but a lot of the children love seeing them and petting them. And for a little bit, they forget what's going on in their life. Now that the doors are open, the LAC is available to any and everyone impacted by the fire. Especially if they have questions because this is where all the experts are. And so instead of having to go to the county building and then drive to the city building, or know what other resources are available to you, we've brought them all here. So if you're impacted or you think you're impacted or you just have any questions, then this is, I think, the place to come. As the Thomas fire rages on in Santa Barbara County, Ventura residents are beginning the next phase for those allowed back into their neighborhoods and for those who lost their homes. We have buckets the city has provided that has basically for people that want to go up and go through their houses, they have coveralls that they can wear and gloves and other all the baths, all the paraphernalia that they would need to be able to go through their house and sift through it. Located in a point set of pavilion at 3451 Foothill Road, the Ventura County LAC will be open daily Monday through Saturday from 9 a.m. to 7 p.m. and on Sunday from 9 to 6. The LAC will be closed for the holidays, but will remain open until December 30th. For additional information, visit VenturaCountyRecovers.org as well as our site at wildfirerecovery.org.


Dear students, honoured graduates, when asked to make remarks at commencement before, I made serious efforts to integrate levity. Not an easy task for me. I am neither an entertainer nor a comedian. I'm in no mood to be humorous and promise to make no such effort today. It is a privilege to address you at this time of somber celebration. I acknowledge your family, friends, and loved ones for supporting you. I want to appreciate the communities, the pods, and the health bubbles that supported us, you, this institution, and me, through what has been one of the hardest academic years I have witnessed. I acknowledge my colleagues for adapting to this ever-changing professional reality and seeing the year through. I thank the Ford School staff, without whom the labor, work, and business of learning and teaching cannot happen. My own online learning curve has been steep. I had to learn a new way of being, of teaching, and new ways of knowing almost overnight. The spirit, mental, and physical, tall-exacted in order to achieve this convocation. This moment of your graduation has been high. The loss of the classroom, the loss of our personal, professional, and intrinsic relationships, as learners and teachers, has been painful to say the least. The larger social, political, environmental, and moral meta-context of our lives, both nationally and more globally, has not provided much relief. The constant live-streaming of death, violence, bigotry, lies, and dishonesty have felt relentless. The ongoing lived racist violence and trauma has been terrifying for far too many, to quote James Baldwin. I'm terrified at the moral apathy, the death of the heart of these times. I'm aware the compound social, political experiences, the stress and strain over the last years have been particularly hard on you, the graduating student body. I want to pause now and take a breath. Since you and I have the privilege of breath, still take a minute to reflect on what you, as graduates, have achieved. Give a thought to the human beings, the impressive, striking, amazing, resilient, and strong people who have walked with and alongside you.  If you cannot see them, imagine. Remember them. Together you are the wealth of this institution and the future of this world. Graduates, together you have succeeded in the midst of an extreme set of circumstance. Congratulations. Well done. This particular degree is no ordinary piece of paper. It is no ordinary degree. It signifies and symbolizes a very special achievement in adversity. Celebrate this achievement. It is extraordinary, just as you are. See the strength, the resilience that lives in you and those graduating with you. You and I are all part of a small knowledge and power elite. Be both honest and humble about this fact. Remember, arrogance is a choice to often accompanied in practice by the violent ignorance and emotive immaturity of the powerful. Wherever you go next, you are called to be both strength and humility, resilience and tenacity, fortitude and vision, except this challenge of leadership as public and civil leaders, intellectuals and academics, researchers and analysts, policymakers and change agents. You have done the extraordinary. You can do it again and you can do it again. Take what you have learned from the adversity, difficulties and losses of this time while acquiring your degrees. You are the witnesses to this time of loss, grief, mourning, of resolution, strength, of resilience and a refusal to be cowed. Importantly, as survivors, you are also the hope of tomorrow. Live that hope, be that hope, accept this generational challenge with a strength of purpose and willingness of heart make this world better than it is. Graduates, congratulations. Be as beautiful as you are. Go blue.


Thank goodness Phil Menzer is here who is a professor of informatics at Indiana University who has recently been awarded a $2 million grant to build systems that can detect online persuasion campaigns. Alright, hi. I'm Phil Menzer from Indiana University and I'm here to tell you a little bit about a few examples of through the memes that we've uncovered with this system that we have online. Please go and play with it. It's truthy.indiana.edu and Michael Nover and Bruno Goncalves are sitting there and they're among the developer of this system. So it's a website where we track memes coming out of Twitter and we try to see if we could spot some signatures based on the networks of who retweets what basically and who mentions whom. And so, you know, you could look at lots of different memes. For example, you know, here's GOP which I want to highlight because it brings up the issue that has been brought up before about echo chambers. And in a lot of memes that concern politics we observe this clearly by clustered polarized structure where people only tend to retweet other people that they agree with. So that's an interesting theme but that's not the theme of today. So let me just show you a handful of examples. Here is one that Mike pointed out to me. It's not in a realm of politics. It's probably would put it more in this sort of spam category.  So the dots are all the people and the oranges are the mentioned. So there's just a bunch of bot accounts that keep tweeting about events and mentioning other people. And so some of them then eventually retweet and they used to generate buzz about it. So this is one kind of pattern that we observe. Now let me show you a few patterns that we've observed in the run up to the last election in 2010. Definitely a truthy thing. So this looks very different. It's just two accounts and a huge edge that blue thing is just one very thick edge between these two accounts. And that means that these two accounts kept retweeting each other. They were bot accounts. They generated tens of thousands of tweets and all of them were promoting one particular candidate. And posting about this person's blogs and articles in the press and website, et cetera, et cetera. Here's another one that is not quite as hugely successful, but I think it's very scary. And it keeps going. It's AMPAT. It's a tag that is used to post material that is very scary, very graphic movies about beheadings and promotes the idea that pretty much Obama is trying to push sherry a law in the United States and things of that sort. So very interesting. Here's another example.  Freedomist.com is a website that posts fake news and it was extremely active and still is in posting all sorts of... It tends to be also another example of right wing, but we found a few examples of left wings if you're interested. But anyway, during the last elections, this was very active in marrying certain candidates and promoting other candidates. And there was about 10 bot accounts or accounts that were controlled by this one person who's also the person who owns and manages the website. And then, of course, all of them would be retweeting. And there was an interesting pattern in which they would all, at the same time, trying to target one influential user, hoping to get this one person then to believe it because it looked like it was coming from different sources. And then if that person retweeted it, then there was a chance of creating a cascade. So it was very effective. And they got around Twitter's spam detection by adding random characters at the end of bitly shortened URLs so that they look like different URLs, but in fact, they were all pointing to the same sources. So this was very effective. And a reporter actually contacted this guy and he fully admitted, said, yes, of course I'm doing it. Everybody's doing it. This is a Republican activist in Pennsylvania. And he's still there. Some of those accounts have been shut down by Twitter, but several have not. So still doing it. And the last example, it's more current. It's the hashtag Obamacare, which is one of those that are used quite actively. And it turns out that, so we have this new tool that we just released. It's sort of an interactive visualization. It's a little bit hard to see here because you can't see all the edges on this monitor. But basically you can see what are the users who are most influential that are retweeted the most. And what are the patterns of propagation? And you can sort of explore and dig down and play a little bit with the data. That particular account there that is the most active on the Obamacare meme happens to be the Heritage Foundation. And we have a few additional tools that let you see what other memes, a particular account is active promoting or discussing. Also we try to automatically detect language and do sentiment analysis and a few other things. So you're welcome to play with it. But these are just a handful of examples to get us discussing. And of course the fundamental issue is can we detect these early? Of course, as we've seen in the previous speaker and also Takima Taxas has done this work, if you can go afterwards and you have the time to do some real legwork and you can find out perhaps, oh, you know, there was this group behind this ad. It was that paid consultant or it was this corporation or it was this particular organization. But at that time very often the damage is already done as Takima has shown in his work. So the trick is can we detect it early before a lot of damage is done. And that's what we're trying to do, but we're just at the beginning of that.