The following is a presentation of TFNN. The TFNN Bull Bear Training Hour. Every trading day, live at 10 a.m. Eastern. Call now, toll free at<PHONE_NUMBER> or internationally at<PHONE_NUMBER>. The TFNN Bull Bear Training Hour. Now, Tommy and Tommy O'Brien. Welcome folks, appreciate you're growling a problem with us out here. We have the Dow industry shows up 162. Nasdaq up 49, S&P up 16.5. Gold down 13.5 dollars at 14.99 ounce. We had Silver off 30 cents, 17 dollars, 50 cents an ounce. Light Sweet Crude up 70 cents, 53 dollars, 30 cents. A barrel, notes and bonds. 10 year down 11 ticks, 130, 30 year off 31. Almost one full point, which is 32 ticks. Add 162.19 and King Dollar. King Dollar down 263 ticks, trading 98, 885. The euro is at 110. The yen is at 107.83 and the pound is at 122 to 1 US dollar. So, Musko, I heard, I heard when you did that update, that update. They sent the... The Twittersphere, it's got some action going. It's got action. Let's go over to the S&P minis. First, let's take a look at that contract and you're going to see... You get... Trump's going to meet with the vice premier tomorrow. And bottom line, we'll see what shakes out there. But what it absolutely did do to the marketplace is that it just took the S&P from 29... Well, if we take the low of 7 o'clock this morning, 7.40, 29.09 to 29.34. And as you said from last night, it's pretty intense. It is. And that tweet is only coming out, though, at 9.50. So I think it was already at 9.17, maybe? 29.17, S&P? Yeah, it was flat. The market was flat at 9.30. And then, ba-boom. Now, that's saying ba-boom, folks. Okay, this is the market that keeps giving and giving and giving. And my take is we're still on an ABC structure on the way down. So, we'll see how many traders fade this pop. There's plenty of traders that are just waiting for these pops. And, you know, we'll see how that baby shakes out. Gold. We go over to the gold contract. We take a look at that gold contract. Gold went the opposite in a flash. No two ways about that. Oh, I like it. Okay, so we've done 283,000 contracts. And what we just did here is that you just got over these prices. Okay, so that's... Under or over? Actually, over. We didn't get over to 1522, but what this has done thus far, that was pushing higher with volume. So, we have 283,000 contracts right now. Last week, you did 400,000. And we will do somewhere around that today. So, it's going to be intriguing watching the rest of this baby shake out. So, we put this intraday. And you're going to see the downdraft. No doubt about that. There's the downdraft on the tweet. And now the question is, the bulls and bears will fight it out the rest of the day. King Dala. You know what King Dala? King Dala is almost giving it up to Swann and Tom. We were down 399 ticks a little bit earlier. And then it just said, nope, I don't want to go any lower. But you can see this morning. So, your benchmark is still 98,932. Okay. High of August first. Yeah, that would get it in a lower range. The big lower range, though, is 98,371. So, watch this earlier. Because it's hard to figure out whether... I mean, the doll has just been hanging at these highs. And, you know... Yeah, it wasn't a big... Well, we don't have the volume on this anyway. So, we made a low at... What is that? It's five o'clock this morning. Yeah. And then... Yeah, as soon as you're kind of opening back up... Well, the tweet... Yeah, the tweet pushed it higher, too. The tweet was a 950. 950, okay. One bar before that, really. That was kind of sane in the market. It was pretty high. We got a 10, 12-point S&P pop on it. Nothing to dismiss. But, man, we were already 40, 45 S&P points off of that overnight low. Having to do with, you know, the news came out that they might make a currency pact. Yeah. If the rhetoric comes true, that could be true. But that's quite nifty. So, we'll see. So, the first news that sent itself was that the stocks were already falling apart and they hadn't even technically... And they were leaving the day early. Yeah. Right, right. Yeah. And I heard a great quote this morning, folks. It was someone on Bloomberg. And the guy says... He says, hey, listen, man, the way this is... And they were asking about how do you trade this mark. And he says, you know what? He was talking about fading it every time that you're going up. Okay. But he says, what we've learned, he says, no matter whether it's a positive or negative, right? One's coming out. And he says, just give it another hour or two and then there's going to be something on the other side. That's true. You know what I mean? Because none of us know what's really going on. Yeah. And the logic context, the bottom line is that, you know, my take is that once you get a war start in which we have in a huge way, it's hard to stop it. Yeah, I see what you're looking at here. So, PG and E, right? I think PG, PG, PCG. There we go. This baby here, folks, okay. It's sticking out for a long time. And, you know, I've talked about this many times for years on the year. What I kind of quite understand is, you have companies, right, that absolutely are bankrupt, right? But yet the SEC still allows them to trade, right? And so you see people that really, well, you see sophisticated people buy it, but you see a lot of people that really just don't, you know, they say, okay, well, the thing's trading. It's really down from a lot. It's the biggest electric company in the world, and all of California, right?  What they, what, you see it down 30% today. And what's happening today is that, now the judge ruled they wanted exclusive right as to how to go through their bankruptcy. And the judge was, no, that's not going to happen. The debt holders are going to come in. Yeah, they have no control anymore. Yeah, they're going to fight it out. He's going to let Elliott look at it. He's going to let Pimp Go look at it. So they're all going to come in with different proposals. And if you look at this equity, what you're going to see, which is sticking out like a thumb, is this high volume low. And it's taking a long time to get there. But, you know, that's where you're going. Look at that thing. So what is it? That's last January. Yes. I believe that's, you know, not as a discuss gaining because you can see that. I'm sure the fires really started, whether it was November, I'm not sure. That was the second time. Yeah, that's right. So that's the first fire. And that's the second fire. And you can see that high volume low is at $5 and something, right? Yes, $5.07, I believe. $5.07. And so they lost... Want me to pull the article over? Yeah, they lost that. And then on top of that, the bottom line is that you get... there's a couple other analysts that are saying it's going to go to zero now. Of course it's going to go to zero. They bankrupt. But this article here is about good. So it's just the two of them. Like you were talking about bondholders, specific investment, and Elliott, that they're going to be able to pitch their own restructuring plan alongside PG&E so they can both come up with ways the utility could deal with an estimated $30 billion in the liabilities from those fires. Right. Yeah. You know what? I don't get that. Like, what's happening is that now they get big blackouts there, right? Because they don't... They're preempted backouts. Yeah. They're dropping them purposefully to avoid, hopefully, a fire, as they say. Right. There's gusts of 70 miles an hour. Right now, as I was saying this morning. What I don't get is that, okay, you have a lot... That's the utility company in California. Then you have the people saying they want your electricity. Well, somehow you've got to make a lot of protect the utility. I mean, I understand... You can't have both, right? Right. I understand they didn't do their work and yeah, that's BK now. But something has to get in place to get electricity. Sure. And they're living in the middle of, you know, plenty of trees in California. And they have very dry weather. You know? So, they're... Yeah.  No. As in, yeah. We'll talk about it. Stay right there, folks. Tom and I will come right back down. Now is up 136. Now is next up 14. Peace up 14. We'll come right back. There is a standalone piece of software that instantly filters over 2,500 global financial markets such as stocks, ETFs, commodity futures, and forex. Headed by Steve Dahl, Taz understands that in today's technological world, the use of top flight software applications and technical analysis expertise is essential to successful trading in today's market. You also gain access to the webinar that Steve Dahl and Tom O'Brien just hosted the best way to use the Taz Profile Scanner to profit. This webinar archive is available for all subscribers immediately upon signing up. All new subscriptions also come with a 30-day money-back guarantee so you have nothing to risk. Start your subscription by visiting the front page of TFNN.com today and you'll find the Taz Profile Scanner under the Services tab. Sign up today. LLC is a firm that has extensive experience in the Tampa Bay area. Whether you're looking to sell your current property for maximum value or you're in the market for a second home or investment property, Tiger Realty has the experience across all areas of real estate in the Tampa Bay area to help buyers and sellers make the most informed decisions across all price levels. From the price you should be paying per square foot in certain up-and-coming areas to the type of cash flow investment properties are capable of creating, Tiger Real Estate can help you make the best decision when it comes to all areas of the market. Before you make one of the biggest decisions of your financial future, call Tiger Real Estate LLC today at<PHONE_NUMBER> or email us at Tiger at TFNN.com. That's<PHONE_NUMBER>. Call us today. Many of our new listeners have heard about The Tiger's Den. The Tiger's Den is a lively community where professional traders and investors can meet, exchange ideas and information in a comfortable, moderated atmosphere. Hear all of the TFNN shows plus see all the charts as they happen live and have access to archives of all of those charts. You can test drive The Tiger's Den absolutely free for 30 days and greatly enrich your knowledge of these markets and how to make your money work for you. Details on The Tiger's Den are on the front page of TFNN.com. TFNN has launched our brand new website. You can still visit us at the same TFNN.com URL. But when you do, you'll see a new and improved homepage with a much simpler navigation whether you're watching Tiger TV live in high definition or just accessing your newsletter subscriptions. We even have new pricing in six months and yearly options. Check out the new TFNN.com now and experience all the upgrades. TFNN.com educating investors. 6-6-4-8 internationally at 727-873-7-6-1-8. Folks down. That was up 165. Now it's a 50 S&Ps up 17 and a half and we are going to be having natural gas coming up in 10 minutes. That's right. So we got inventories coming out. 10.30 a.m. Eastern time every Thursday. Let's jump up and pull out the contract. We're going to go to commodities, natural gas. We're looking at the November contract. Natural gas right now trading at 225. I heard Larry talking about natural gas this morning on his program, 223. I think he was talking about quite a price tag for natural gas in terms of where it's traded. So let's see. We're trading at about 225 right now and I'm going to pull this up real quick with a little reference. So we're looking at natural gas. It looks like they're checking out the whisper numbers about 100 for an increase in the inventory for the weekly number. Survey on Blueburg 98. Either way, looking for a build of some degree. Let's see. So we're coming into the fall, right? And there's still a bill. That's interesting, isn't it? I was talking to some subscribers this morning. They were saying up in Boston, they had the heat on for the first time. It was 52, 53, and their house was in the low 50s. And they said, oh, I'm going to pop on the heat. Why not? So maybe some of that natural gas. So let's start it off with the 11 a.m. So we're trading at 225. What's nice is we have exposure from 225 in 20 cents in both directions, right? So here's our bullish spread. You go from 225 to 245. We have eight ticks, essentially, of intrinsic value, because we're trading at 225. Eight. This contract cost us $16. Not bad. Eight bucks of premium, eight bucks of value, you could call it, on the bullish side. Now, this expires at 11 a.m., so you only have 40 minutes of exposure. You're going to get the inventory numbers at 10.30, though, which is what you might only be trading. And on the bear side, you're out of the money. So a similar level of premium to snow value, right? 25, 25 bucks for both sides of it, 16 plus nine. Oh, yes, yeah. And even as this is ticking around a bit, even 17, nine. So 25, 26, 27 bucks, a buck on each side of commission. Not bad if you really get a pop in either direction, because we're kind of sitting right there. But let's see how the noons line up and if we're going to get the same price point. I think we may. So the noons, the bullish side, the 11 a.m. was 17 bucks. For the extra hour until noon, we're only looking at 18. Now this is ticking around a bit. I'm going to reset this market. So 15 to 18, here's your 11 a.m. You can buy it at 226.6 now. Really? Nothing? I want to say nothing, right? I know. But two ticks, you can see the difference of what you're, you know, you can buy it at the offer. Here's your 11 a.m. You're buying it at 226.5. And it almost looks like when you look at the bid not for just if you're looking at these screens, folks, is that like you get retail traders in the middle, baby. You know, we get five on each side and 20. They may be market makers. I think they're two different market makers is what it is. But it is nice that, you know, you get a tighter spread. Right. Because you can see that they, each market maker has a seven bid offer spread, but they're pricing it differently by a penny. Whereas this market maker is 226 by 226.7. Whereas this market maker is probably one tick higher. 226.1 by 226.8. Each of them having a seven penny spread. They want that business. But combined, you're getting the six penny spread, right? Right. So here's your noon. You'd be buying because you're at 225. And it's what's nice is this is even ticking back closer and closer to 225. We're at 225.8 to start. We're now almost at 225.4. So you'd be buying the bullish spread. 225 down to 205 on the bear side. And we'll pull it up. We're going to put in a... Yeah, we got to get that whispered. I guess. 12. So you're looking at under $30. Call it $30, $31 with commission. So you'd be looking at 30 cents of movement. Basically from right... Excuse me. 3 cents. Yeah. From 225. And let's just see where the deal is. You want to jump around? Okay. I see you. I see you. We see you getting antsy. Okay. You got two minutes and 40 seconds. Well, I just want to get that active contract. Yep. No, we're dealing with November's, right? We are. Yeah. Okay. So let's see. So we are at 225. Yep. Interesting. So it's rejected lower price out here this morning. And man, quite a run from that 275 high of mid-September. Yeah, 275. So you're down yesterday. Hasn't tested it. Okay, 220. Okay. Go ahead. I think I'm still in a little bearish situation there. Okay. So if you're bearish, right? Theoretically, you'd look for a bigger build, right? Yeah. If we have a ton of supply, people are going to be paying cheaper prices for the same amount. So you'd be looking for even a bigger. What do you think? How about 103? Want to go bigger than that? Whatever you want. Good. 103. Let's see. Okay, good. The number's 100. Whoops. Are we entering it? Not letting us for some reason. There it is. Oh, you know what? The number lock button, folks. You know it. Okay, cool. All right. We're good. And interesting, we don't go over it as much because they don't trade us heavily, but we get corn and stocks and soybean and stocks. I wonder if those will pop up in the same 10.30 a.m. eastern time. It looks like coming up on that number. And it's 10.23 right now. Now, let's just see out of curiosity if a trade's possible for the dailies because we went over the 11 a.m. expirations. Yeah. We went over the noons, right? You're looking at between 2.6 pennies to 3 pennies, depending on how much time you want, but I think the dailies may line up. Nope. Okay. So right away, the first dailies, you only have 220. And I wonder if the 2.30s are going to be any different now. So the 11 a.m. Expiration and noons, they both have 225. And we'll see what happens. We're six minutes away from that number. You're going to love it. Yeah? Our phone number is<PHONE_NUMBER>. Right now, let's see. Once you got that pop, we'll see the bulls and bears are fighting it out right at that level. Yeah, hanging tough. And I think I even have the tweet, why don't we pull it up just for reference and time? So that's the one that popped in the most recent. Big day of negotiations with China. They want to make a deal. But do I? I meet with the vice premier tomorrow at the White House. That tweeted, that's probably Pacific, I'm guessing, because it was 9.49 a.m. Yeah, interesting, right? Yeah, I'm not sure. Right. That's the first time I saw it with that time stamp. Because even if you back it up, it shows 35 minutes ago on that correlation, his most recent tweet. Right. Yeah. Maybe you just, maybe you wrote it then and you decided to do it at the open on the market. You already bought some coal. I think it's time. You bought some calls on the S&P. Yeah. Okay. Hey. Hey. Let's go take a look at the 30-year bond out here. So these have been hanging tough. You know, yesterday it came down with light volume. Today, oh, that's going to be interesting. So we get some volume. There's 200,000. It's a good volume out here, I think, today. It's just been to what we're going into. That's a lot of volume. Well, I see what we're going into though. And I was still going into 489. Trigging. Okay. So the time would have been October 1. Low is 160. The high is 163. And we'll see whether they get in at 289,000. You could. This is still, that's absolutely early in the morning to have 200,000 contracts in the 30. Yeah. In the 30. Especially when it seems like it could be a day of speculative headlines that could spur some more pops in either direction. It's only 10-25 in the morning. That's right. You know, as a man, Mr. Basil Chatman would say, the day is young. That's true. He would say that at three o'clock also. Yeah. Which he's absolutely right. That's right. That's right. There's no doubt about that. So let's go take a look at some of the higher volume equities. I know there's a biotech that got bought out at double the amount of money. Good for them. I hope I'm Mr. Bud Robs had it. Kudos. Where is it? Here it is right here. Let's see. RA Pharmaceuticals, huh? Yeah. So let's see what these guys do. Let's see. We'll operate a clinical stage biopharmacompany to accompany office drugs to treatment of cancer, inflammation, autoimmune diseases. Diabetes, cardiovascular, and quite a plethora. Cambridge. Look at that. Cambridge Mass. One million in revenue. And they might slightly believe it. Oh, that's not even in yet. They, right? It's not. It's the 600,000. Yes. It would be the $2 billion market cap, I believe, at that price tag. So maybe they're buying it at about 221. It looked like. There you go. 2.144, probably just over that level. It's phenomenal. Stay right there, folks. Come right back. Hi, folks. Tom O'Brien here. If you'd like to get my daily newsletter and market insights, then now is a great time to sign up for a 30-day free trial. Every morning by 9.30, I send out my morning letter to subscribers with market commentary on a variety of markets, currencies, and commodities to keep investors up-to-date on the day's trading action. Included in market insights are specific buy-and-sell recommendations for stocks, ETFs, and even options, which stops and price targets included for every trade in my newsletter. If you'd like to try my newsletter at risk-free for 30 days, then head over to the front page of TFNN and you'll find market insights under Trading Newsletters. I use my years of trading experience to bisect and dissect the market every morning and give my subscribers the most important information they need to know for the day ahead. I even issue afternoon updates for my subscribers whenever warranted with important market action. I'm always scouring the market for the next great trading opportunity. Sign up for your 30-day free trial to my daily newsletter, Market Insights Day, by visiting the front page of TFNN.com. Well, go get them, folks! The path of least resistance is David White's daily trading newsletter, and if you're looking for active trading ideas, then now's a perfect time for a 30-day free trial to this powerful daily trading advisory service. David uses his years of trading experience to offer his subscribers his trading ideas each morning in his Path of Lease Resistance newsletter. Using a combination of equity trades along with options, David keeps his subscribers up-to-date with all pertinent market information with intraday afternoon updates when warranted. Don't miss out on this great chance to get a 30-day free trial to David's daily newsletter, the Path of Lease Resistance, with no obligation to pay anything. David has been delivering solid recommendations for his subscribers recently, and if you'd like to see the type of newsletter he delivers every morning, then visit the front page of TFNN, and you'll find the Path of Lease Resistance under Trading Newsletters. For all the details, and to start your 30-day free trial today, log on to TFNN.com now. TFNN is excited about our new software charting program, the Art of Timing the Trade Chart. In collaboration with Tom O'Brien and using his best-selling book, The Art of Timing the Trade, your ultimate trading mastery system, David White has programmed an outstanding piece of software that will complement any trader's methodology. Using this first-of-its-kind program, the Art of Timing the Trade Chart allows you to scan thousands of stocks for Fibonacci formation setups, including Gartley's, ABC's, Butterfly's, and much more. The Art of Timing the Trade Chart is designed to help you when scouring the markets for stocks just beginning to form the trading patterns that many investors spend days, weeks, or even months searching to find. And right now, we're offering licenses available for only $79 a month. We are so confident that you're going to love this new charting software that will even give you a 30-day unconditional money-back guarantee. Don't miss out on this incredible new piece of software. Get your copy of the Art of Timing the Trade Chart today by visiting TFNN.com. This segment is brought to you by Think or Swim. For more information, just click the Think or Swim banner on the front page of TFNN.com. Folks, EIA. Natural gas stock piles rose 98 BCF. That's what they were looking for. That was the median estimate. Pretty much exactly. Median estimate, 98. Bloomberg number was the bigger number at 100. We came in at 103. But let's see how it's hitting the market. We'll jump back to the charts. And the contract? No real movement. 226.64 right now. You're looking at the active contract, November. As we're talking, we're getting a little volatility.  We had already inched up a bit prior to that number. So yeah, you could say you got a brief spike, maybe the 227. We're sitting at 226. That's really where those trades are lining up prior to the number. And it doesn't mean you won't get some volatility. But anytime you're looking for volatility, it'd be nice if you could get a miss, right? One way or the other on that inventory number. Because you need three pennies. I believe the 12. Yeah, you know. The 12, you needed three, 3.1, 3.2 pennies. Even the 11 a.m., you needed 2.5 pennies, 2.6 to cover your cost, a buck on each side of that. That's away from the 225. Yeah, so about three pennies. So you'd be looking for either 222 or 228. You start to break even, slash grab some profits, and you'd have exposure for 20 cents. So as we speak though, we're now almost two pennies off the high. So we'll check back in on that number, but neither way. Still a build, right? Still a build. 100 billion cubic feet almost, 98, but still a build. Lots of natural gas, folks. That's for sure. Lots of natural gas. Some of the, we'll get over to Bed Beth and beyond. They got a new target executive over there. Yeah, I heard. Yeah, let's bring it up right now. The market's excited to bring some of that targe over there. And what the executive folks is known for, he brought, I think it said 40 brands, he made 40 target brands. Okay. You know, so I don't know how many Bed Beth and beyond brands they actually have, but that's what this guy does. Let's see. So Bed Beth and beyond sold Thursday, questionable, but they are up good. 25%. Analysts were encouraged by the announcement that given, what's the guy's name? So it's E.E.E.E. It was the first one. The head merchant, Mark Triton, or Triton as the new CEO. Yeah. So an analyst broadly encouraged by the announcement, given his successful tenured target and he cited the new CEO, an analyst citing the new CEO's retail slash consumer pedigree and merchandising and private label development expertise and experience. Yeah, I'd be interested to know myself. I mean, Target has some good brands. They do. I know I probably have some target, whether it's lamps, whether it's small stools, right? You could buy tables, desks, that type of, I'm sure, you know, on top of just normal, towels, glasses, and the so forth. It's almost like every time that you go into Publix, folks, they have more and more of Publix brands. I'm a huge fan of the GreenWise products in there. Yeah, there's no doubt. Whether the chicken, they have a GreenWise, you know, a lot of stuff, veggies, et cetera. Yeah. Yeah, and they just talk about their only hang-up is he's never been a CEO before, but if that's your only knock on somebody, man, you know, executives at these multinational companies, they might as well be CEOs when you're in an executive, you know, position right under any type of manager when you're talking about a company like Target. They have plenty of money to bring in more advisors. Yeah. No doubt about that. And we take a look at the equity. Boy, oh boy, quite a run from that August low. Yeah, so. And quite a run from that. Yeah. Can we put it even further back when you're not because I bet that's not all the pain. Even further back maybe. Wow, I just put a three years back. We haven't found an end to the trend. But it's been going on for a month. There we go. Man, that's probably one. 80 bucks. Look at that. 2015. They got all the way up to 79. Oh, I got to bring this all the way back. Keep going. All right, let's see. You know why this is testing on testing the high volume low somewhere, man? That's blew it by. Look at that. Actually blew right by it.  I'm back to 25, 20 years now. Retour actively. You could probably always find if a company's going to go bankrupt where it's running all your pride. I mean, so quite a run from that. And it's really remarkable from the crisis of 2008. That's from 2011 bucks. And they actually went lower than that. Yeah, it was down below eight, I think, or nine. Yeah, 731. Yeah. Look at that poor thing, man. One of those stories, I think, as it even kicked in, right? Even 2012, look how it hung tough from late 2012 all the way through 2015, where they were everybody kept saying, you know, even in our program, I believe, you know, how do you compete there? How do you do it? And it seems like eventually the market got the best of them in terms of the market being Amazon and Walmart and Target. Right, because they changed their business plan. They had brought so much more electronics inside the stores. Okay. They would make a lot of money in the phones then. Apple was running. Bed Bath & Beyond? Oh, Bed Bath & Beyond. No, that's best spot. Oh, no, I was just saying, you know, there's no help for Bed Bath & Beyond. Oh, my God. Yeah. Well, we'll see how many stores you can get closed. You know, I mean, the space that they have in there, that's very true. That space is like pretty intense, man. No doubt about that. Yes. The, let's go look at Amazon, you know. Speaking of that, the holidays are coming. They are. Christmas decorations are out in force already. We got to get past, we got to get past Halloween and Thanksgiving, and Halloween, you know, Halloween folks, it's a mind blow. Even just Google it. The amount that is spent on Halloween is just amazing. Okay. I mean, it's a monster. Kids are everywhere. They all need costumes. They all need candy. It's a monster number. Yeah. And not to mention decorations and all that fun. Right. But it's fun getting dressed up. Oh, sure. Yeah. I enjoy the Trick-or-Treaters coming to my house. You know, the good ones. Some good Reese's, some good Snickers in there. I know. Reese's, man. Reese's. Whoever made Reese's, folks, I mean, they just, that's just the ultimate. Oh, look at that. Look at that natural gas. Give it a moment and it'll catch up, man. So just checking back in. We were trained about 226 coming into the inventory number. It came in pretty much in line. Quick spike to 227 and boom. We're going 223 just like that. And again, though, we need about three pennies. Now the thing to keep in mind is if you really thought, you know, you were going to decide this trade and the other one's going to remain active until whether it's 11 a.m. or noon, the noon's kind of nice because you have some more time to go higher or lower. But if you were bullish somehow and you traded both sides of it, let's just see what you could get rid of the bearish one right now, right? There's your bearish spread. There's your noon. You could buy it back and you could take 16 bucks off the table and then you'd basically be in the bullish trade for $14, right? So you need this to be a penny out above 225 where you start to break even. Just different ways you can manage it depending on if you think, you know, you might have been looking for a bigger miss and you say, you know what, I'm going to take 50, 60% of what I put up off the table because already I've kind of missed my expectation which was you were open for a miss on the number which didn't come in. Right. Now this is delayed. Yes. So we haven't seen the number come in yet. That's why it's so strange right now. A low of the last swing is 220. Yeah. A low of yesterday is 222. 222. 229. Yeah. So we're very close to that as well. Man. Energy, you know, when you look at these numbers just gasoline, oil, gas in general. And how about just you make me think we'll talk about let's take a look at Tesla when we come back because Tesla had to send an update to Tesla and planned outages. What do you do if you're at Tesla and they're actually planning to cut out your electricity in the area? And look at it still not down. Not down. That's pretty wild. It is. Yeah. And GenRack. GenRack was up 13% yesterday. That would make sense if they're cutting the cord to the electric company in the biggest state of the union. Right. Stay right there folks. Come right back. If you're in the CD market and looking for a way to make it cheaper, you can go to Florida. The tax act of 2018 set up tax-free zones across the country where you can build and hold for 10 years and pay no tax on the profits which makes these lots valuable. The investment is anywhere from 30,000 to 75,000. The interest paid is 7% yearly paid on a monthly basis. According to bankrate.com, the best rate for a four-year CD in the country as of today. That's the same $50,000 investment in the Tiger First Mortgage Program where you give you 3500 per year of 14,000 over the four years. What should you prefer? 6200 or 14,000 of interest on your investment? If you'd like more information about the Tiger First Mortgage Program, you can call me at 877- 518- 9190. That's 877- 518- 9190. If you haven't heard of the Tiger First Mortgage Program, you can call me at 877- 518- 9190. That's 877- 9190. That's 877- 9190. That's 877- 9190. That's 877- 9190. That's 877- 9190. That's 877- 9190. That's 877- 9190. That's 877- 447- 9195. That's 877- 9190. That's 877- 9190. Wow. That's 877- 9193. That's 877- 9194. That's 877- 9195. That's 877- 9190. How long have you been watching our or L.A.B.D. Direction's Daily S&P Biotech three times, bull and bear ETFs. Visit DirectionInvestments.com slash biotech today. An investor should consider the investment objectives, risks, charges, and expenses of the direction chairs carefully before investing. The prospectus and summary prospectus contain this and other information about direction chairs. To obtain a prospectus or summary prospectus, please contact Direction Chairs at<PHONE_NUMBER>. The prospectus or summary prospectus should be read carefully before investing. An investment in the funds is subject to risk, including the possible loss of principal. The funds are designed to be utilized only by sophisticated investors such as traders and active investors. Distributor Four Side Fund Services, LLC. Don't forget, you can listen to TFNN live on your mobile device 24 hours per day. Go to TFNN.com and hit Watch Tiger TV. That's TFNN.com and hit Watch Tiger TV for the latest market information. All right, folks, I doubt. That was up 160 Nasdaqs, up 48, S&Ps are up 18. Let's just go to the financials for a second. The XLF, because what we had out here is that they've had a high-time holding price. I'm just curious, you know, you get rates going up today. Okay, so they get a little pop. The XL is up $0.37. I think we're at like 1.64 on the 10-year right now. From like a 1.57, 1.58 in the beginning of today. Fast move, yeah. There's no doubt. 10-year, let's pull this baby up. These bonds, man. I was reading an article just somewhere on the internet today talking about, you know, the 60-40 split of bonds to, excuse me, from stocks to bonds, diversification, talking about retirement allocation type. That might not be a strategy that you should be employing, and I would be very serious. My mom retired, I've been talking to her, and my biggest fear is, you know, you can't just buy bonds right now and think that it's this stable, stable return of income in a somewhat really volatile stock market because we're in a different... Now, you're talking about bond funds. Yes, the price of bonds they're trading. That's correct. Not off the treasury. Yep, if you plan on holding them to expiration and you're only looking for a coupon and you know what you're locking in and you're okay with that, but if you're... Treasury direct, that's where we're gonna go. Yep, but if you're buying bond funds, as most people are, when you're with a Fidelity, Schwal, TD Ameritrade, you're paying for any type of money management, whether it's a percent a year or a management fee, percent and a half, they're not getting managed to put you into treasuries most of the time. They're getting managed to put you, if you're with a Fidelity, into a Fidelity bond fund, into a Fidelity stock fund. So be very aware. And they're all trading over the principal in a huge way.  Well, good luck getting yield when you have that type of volatility on your, the principal. Right, and if we go to the TLT, so this is the 20 year plus and, you know. I mean, it's a perfect example, you know, there's a, I don't wanna say a million bond funds. There's a lot of bond funds out there and they're not all gonna be as volatile, probably as the TLT, even just recently, depending on how they're diversified. But the TLT is, should be pretty, pretty stable as in it should have. Can we just push it back up before?  That'll be the test. You mean when last time it got smoked was 1994. No, no, I was just saying, and no, no, I was just even saying, you know, in the 2000s and the two, excuse me, in the 90s, no, in the 2000s and 2010s, basically the last 20 years, right? I mean, and you can see that even in the, from 2002, when you go through the crisis, you had some volatility, but all in all pretty stable. Yes. But man, oh man, you just went from 110 to 150. Right. If you don't think this is a range that if you bought in right now. Right. You could go back to 110, 115, even if the consensus is always rising, okay? Even if you created, you know, now how do we, I mean, you know, talk about, you could have a huge trading range here from even if you call that the upper end. Yep. Whoops, not track. We want one more bar and you know where it's gonna be, right? I mean, we're just trying to use the linear regression of correlating those lows. Look at that. You're under 120. And speaking of, we'll give Bud Ross two Bud Ross mentions today with the channel. Exactly, exactly. Because man, oh man, you know, you don't have to be a genius to see this thing bouncing, bouncing, bouncing, bouncing, bouncing, bouncing, bouncing. Well, folks, where's the next bounce, right? Even if you extrapolate in time and raise your bit, 120, 122, 121. In a normal uptrend. Yes. So be aware of that volatility. That was a good article, a good point. Oh, it's a huge point. Yes. Particularly because, you know, people equate bonds, not all bonds, but definitely trophies with safety, you know what I mean? Oh, and I would say, I wouldn't even go that far. People, as in people, smart, intelligent, in the, you know, retired or something where they have money in the market, they equate, oh, but I'm in 60% stocks, 40% bonds, I'm protected.  One of the biggest downdraps, I don't know if we can bring them up, but 1994, folks, it was a slaughter inside the bond market. And it was a slaughter, like, within about six months. Okay. Man, you know. I wonder if the 10-year can somehow get it generic. Yeah, let's see. There's our yield. Yeah. Let's see how back we're gonna go. We'll pop it up, GPO first. Yeah, we shouldn't be able to go back 50 years. I think we should, depending on how these generics line up. And we're gonna go a monthly 30-year? Well, no, maybe not even. We'll go quarterly 50-year and see how far back they pop us. So where, the slaughter, what were you? It's from 1994. Oh, okay. Okay, this is the yield, excuse me, yeah. So you would have had, yep, there's the beginning of 94. You had the yield pop all the way from, let me get the number. 6.2. 5.1. Yeah. To 7.6. Right. My goodness. The price had to be devastating. Right, exactly. And that was, well, since I've been in the business, that was one of the first times that people didn't know what happened to them. Yeah, I imagine. That was that dramatic, do you know what I mean? I mean, just a huge from a yield from it's almost a 50% rise, right? Particularly, let's see how far I had gone down for so many years. Yeah. You know.  Is that even a misprint? 15.8%. Well, that's right. And your yield, I know. That's 81. I mean, remarkable, man. And you went from 15.8 and to 86, you were, I'm 6.9%. You know what's so cool about this chart, folks, is that, see, the bond market has been in a bull market since 1981. The price of it, as in the years. It's not over. I mean, until you can see this chart, we've been consolidating now for a long period of time, almost like 2013, right? Yeah, yeah.  Yeah, that's what I'm looking at, right? Excuse me. And if you break that, that's, we break that consolidation, that's when you go negative. Sure. And the other way you could look at it too, in terms of the downward though, let me just get down and draw the same lines because they would somewhat set up these lows. I mean, that's a scary in terms of you there. Now you're consolidating, but you're still getting the lower highs, is what I'm. Yeah. Whoops, we're gonna, this guy. And that's what you do with trends, folks. Right? It's the bottom line. I mean, something like that, you could probably move this. Oh, I can't. See, now that. You gotta move that line down maybe a little bit. But what does happen, if you happen to watch and tag a TV, even if you take it off this one. That red line is a dangerous line for the bond market. Yeah. You know? Because it's like, okay, we've been in that channel, and if you can have the bottom of that channel as time goes out, well, guess what? Guess where it goes, man? Zero. Yeah. That's a yield, zero. Right. Yeah. And when you do that, just the break of the consolidation we're in, it's 0.08. Okay. If you take what we're at for the opera. Yeah, exactly. So even at conservative, the higher range we were at was about 3.03. That high was 3.25. And then to take the low, yeah. Right, we're trading 1.6.  Right. Just from where we were trading at at the beginning of this year, 3.0, excuse me, 3.25, down to 1.64, but basically cut in half. Right now. Yeah. And you know, the bottom line, you know, you get Powell on the Fed claiming it's not QE. Well, they're gonna buy the bonds, you know? So you can call it if you want to call it, but they're buying those bonds, man. I agree, capital on the market. Right. Yeah. 55 Nasdaq up 47, S&P's up 17. Stay right there folks. Tell me that I come right back. If you're a trader in the market looking for exposure to gold or gold mining equities, then now is a perfect time to sign up for Tom O'Brien's gold report. The summer is over, gold is trading back above $1,500 and the 10-year treasury is hovering at around 1.5%. Tom O'Brien has been writing his weekly gold report for almost 18 years. There's no one that knows more about how the gold market trades and how gold mining equities react. New subscribers get a 30-day money back guarantee so you have nothing to lose. Every Monday morning, Tom publishes his weekly gold report with coverage of gold, silver, bonds, the XAU, HUI, GDX, the dollar, as well as more than 30 different mining equities. As of September 3rd, gold report subscribers have five active open positions with an average unrealized profit of almost 38% for each position. To see for yourself the types of profitable trades that are recommended within the gold report, sign up today by visiting tfnn.com. Since 1984, Basel Chapman has been using the Chapman Wave methodology to advise traders of his expert market opinion. While originally hand drawing charts from the late 1970s into the 1980s, Basel noticed that prices under most circumstances virtually always had a certain number of legs to the upside before declining sharply. Later, Basel found that computer software which included the standard market technical indicators enhanced the degree of accuracy in calling price turns as well as market trend calls. Thus was born the Chapman Wave sequence. Using the Chapman Wave methodology along with other indicators, Basel Chapman advises his subscribers of his expert market opinion each market day with his opening call newsletter. Right now, you can get a two week free trial to the opening call, Basel's daily trading newsletter by visiting the front page of tfnn.com. Cancel at any time during that trial and pay absolutely nothing. Get your two week free trial to Basel's newsletter, the opening call today by visiting tfnn.com. This segment is brought to you by Think or Swim. For more information, just click the Think or Swim banner on the front page of tfnn.com. Folks, I doubt, dial up 170 and has a cup 55, S&Ps up 20, and folks, man, Mr. Larry Pezzavento next Wednesday is gonna be coming up. He's gonna be doing a live webinar for his subscribers. You can be a subscriber to Fibonacci 24x7 right here, right now. The way to do it, come over to our website at tfnn. You're gonna go right into featured content. You're gonna see on the right hand side. Fibonacci 24x7, he's got that subscriber webinar one week from yesterday, so sign up for that. He's always got great reports coming out over the weekend as well, so it's a great time to sign up. He's got updates almost every day, whether in chart or video form. And then he has, man, I go through and look at it every weekend, and it's just so much information, man. He is just sitting at that computer putting out charts. He's usually got at least two videos he makes talking about the markets, yeah. And then he's even got the longer-term futures charts talking about monthly, sometimes even quarterly charts going back for everything, kind of a week summation. But Wednesday night, welcome to the Halloween party in the stock market. He sent me over a couple of titles. He chose- Spooky. That's right, he chose that one, and I liked it, and becoming a Halloween party on Wall Street, do the end of this month. Well, that works out in Halloween, October 31st, right? And he's gonna be talking the use of application of artificial intelligence in trading volatile markets. Do we have some volatile markets? That should be applicable. He's talking about how to use harmonic numbers when trading the volatile markets. A brief history of the last three tops in the stock market over the last 25 years. It will include a daily outline of the Dow Jones Industrial Average and E-mini through the month of October and also a trade of the day, which is the best setup we see in the 16 markets that Larry follows. As always, new subscribers, 30-day money-back guarantee. I encourage you to come over here. You can sign up, whether it's a month, whether it's six months, whether it's a year. All of those come with a 30-day money-back guarantee, so you can add some savings. Maybe jump into the six months. You're saving 22%. The yearly saving 32%, a full 379. But either way, great service, man. Check it out. Should be great on a week from Wednesday. Stay right there, folks. I think there's some coming up next. Thanks, pal. Thanks, man. That was quick. Yeah, go get them, folks.


So, somebody would please remind me at 4.45 to stop and then discuss about mode of exam. Next week we have first lecture exam, because there was some discussion in the evening about open book, open notes, closed book, whatever. So, we discussed that in the finalized because then I need to explain it. So, somebody please remind me at 4.45. So, we started looking at semantic analysis state of the compilation. We looked at the models, how we are going to create the semantic analyzer and what was coming over that we want to have certain properties associated with each of the grammar symbols and we are going to call that as an execute grammar. So, let us look at what is the framework for execute grammar and how we are going to then have an implementation. So, this is really, now I mean after syntax analysis everybody is familiar with property grammar. So, basically what I want to do now is that once we have a context to grammar and we have the grammar symbols, these grammar symbols I want to associate certain properties. At this point of time, let us not worry about what these properties are. Depending on what we are trying to do, these properties could be different. So, for example, if I am trying to do type checking. So, what I am talking about is now a more general framework. If I am trying to do type checking then maybe I want to have some type information. At some point of time when I start doing code generation in the later part of the compilation then you will find that with certain attributes, with certain grammar symbols I would like to associate information about where these symbols are stored. So, I may say that I want to associate a register with this expression. I want to store this particular expression into a register or I want to store a variable into certain register. So, attribute is really a generalized property which I am going to associate with each of the grammar symbols and remember that each grammar symbol can have more than one attribute. So, it can have several properties not just one. So, this is really a generalization of context to grammar. Where each symbol will have certain properties associated and as far as type checking is concerned I would like to do certain computations. So, in the previous class you recall and I was giving an example that if I am trying to parse say type declaration and I want to then create a parse for the type declaration then how do I compute that when I encounter C the type of the C is int and the kind of tree we created for this class that I will have an int here and then I may have. So, my rule may look something like saying that a type name followed by a list. This may be a rule and then I may say the list is nothing but it could be let us because it is a rule. So, it is list followed by let us say identify a separated by com. So, I could get something like this that I can say this is my type name this is my list. So, this is what my declaration is and type name could be type which is integer this could be a list followed by form of followed by an ID which I say C here and then this again will be list followed by form of followed by ID and list could be. So, let me have another rule which will say that list could be ID and list could be ID here. So, this could be a parse before this type of declaration. And now when I am looking at say this particular node I want to associate this type here. Now, how do I carry this type here? I need to do certain computations could be a simple copy or it could be certain computations. So, with this node, this node and this node these are the three nodes that I encounter I want to make and please in the symbol table corresponding to these variables saying that type of this will be. And another example we had was that if we have let us say some expression where I want to associate again certain type values with it. So, if I have an expression like this where I say that e goes to let us say t plus e and this is my type expression. Let us say that ID 1 and ID 2 have already been declared. So, when they declared their values their type information is available in the symbol table. Now, what is the type of e? They do not want to do that computation because I do not know whether this is going to be a valid type. So, remember that somewhere I gave you an example where we said that a is assigned d plus say or 2 where this was in and this was string. Now, I want to find out whether this is a valid assignment or not. So, first I must know that for a valid assignment both the types must be same or I should be able to automatically type last it. But if the types have to be same then type of d plus 2 must be same as n for this assignment to be valid. Now, how do I know type of b plus 2? So, I know type of b from symbol table I know type of 2. And then I will have to do this computation to say that type of this particular operator may not be allowed on these kind of attributes. So, this is how we are going to sort of build a type system where I am saying that I am now associating a value where I will say that ID will have a type information with it. Similarly, ID 2 will have a type and then this type information will be carried up in the tree. Similarly, I may say that type information here will be carried across the nodes. So, it may be carried from one part of the tree to another part or it may be carried from the child nodes to parent nodes. So, values of attributes are going to be computed by the semantic rules. And now you can see that semantic rules for this and semantic rules for this are going to be different. So, you have to design these semantic rules. And there are two notations which are generally used. One is called synthesized attributes. Another is called inherited attributes. So, synthesized attributes as the name suggests is a situation where you say that attribute of a node in the parse tree depends upon the attributes of its children. So, if I know attributes of the children node, then I can do this computation. That is called synthesized means. And inherited attribute is a situation where we say that an attribute depends upon either the attribute of the parent or attribute of the siblings. So, in this case, for example, I may say that attribute of this part of the tree depends upon attributes of this part of the tree which happens to be sibling there. And attribute of this will depend upon attribute of this which is coming from the parent. So, we will have two kinds of attributes associated synthesized attributes and inherited attributes. And also, we have two notations associated with us. One is going to be pure specification which we are going to call as syntax directed definitions. In short here, I will show you what these specifications are. So, these are only specifications and do not give you any details about how to implement it. So, this is just here that I have some specifications. And then I want to implement it and implementation is going to be slightly different. Versus we have something known as translation themes. We are not only we give specifications, but we also give any evaluation order. So, for example, I may say here that in this case, if I say I have an attribute type, then I can always say. So, let me now put some symbols on this. And now when I say e1 and e2, I am not saying these are two different non-terminals. I am saying these are two different occurrences of the same non-terminals. My non-terminal is still e. So, I may write the rule like saying that whenever I do or you do it on this part. So, whenever I say that I have a rule which says e goes to id, I have an attribute equation which says e type is nothing but id type. And how do I know the id type? How will I find out the id type? In the declaration. So, here actually id type is nothing, but I may say look up type information for id type. This is what id type is because id has already been declared. The type information has already been entered in the symbol table. And when I am trying to pass this expression, that time I will say e type is nothing but look up this. And then if I write something like this which says e goes to e1 plus e or e goes to e1 plus e2. Now, the reason I am writing 1 and 2 are so that I can say that I am talking about an attribute of this, this and this. These are three occurrences of the same symbol. So, I may say that I may write some complex rule like saying that if e1 type is int and e2 type is int, then e type is int. So, this is saying that if both the types are integer, then this is integer type. And then I can enumerate it saying what are the possible combinations and I may also have a situation where I say that e type is an incorrect type. It is an erroneous type. So, for example, if I say e1 type is string and e2 type is const, then I will say that it is an error. Then I will say e type is an error type. So, that is how I will be able to flag errors in my type. So, these are really attribute situations I am writing. Now, this does not tell you if I look at these kind of specifications, this is not telling you in which order I am doing evaluation. It is just saying that I have certain specifications. And at some point of time, we will have to worry about evaluation of this. So, we will convert those into translation schemes and then use a parser to not only verify that the grammar is correct, but also to see that your types are correct. Same method can be used for code generation and so forth. They need to make sense. And I gave you an example again from YAK in the previous class showing you that you have already done this. So, if I go back to YAK, you have certain dollar symbols associated with each of the grammar symbols here. So, if I have dollar symbols, then what are the dollar symbols associated with these? So, I have dollar dollar with this, dollar 1, dollar 2 and dollar 3 with this. So, I can always add what are these dollar symbols? What is the type of this? What are the type of dollar? We define in the YAK file that it is x1 to x4 to x5 to x6. No. Have you ever seen the code of Y dot 5 dot c? Structure. This is structure. And what is the type of the structure? It is a union as a member of different data. It is a union. It is a union. So, you can like pass 22 more. You just cannot say two structures. Good. So, next time you ask a question, you must be directed. That is the DNS, right? Just do the look up. So, it is actually a union. So, you can like ask it to anything. So, if you recall now, that sometimes when you try to associate, say, integer values with this, it actually gives you a warning. Saying that you are associating a wrong type. So, unless you type pass first dollar-dollar, to eliminate those warnings, it will keep giving you those warnings. In C, I mean it is not an error. But you must know in terms of your implementation also. So, conceptually, both are really the same. Only implementation are different. But the intention is that as I am. So, conceptually, one way to look at this is that first I want to pass my expression or pass my program. And once I have constructed the pass field, then I want to traverse the pass field and compute this information. So, for example, here I will say that my pass field is going to be something like this. And once I have created this pass field, then I will say that if I now traverse it, and it does not matter in which order, I can let us say traverse it in any order. And multiple times. Then I will say that if I know type of this, if I know type of this, what is the rule of computation of type of this. So, I will have these kind of rules associated. It is not giving me any evaluation order. It is not giving me any order in which I want to translate. But ultimately, the goal is going to be that ideally, if I can construct parse tree and at the same time, I keep on computing my attributes, that will save me multiple passes. So, I try to write my attributes in a fashion that I can do it as I am parsing. And then we should be able to see that that will immediately lead to translation scheme. Because then I am saying that this is the order in which I build my parse tree and therefore, this is the order in which I should compute my attributes. So, we want to now traverse the parse tree to evaluate these semantic rules. But please also remember that that is only a way it is possible in some situations that I may not be able to do it in as I am computing my parse tree, as I am building my parse tree. It is also possible that I may have to have multiple passes over this parse tree before I can do this computation. So, all those situations are possible. So, evaluation of these attribute equations, it can either generate code, it can save information in the symbol table. So, for example, if I am parsing this, I am trying to save information in the symbol table. If I am parsing this and I find the types are not same, so I may issue an error message. I can perform any other activity. So, basically what we are talking about is now a framework on top of context tree numbers which is going to be used for implementation of rest of the field of computation. Any questions? So, let us move on. So, here is a small example. So, what I am showing you is a grammar. And what is this grammar? This is only saying that I have a number and the number is can be a sign number and sign could be plus or minus, nothing else. And then followed by a list and list is nothing but a list of zero symbols. I have a binary number which is either plus or minus. And what do I want to do? I want to now write some attribute grammar which is going to annotate number with value represents. So, for example, if I write something like, so if I say a number is minus 101. Then if I pass this using the grammar here, I will get the pass fee like this. You will say number is nothing but a sign and list and sign is going to be minus and list you can see this is a left recursive rule. So, this is giving list as list forward by a bit and this bit will be one. This will be again a list forward by a bit. This bit will be zero and this list will give me a bit which will be one. This is how the pass fee is going to be. And now what I want to do is I want to associate value saying if I look at this particular node, then what is the value of the tree below it? And finally, I want to find the value of this particular number. Let's say in decimal. Now, if I ask you to convert this binary to decimal, how will you do it? What is the algorithm you use? Place value. So, we say this is the rightmost bit. So, the place value associated with this is 2.2 to power 0. 2 is 2 to power 1, 2 to power 2 and then add up everything. So, I must know position of each bit before I can compute this. Now, same thing I must compute here. I must know positions of each bit. How will I do that? So, now let's see that can I write rules such that somehow given this parse tree and given certain rules which are associated with each of the nodes, I can find out the decimal value of this. So, it is intent clear for what I am trying to do. So, if I say that this number I have let's say an attribute associated value. And finally, I want to say value is minus 5. Is this what it is? 2 to power 0, 1 and 4. So, that we say 5. So, this is what I want. Now, tell me what are the rules I should write. So, that I can do this computation that when I finish this, when I do this, when I evaluate all my rules, the value of this particular variable will be minus 5. So, think about it. So, let's say what is the position of this bit? This position 0. Now, how do I get this position 0? So, if I say that to begin with whenever I am parsing and as I said that this point of time I don't care about the order of evaluation, I just want to write pure attribute equations. I can say that whenever I start creating this tree and it doesn't matter now whether I am creating it top down or bottom up because I can have multiple passes over it. That as soon as I start reading this number, I say that when position let's say position is defined as so position is now an attribute which is initialized to 0. And if I say that I have this attribute with number which is position, then I can say that list is a position. So, list position is so the way I am going to do it now, I will say that for attribute of this name list, I will have the grammar symbol followed by the attribute name because I can have multiple attributes. So, I will now say that list position is nothing but let's say number position. So, this will get me value of this value which is 0. Now, I can say bit position is let's say list position. That will also take me 0 and then I can say that this gives me position 0. And then once I know the position what will I do? Then I know standard technique I will multiply it with power of 2 to power of that position. But here I must take this position as 1 and here this position should be 2. So, now I can write a rule here which says that when I am looking at this list position, I can say list position is nothing but so let me call this attribute and this attribute, but a different name so let me call it list 1. So, that I can say now list 1 position is nothing but list position plus 1. And then if I now look at this so bit position is nothing but list position so it will get value 1 here. And what about this? Again the same rule will apply here which will take now value 2 and then I can say that this bit takes value 2. So, by starting this I can write rules. Now, you can see that if I take this subtree or this subtree as long as my grammar rule is the same, my attribute equation is the same. Some people are not in their heads, but I can see a lot of blank faces also and it is not clear. Are you understanding what I am doing here or not? Somebody who does not understand what I have done there. So, let me write this slightly differently. Let me write this grammar and here I am saying number is find list and find is plus or minus and list is followed by bit or list is followed by bit. And then I say bit is either 0 or 1, this is what my grammar is. Now, suppose I say that so let us not worry about sign for the time being. Sign I will read later. Suppose I say to begin with here, I say that now I am writing certain rules with this. So, this is my grammar and I am going to add rules to this. So, if I say my rule is something like this, where I say that list P is let us say initialized to 0 or I can say it is number dot position, but let me say it is initialized to 0. That is the rule which is associated with this particular grammar rule. So, this is an attribute equation associated with this grammar. And then I say when it comes to this particular grammar rule, I say that bit position so let me now differentiate between this list and this list by saying this is list 1. So, now I say that bit position is list position and list 1 position is list position plus 1. This is the rule I have. And here I say that bit position is nothing but then I say that when I am coming to this, let me say that bit value, now I have to compute the value. What is the bit value here? 0 will always give me 0, does not matter where it occurs. So, position is not important. Only when the bit is 1, then the position is important. So, I can always say bit value is 0 and here I can say that bit value is 2 to power bit position. So, now this is telling me that if I reach the bit which is at the leaf level, then I can look at contribution of each other. If it is 0, it does not contribute anything. If it is 1, then it contributes corresponding to where it occurs. But then I need to know what is the value of the number. So, I need to take this information back. And that is where I say that if I am reducing by this rule, then I can say what is the list value? It is nothing but bit value. Whatever is coming, whatever is the value of this bit, that is going to be the value which is copied here. So, this is bit value. What about this? When I have a rule like this, what is the value of the list? Now, to compute this value, I must know this value and this value. And I just need to add the rule. So, I can now say that list value is nothing but list 1 dot value plus bit value. And if I now find out what is the number value, as I said, let us ignore sign for the time being. So, what is the number value? List value. You can see that what I have are really specifications which is telling me that how do I compute value of this number? I do not know in which order I am going to do the computation, but I will find out. Now, let us do this. Suppose now I am also worried about the sign. So, now I can say that in this case, so let me write now, it is slightly different. So, I have two signs. So, now I can say that this is either positive or this is negative. So, I can just use a Boolean here and I can say that this is saying that sign value is true and this saying that sign value is false. I can use any attributes I wish. And now this rule is going to change slightly and now I will say that number value, what is number value? Now I can say if sign value is true, then what is the number value? Then I will say number value is let us say sign this one as minus this. So, I know that if I ever create a parse tree using these grammar rules and then I evaluate all these rules on my parse tree, I will get value of the number. And as I said at this point of time, I only have specifications. I do not care about in which order I am evaluating these specifications. That we are going to do at some later point. List one or new? No, no. So, please once again. So, list is the non-terminal I have. List one is just another occurrence of the same thing. I want to differentiate between attribute of this list and this list. Now, when it comes to implementation, I already have a method which says that this attribute is dollar-dollar and this is dollar-dollar. So, I will be able to differentiate. When notationally I use here, I need some mechanism. So, I am putting some subscripts. But this is not a new non-terminal. It is the same non-terminal. Similarly, when I wrote E going to E plus E, I said E going to E1 plus M because there were three E's and I want to have different E's. But non-terminal is still the same. Is this now beginning to make sense? So, now if I use all these rules on this parse tree, you can see that in one top-down parse, I am going to get all the bit values, bit positions and then in the bottom-up parse, I am going to get the bit values. So, I can immediately see that this one is, if I start traversing from top, I will take this value 0, this value will reach here and then this 1 will reach here and 2 will reach here. And then when I start traversing upwards from bottom-up, this will say that value is 4 here, this will say value is 0, this will say value is 1 and when I add this, this will say that value is 4, this will say value is 1 and when I come here, this will say value is 5 and therefore this will say value is minus 5 because of this sign. So, these are the symbols I am using just to reconstruct what we did, that we have a number which is value sign is negative then I have position and value with list and bits and this is how the parse tree will look, but if I put now rules in this, this will say that this negative is true, so here I took positive as true in the example I have negative as true, does not matter just a Boolean value. And here this says position is 0 and this will copy the position here, which will say that in this case position becomes 1 because I am now using a rule which says list close to list followed by bit which is this rule and then this position 1 will get carried to this and then this position 2 will get carried to this and this will also then get position 2 and now I will start constructing the value, so this will give me value 4 looking at the bit value at the position this gives me 4 and this 4 is then carried upwards and then for this part again value will be 0 because of this position is immaterial this gives me value 0 and this therefore says that value associated with this list is going to be this plus this value which is 4 and on this part value will be 1 and then this list will get value 5 and number therefore will get value minus 1. Now instead of these numbers I could have a type information, so as I said this is a general matter which says that if I have certain properties with these nodes then how do I compute certain other properties of some other nodes and what I am using here I am using a combination of synthesized activity groups and inherited activity groups. In some cases I can see that this value whatever I have put in green is actually a synthesized activity group because it is defined in terms of its parent children nodes and whatever you see in red is actually coming from the parent and these are the inherited activity groups. You can inherit certain properties or you can synthesize certain properties. So now there are two things one is the parse tree which you see in black color and then you have all this blue green red which is the dependence graph which is saying that this evaluation must be done in certain order. Now the orders of construction of parse tree and evaluation of all these activity equations may not match at this point of time. When I say at this point of time I do not even care about it because I am only writing certain properties and not worried about the evaluation of it. But at some point of time I will have to worry about this. So if this is what my grammar is this is how my rules are going to be that list position is going to be 0. So this is just replication of that. This says sign negative is false this says sign negative is true and this says bit position is nothing but list position is saying list position is nothing but list 0 position plus 1 and this saying bit position is nothing but list 0 position. And here bit value is 0 and here bit value is 2 to power bit position. And then I start taking these values up so here I will say that list value is nothing but list 1 value plus bit value and this will say list value is nothing but So, you can see that I already have some kind of attribute grammar and at least a way of evaluation of attitude equations. Now, let us take another example. So, attributes I already discussed this they fall in two classes one is synthesized by attribute and another is inherited by attribute and synthesized by attribute is something which is computed from value of the children nodes and inherited by attribute which are computed in thumbs of the attributes of the sibling and the family. That is something what is the heritage standard English words. So, now we will start putting this in slightly formal notation. So, what we are saying now is that suppose I have a production of the form A goes to L form and then with this I can associate a set of semantics. Now, I need not have just one rule I can have multiple rules. So, you can see that for example, here with this particular grammar rule I have two rules associated or three rules which says which position is list position this says list position is list position plus one and this says list value is list value plus with value. So, I have three rules associated with the same grammar rule. So, in general I can say that my rule is going to be of this form where I say I am trying to compute this B which is a function of attributes C1 to CK. Now, it does not matter whether it is synthesized or inherited if it is synthesized attribute. So, if this is synthesized attribute then C1 to CK are attributes of the children node of B or if this is inherited attribute of the grammar symbol on the right hand side then what it means is that C1 to CK are attributes of the parent node and the siblings. So, attributes what we have to remember here is that this attribute depends upon attributes C1 to CK. So, I cannot compute B before I have computed C1 to CK. So, looking at this I for example, cannot compute with position without knowing the list position I cannot compute list one position without knowing the list one value and bit value. So, I need to make sure that as far as my dependence graph is concerned that is a directed graph and I only computes my attributes in the order that no none of the edges get violated. And I will also assume at this point of time that we do not have cyclic dependence. So, that makes life a lot simpler if you do not have cyclic dependence is that then what is going to be the property of the dependence graph you have. Then you for example, on a dependence graph it does not have cyclic.  So, if I do a topological sort on that then I know what my partial order of the evaluation is. So, for example, again once going back to that figure once again. So, if I know that I can compute these in certain order then you know that if every time I am computing something where all it depends upon have already been computed then I have no problem the order within that is not important. So, for example, whether I compute this value first or this value first that is not important as long as before this computation I have computed both of them. So, they like saying that if e goes to e 1 plus or e 1 plus e 2 does not matter whether I compute e 1 first or e 2 first as long as I have computed both of them that I can compute e 2. Of course, at some point of time we are going to impose certain constraints on that and say that I want to evaluate it in certain order because I am constructing my pastry from left to right I am scanning from my input from left to right and therefore, I am going to put certain constraints on that. So, continuing on this we have two kind of attributes and so let us look at a synthesized attribute and synthesized attribute are actually much simpler. So, these are also called asset attributed definitions if we say that all my attribute equations are such that I use only synthesized attributes then these are asset attributed definitions and a pastry can be annotated by just looking at the semantic rules and then I can say that for each node I can annotate it with one of the semantic rules and what will be the natural parsing method for construction of a dependence law for a synthesized attribute, bottom of parser. If I construct a bottom of parser and I have only synthesized attributes then I know that as I am constructing my nodes the nodes below it have already been constructed and I can keep on computing and finally when I reach the root node by then I have completed it. So, here is an example which is coming from the best calculator example. Now, there are many calculators this is actually a program in C you can use binary calculator, but then there were also calculators like here I could type an expression and when I finish typing an expression it gives me the value of the expression. This is I mean if you take any calculator what do you type you are typing an infix expression right and when you press return it gives you the value of that expression in terms of how does it work internally what it is doing is nothing but parsing your input. So, suppose this is a grammar I am using for parsing my input which says that when I press return.  So, what kind of rules I am going to write for this. So, suppose I say that I just want to make sure that when I finish typing my expression and press return value of this expression is printed on this screen. So, as I see digits and as I see operators I must be able to compute all the values which are associated with each of the expression. So, for example, if I take now some expression which is passed by this particular language. So, let us say that I am trying to compute say 4 star 5 plus 3 some random expression what is the kind of parse tree I will construct for this. So, you say that l is nothing but an expression followed by new line and then I want to clearly say that l well here is nothing but even that is what I want to print or I can simply write it in terms of saying that here instead of the copying it and I can just say that print at all that. But if I now look at this part and now you can see that what kind of parse tree I will get from this. What is this giving me 4 star 5 this will give me t star f. t star f will get reduced to t and t will get reduced to e. So, this is how it will come. So, I think I am assuming our numbers here this part of the parse tree will look something like this and this part of the parse tree will look is going to be. So, t and actually I should have had one more e here basically e plus t and this t is going to f and f going to id which means 3. Now, if I have to write all these rules what is if I say my value or attribute that is associated with this just the value attribute only one attribute that will be grammar removal. Then what will I say what is the value here 4, but I need to write a rule I cannot just say that when I reduce by saying f goes to digit it is 4. So, what is the rule I write which is a more general rule. So, whatever is the value of the digit. So, I can say that value is nothing but here digit value that becomes my general rule. So, same rule will apply here and here it will say that value of f is nothing but digit well and when this rule is used which says t goes to f then I will say that what is t well f well. So, it is just talking. So, whenever I do a reduction by this rule this says that t well is nothing but f well and what is the rule I write for this when this says t goes to t star f. So, what is t well? t well is equal to t well star f well only one small problem that I do not know what this t well is because these are two t well suffering. So, I need to make sure that I use some subsets here to differentiate between them and therefore, I say that this is t 1 and therefore, this is t 1. Similarly, I can now say that when t goes to t I will say that e well is t well and so on. So, this way I can very quickly create all my rules and what I am saying here is that f well is nothing but whatever is value of the digit then f well is e well and t well is f well and this is saying t well is t well plus f well and this is saying e well is t well and e well is this and terminals which are associated have only since I have a value which are supplied by a lexical analyzers. So, for example, this is a terminal this is a terminal this is a terminal these values are going to come only from the lexical analyzers. So, this is how my parse tree will look and then I can do all computations of these values and so I have different expression here. So, basically what has to be clear to you is that given a grammar I have given a problem to be solved now. So, now I am posing several problems one problem I posed was that given a binary number a sign binary number how do I find the equivalent decimal number or given an expression how do I find value of the expression or given a type how do I find type of each of the variables these are different problems and for each problem I should know how to write my activity and my grammar will remain the same. So, using the same grammar same parsing technique I can solve different problems.