So, folks, how many of you are familiar with EVPF here? Okay, wonderful, wonderful. About half of you, that's great. Well, before we get to that, let me say a few words about myself to manage your expectations. So, I'm a performance geek who turned to be CEO. So now, I had to work more, I would guess, on the company performance than assistant performance, but you know what, I still keep my passion and that's why I go and talk on a lot of technical conference still. In this presentation, we'll look into EVPF overview and how it works on Linux as well as look at the practical examples of the EVPF-based tools, which I hope you find helpful and be able to apply to new environments. So, EVPF history and its support in Linux. EVPF, it stands for Extended Berkeley Pocket Filter, which is a weird name for a tool we want to use for monitoring, isn't it? Well, and reality is that ease originated from the Berkeley Pocket Filter, which was exactly designed for efficient, to build an efficient virtual machine for Pocket Filter, and then extended E. That means it was pretty much extended to be able to be more stuff, right? So Linux kernel has support for that virtual machine called EVPF. In general, EVPF is event processing framework, which is used a lot for monitoring, but that also can be used for some other stuff indeed in a network stack. In modern versions, we have the JIT compiler, which compiles those programs for higher efficiency. EVPF in Linux appeared first in 2014, so it has been out there for quite a while, but it has still been very actively improved. And in the recent years, it's also been integrated in a pair of tooling, which is this wonderful framework for interactive performance analysis in Linux. If you look at the improvements in the recent kernels, you can see the list of changes in large, and pretty much every major or minor kernel release does include some additional features in EVPF, which can range from the new instrumentation points to the virus new types, right? What kind of data structures we can use, how we can process and aggregate those events. So as I mentioned, what EVPF is, is this kind of a special byte code, like a small programs, which you can go ahead and insert in the kernel, and which would be executed when different events are being triggered. What is great about the EVPF is what there is a checks done before those programs are included. So it's not impossible, but it is the hard to screw yourself up, right? So it is hard to write an EVPF program, right? The basic mistake when you boom, right? To insert it in the trace point and your system completely crashes, right? For example, if you just put like a tight loop in the EVPF program, it would not be, would not pass a validation and it would not be, wouldn't include. Right now, even for the EVPF itself is based on a byte code, the LLVMC LAN can compile the programs into that in the EVPF byte code, and that is what typically used for as a part of the EVPF platform. Now what is interesting in this case is what that compilation is, tend to be kernel dependent, right? And that is why the installation of EVPF is a little bit more involved, right? In a lot of cases. But for the good stuff with LLVM is that means few of us would actually run, need to run EVPF programs directly. Here is, if you're curious, EVPF code example, which actually comes from a TCP dump, which is another tool which uses EVPF, right, for packet filtering, and it has the need tool where you can actually dump the EVPF programs in what looks like the assembly-like code, right, for the byte code that represents. Okay. EVPF has support both on the kernel side and on the user side. And in this case, I have an image from a wonderful, wonderful resource of Brandon Gregg. If you are interested in EVPF on Linux and using that and tools, Brandon Gregg website has absolutely fantastic resource. But I think it's a very nice illustration out there. What we can see is, one way or another, we will have a user program to generate byte code, which will be verified by the kernel, right, through EVPF, it can connect to the different interfaces in kernels, right, from KPro, ViewPro, TrapsPoint, Perf events. And then what the map is, is what that kind of data structure which can be used to accumulate the performance statistics, right? That probe will run, accumulate data in this case, and then we can use, again, in the user space, some program to read that data in the map, in the display that, as you will actually see in the tools I'll show you. This is a very wonderful image, which shows you all kinds of different tools which can be used to troubleshoot or analyze different Linux kernels of system. And you can see that the EVPF ecosystem is large and there are already many tools which use EVPF so you don't have to write your own probes, right? Here is another wonderful image from the same source which really shows us in a different illustration what Linux kernel versions support, what kind of EVPF features. And I'm not spending a lot of time on that because I think these things are self-explanatory and you can research them later on on the slides. Here is also from Brandon's Greg, interesting, I get a picture which shows the different tools, right? It shows by how easy it is to use, right, to how mature it is. And you can see what there have been a lot of tools like raw BPF, for example, was pretty mature, but that's very bourgeois to use. And that's nice to use what we have in the tools in this kind of corner which become both easy to use, powerful and mature, right? So EVPF, I think, is now at that very great time in Linux kernel that is very powerful but at the same time very mature to use, okay? Now one thing I see from looking at EVPF tools is not all of them are available in the single package. The first two packages which you may want to look at would be Perth tools Unstable, right? Well, in Unstable version there are more stuff, right, for you to use. And then there's also this Iovizer project which has a tools like BCC and PLI which can be used for a lot of other kind of simple shell scripts and Iovize to provide those. So these are both pretty mature tools. You can get them to the installed relatively easily, right? In this case that's just example. You have a repository which has a packages which makes it relatively not too painful. Now I mentioned already, right? What EVPF depends on the kernel that is why you can see it has to pull in the kernel headers, right? To understand exactly data structures you're working in where exactly different offsets for different data and so on and so forth. Okay, let's now look at some tools in actions which are based on EVPF. The first one is Profiler, right? What Profile, and that's the name of the tool allows us to trace the given program and look at where different threads are in the stack. This is different, for example, from Perf because the tools like Perf they typically show you CPU usage. In this case you will see where threads are getting stuck where that is doing some CPU compute where they are stuck waiting on Vue checks, waiting on this guy or whatever which can be very helpful to understand okay, what exactly is going on in the program, right? Why it's not running so fast. Another cool tool is understanding your IO latency, right? Especially in modern storage in the cloud and so on and so forth. You often have to deal not with the averages but with the outliers. And this tool pretty much allows us to understand the latency of your, or of your blog device, right? We're in this case, it's kind of quite natural, right? We're not having a lot of outliers but this is actually interesting, right? We can see for this blog device we had one of the IO requests which took, what is it? I think that's microseconds, right? So that took two seconds to something to complete which is if you, for example, run in the database server and that happens to be something like your low flush request then it's bad, right? It will have a very bad impact here. And other which is a very nice tool which allows us to snoop the blog device IO, right? So if you ever wondered where your IO is sequential or if that's kind of random and what's not, you can rather easy to trace that with the tool, right? And then you can run some program easily, right? To analyze, plot, visualize your IO pattern in more details. This is the blog device. There are also tools to provide you the same information for file systems and there are different tools for, this is for EXT4, right? We can see how much file system main operations like read, write, FC, and take because again for all kind of different storage reasons as well as internal kernel reasons, we may see file systems causing stalls which can impact their operations, right? Of our programs, right? In which maybe hard to travel should IO-wise, right?  There is other tool which is related to that, right? And if you do not want to trace everything to build a histogram, you can also use this tool to understand what kind of IO operations do not meet your let's call it service level objective, right? So in this case, we can say, hey, what IO operations took more than 10 milliseconds, right? You can put obviously any number you want out there and that tells, well, you know what, there have been those, these are, these requests which have taken so much time. Now, another interesting statistics, right? For me, I was always wondering, right? Well, Linux has this cache, right? But how efficient that is really, right? How do I really see, do I have a note of hits, right? If I have more memory in the cache, is it really getting more hits or less? Well, with EVPF, you can do that, right? There is a cache start tool which shows me how many total requests have been reading from a cache, right? How many hits misses, how many blocks has been dotted, right? And so on, right? And that really can help you to understand your cache performance. Another interesting thing, so if you look at your applications, which are a CPU or CPU bound, right? One of the critical items in terms of where they would be responsive and perform well is when the application is ready to run, how long does it take Skeru to find the CPU to actually schedule it on, right? Because if all the CPUs are busy, then you'll have to wait until the CPU becomes available, right, or preempted and so on and so forth. This tool allows you to actually see that from a run queue delay profile and you can see how long it takes before the program became ready to run to its scheduled. Which is, I think, a very cool way to understand where you're having the CPU saturation, right? It's much better than just looking at your CPU usage averages, right? Okay, the next one. If you ever wondered for your program, right, which you have maybe not in the shell, but in some more complicated languages, what are the tools and other stuff it executes, right? Well, there is this wonderful tool called ExactSnoop where you can look wherever for a whole system or for a specific program, what are different programs that are being started, right? And that can help you to understand what the program does better, or if there are some problem, something fails, you can often figure that out, right, from this tool. The next one is Opened Files. That, I think, is another also very helpful thing. I find that helpful when programs do not have diagnostic error messages set very well. It says, oh, there is an IO error, or can't find a file, what file, right? I mean, some Linux programs are getting the error messages which are as bad as the Windows errors, right? So that allows you to deal with those programs because you can understand what files are the programs accessing, right? And from that you can often infer what could possibly go wrong and travel through that, right? Besides files, you can also trace what the programs connect to in your system, right? This allows us to help to trace the TCP connections where outgoing TCP connections in your system, which, again, can be very helpful to understand how programs work and how troubleshoot them as needed. This one I find a very cool one, right? So in many cases, what we see with database troubleshooting, right? For example, somebody complains, hey, the query is slow, but the query should not be slow, right? Because if you look at the logs at the, let's say, MySQL side, and it's all fast application, it's slow, right? Possibly that was communicated because of some network issues, right? In a lot of the modern networks, the latency you would see is being quite good, but if you have some packet being dropped and retransmit happened, then that can introduce a huge delays before the internet communication. The first two, you can actually see what exactly network retransmit happened, not just in aggregates, which you can get from net stuff, but for specific connections. And then for those specific connections, I can also understand what program write application if a user was involved out there. The next one, DNS lookup. That is a latency measurement, also sometimes not easy to figure out, and I think it's often missing this, not taking account, but DNS lookup may be a huge performance impact for you connecting to the service. Here are all the tools which are available in the version of BCCI used, and those tools are constantly being developed and extended. Moving on, for PLI, that is an other tool, which is wonderful to get some additional scripting, if you want, besides running custom tools. For example, you can run this kind of simple probe, which can say, hey, I'm connecting to this kernel C-Score, and give me the histogram of very toned values. Relatively simple, gives us a beautiful chart. That is example of a PLI language. It uses a custom language, but if you do the program, that is a not too hard language to learn and understand. Okay, this is all the tools I showed you, which are based on kind of real-time troubleshooting analysis, which is wonderful, but what if you want to have some stats you want to analyze in the past? Yes, and there is a tool for that, which the state of art, I believe in this case, is cloud players, EVPF exporter, which is, as the name says, exporter for Prometheus, so you can get pretty much any data from EVPF in a Prometheus, which you can do wherever you can plot it. You can use an alert manager and do all the other good stuff. Now, here is a nice graph in this case, which I took from a cloud player layer stock, which tells us what, while all of those things, they have the same average value on both axes, these are completely different pictures. If you haven't seen that image, I think that's kind of quite cool. That is why we need to go beyond the averages and even the mean values to really understand the histogram. So if you look at EVPF exporter, it uses BCC library to get the data in pretty much, you can take the data from BCC programs and output that in a Prometheus format. One thing you have to be careful running exporter in a production is the overhead. So if you put, for example, a very complex probe, and if you put that on a very common operations that which you run in millions of times a second, you can have quite an overhead. As you can see, closed layer guys measure that can be way over 100%. So be careful what you run in production versus what you run in a test or you only enable when a system is not healthy. So for EVPF exporter, there are boundaries available. You can get that and also provide the configuration information. You can plug it in in a standard Prometheus, of course. I also show you how to integrate that with our open source monitoring tool called PMM where you can pretty much as an external exporter. And what you can get in this case here as example is a IO latency histogram. Just the same as I showed you early on in the presentation which we can then go ahead and plot as a IO histogram over time to visualize that in Grafana. And that can be used for us, for example, to help us to understand the outliers. Like, well, you know what, in this case, we had some requests which have been taken more than 33 millisecond, which is kind of slow for this SSD storage in this day and age. Okay, so what's coming in a BPF? What I'm very excited in BPF is BPF trace which is kind of in this style is very featureful de-trace replacement. Right now it is quite, it is not quite mature yet in terms of having the packages available, but it is really getting there. And I would say that probably would be one of the very powerful BPF tools in the next year or two. Here is for reading list, right? As I prepared, I went through a lot of articles. I thought I'll just leave it on the slide. And that's it. I think I have exactly a minute and a half for questions. Please remain seated. Do we have any questions? Any questions? Any questions? That was so unclear, no questions, right? Yeah. Yes, so the new tools appear and there are de-trace, F-trace, L-T-N-G, tons of that 15. Which ones are likely to go away? Maybe you have compared them. Well, that is a good question, right?  And I say, well, de-trace was wonderful, but it's kind of dead, right? I mean, de-trace is available, for example, in Oracle Linux. But how many of you here are running Oracle Linux? To prove a point, right? So in this case, I believe what the EBPF, at this point, is the leading monitor-tracing instrumentation framework for Linux for this kind of advanced instrumentation use case, which is there to stay, right? And I think that is where the future is. Makes sense? I have a question, which is a lot of these tools seem very, very useful to run in production systems because that's where you find the really weird problems that you cannot debug and reproduce anywhere. But the question is, I always see these things running as root and being advertised as unstable. So is there a better way for me to not be running things that are marked as unstable under root on my production system? Oh, well, if you... Well, there are many ways, right? But I mean, in the end, if you are inserting some, you know, custom code into a kernel, right?  And as I mentioned, the performance overhead at least, right? While EBPF is designed to avoid you crashing the kernel, you can make it run multiple times slower, right, in this case. So in this case, that is advanced monitoring tools, right, which have to be done. Now, what I would imagine in this case, right, if you want your developers to do, then build the safe tools, right, and let them only to run those from sudo, right, or something for that particular use cases that actually you are authorized. That's what I would think. You have presented a couple of tools which are quite similar in the... well, in the target that they can do with S-rays, for instance. So how do they compare to S-rays? And do you think S-rays should be rewritten in order to leverage EBPF capabilities? The great question is how is that... is that compares to S-rays, right? The overhead.  So should we rewrite S-rays to leverage EBPF? Well, you know, possibly, right? I'm not sure. Maybe there is actually work to do that already, right? But in general, for the tools, right, the overhead, I think, right now is the main difference with what you can do with S-rays. Any more questions? Oh, you're getting your exercise here, right? Up and down, up and down. It's good for me. Yeah, you can... How do you have that? We actually put histogram data of the audio coming off the microphones. Oh, that's very cool. Yeah, so my question is to the audience and to the speaker, is anybody using this in production now? The exporter. No. Yeah, Cloudflare has an exporter, right? I mean, there is, if you look at... There is a lot of people writing about using that in production, right? I know that Brandon Gregg uses that very accurately at Netflix, right? But he's using the tools individually at runtime, not the exporter. No exporter. Yeah, I'm actually running the exporter in production. Oh, yes, asking about the exporter. Yeah, that is a good... So I would have raised my hand to my own question. But I was just wondering if anybody else... Oh, you use the exporter in production. Yes, and it's not 23% slower. I've benchmarked it as well. It's pretty close. Yeah, what I'm saying again is you have to be smart with probe you set up, right?  As with many other stuff, I don't think it's like... Any other questions? Okay, well, thank you.


We now move on to where President Bola Tenubu has tasked security and intelligence agencies to share information among themselves, saying hoarding such resources could be counterproductive in the fight against terrorism. The President stated this after undertaking a tour of the new office of the National Security Advisor and facilities at the National Counter-Terrorism Center and CTC in Abuja. The role of you is not unique to Nigeria alone, it's across the world, and we have to fight it. We have to eliminate it completely. It's a demonstration of intelligent effort to counter-terrorism, in order to be backed by knowledge. It's counter-terrorism that is not backed by knowledge, it's not going to be of any service to any nation. You cannot have a disability in an orchestra of this security plan. We must focus on wantonium, coordinate shared information, shared intelligence, coordinates and work harder than you cannot hoard those information. You cannot hoard the intelligence to succeed. I'm glad Nigeria is on path to succeed. We will win, and I assure you, and we'll make it a priority. And that is why I'm here this morning, a first visit. I commend your efforts and with you, let me know what you need and what you want me to do.


What is it, Irma? Uh, I think I'll have my wisdom tooth taken out. Why? Has it been bothering you? No, but it doesn't seem to be doing me any good. That's what you can expect when you listen to my friend Irma. Friendship, friendship, just perfect friendship When other friendships have been forgot, theirs will still be hard. Lever Brothers Company, makers of swan, the soap with the exclusive supercream Glenn presents... ...with my friend Irma. Starring Murray Wilson as Irma and Kathy Lewis as Jane. Need a vacation. Me, Jane Stacey, I feel that I need two. You know why? Not only have I worked hard for the past year, but I've been doing something that no one else would dare to do. I've been living with Irma Peterson. Believe me, after a year of living with Irma Peterson, you'd be happy to spend your vacation in the Siberian salt mine. And don't get me wrong, because I love Irma.  For instance, for the past few days, Irma and I have been discussing our vacation plans, and what is she doing? She is standing in the middle of the room exercising vigorously with a pair of dumbbells. Irma, why did you suddenly decide to lose weight? Well, when you travel, you should travel light. Honey, he didn't mean it that way. How about helping me look through these travel folders so we can find a place before our vacation is over? All right, Jane. See, this looks like a nice place for our vacation. Where? Here, at this modernistic hotel. Let me see, honey. Oh, honey, that's the great pyramid in Egypt. It's over 2,000 years old. Then the rate should be reasonable. Oh, sweetie, you don't understand. It's a monument. Find something else, huh? All right, let me see. Oh, I like this place. Let's look. Irma, that's the leaning tower of Pisa. How'd you get that way, Jane? I don't know. Your boyfriend Al probably thought it was a pinball machine and killed it. Come on, sweetie, we have to look through the folder. All right. See, this sounds nice. Really? Let me read it. A vacation paradise. A place where Mother Nature has outdone herself to make this wonderland a riot of spectacular color. Yes, even this cannot compare with the food at McGivney's Seafood Palace in the heart of Rockaway. Oh, no. Irma, this is the front cover of a menu. Well, here's one.  Irma, that's Sequoia's. It's a memory that will live forever as you spend two weeks deep in it. Here are the alligators. It's Allegheny's, which is the home of the irritable Indian. That's Iroquois.  Oh, Mr. Clyde doesn't mind much. Zach, I know he likes me. You know, once he heard in the paper that a girl named Irma Peterson committed suicide, he went right out and got drunk. He was so upset he ordered champagne for the whole staff. Yeah. Yeah, I remember, then he found out you were alive, so he stayed drunk.  Ah, Jane, maybe we oughtn't to go away at all. Why not? Oh, miss my Al. Ah, so what? Oh, I'm liable to lose him. You know, there are three girls for every two men. What about it? Oh, where will I find an apartment for five people? Jane, hello, Irma. Hello, Richard. Hello. Oh, Jane, have you and Irma decided where you're going on your vacation? Not yet, Richard. Oh, good. I have a wonderful plan. You know, businesses are sort of quiet this time of the year, so I thought if Al could make it, he and I could join you. Oh, Richard, that's wonderful. Well, uh, I don't know about Al. I don't think he'll go unless he can pay his own way. Well, fine. What if he pays his own way? It can't go. Well, now don't worry about it, Irma. Al will be bunking with me and it won't cost him anything.  I could hug you for that. I'll take you up on that when we go for our first canoe ride. Well, as long as you haven't picked a place, there's the Hotel Del Mar overlooking the Blue Pacific. Or if you don't want to go that far, there's the Moose Head Lodge up in Maine. The Moose Head Lodge? Mm-hmm. Oh, Richard, that's very exclusive. Gee, I know they'll take you, but I'm afraid Irma and I won't have a chance. Oh, I know they're a little snooty, but I'm sure that if you write them an impressive letter, you'll have no trouble at all. I'd write it myself, but I have a million things to do down at the office. All right, Richard, I'll do my best. Come in. Hello, Jane. Rich? Hiya, chicken. Well, girls, got the ideal spot pick for your vacation. Been going there for years. Hotel McAdam. Hotel McAdam? Certainly. Beautiful place and very exclusive. Matter of fact, they're so fussy about who they let in, they got a sign in the lobby which says, all guests with a criminal record must show documentary proof that they have served their time and will not fight extradition if wanted in other states. Oh, Al. We're only kidding, chicken, but we really found a nice vacation spot. Now, Richard has already found a place for us to go to. Yes, it's on the coast of Maine overlooking the Blue Pacific. And Al, you're going too. Oh, nothing doing. You know I can't afford to. But I want you to be my guest. That's what I say, I can't afford to pass up your offer. Well, if it's all agreed, I'll run along. Oh, and don't forget to write that letter, Jane. I'll see you later. Bye. It's too Richard. We can all look forward to a swell vacation. A few kids will excuse me. I'll go in the bedroom, get some of my summer things ready for the cleaners. Chicken, it burns me up. What do you mean, honey? The way you let Richard do everything. Is there any reason why I can't pick the place? I got good taste. But don't look at me that way, chicken. I know I got one black shoe on and one brown one. Can't be helped. The landlord was coming up for the rent. I had a dress and a hurry. Oh, Al, I'm not criticizing you. It was just that Richard wants us to go to a lodge in Maine. Yeah, I know his taste. Must be one of those swanky joints where you have to take a shower before they let you in the pool. That's no place for a vacation. You don't feel at home. You go there for a good time and someone comes up and asks if you care to join in a round of croquettes. You don't feel like eating them chicken meatball. You're so naive. Croquette isn't a chicken meatball. It's French for knitting. Yeah, and what kind of food did they serve? Little sandwiches, cut in triangles. If you take more than 10 or 12, they give you a dirty look. It's not that I want you to, but why take chances to spend the good money for a snooty place? If you want the best advice on where to go for a vacation, you get it from one guy. Who else? Who else but... Hello, Joe. Got a problem. Want to get away from people. What do you suggest? Uh-huh. Uh-huh. Uh-huh. Uh-huh. Uh-huh. Sing-Sing or Alcatraz. You prefer Sing-Sing? They show better movies on Friday nights? No, Joe, want something less confining? Want a legitimate vacation spot? What you got? I'll ask her. Irma, how about Death Valley? Oh, I read about that. Isn't that where all the elephants go to die? Please, Joe. Joe, how do you get a trip to a snazzy place free? Yeah, hold it. Don't want to discuss it on this party line. I'll call you right back from payphone. Goodbye, noble friend. Chicken will be right back. Want to talk to Joe from the pay station downstairs? All right, Chloe. Chloe? Uh, I just want to know... I mean, I just want you to know... I gotta go where you are. We'll be back with a place to go. Well, Chloe... Have you seen my stationery? Uh, I want to get that letter off before... Oh. It's only me, Professor Kropatkin. Hello, Janie and Irma, my two little telescopes. One far-sighted, the other with a collapsible head. Excuse me, a little joke I picked up from an astronomer. Why, professor? Girls, have you got an extra comb, please? I'm in the middle of curling Mrs. O'Reilly's hair. Oh, sure, here you are. Janie, would you mind coming downstairs to Mrs. O'Reilly's room? I don't know whether I should make the curls large or small. Well, why don't you ask her, after all, it's her hair. This I know, but she's out shopping. Janie, tell me, did you and Irma decide where you are going on your vacation? Oh, yes, we're going to the Moose Head Lodge up in Maine. How about you, Professor? Are you planning on taking a vacation? Well, I was planning on it, Janie, but things didn't work out. I was going to sublet my room to a friend of mine from Pennsylvania, who's also taking a vacation. But when he came out to look at my room, he decided to have a better vacation if he stayed on the job. What kind of a job does he have? He's a coal miner. Tell me, Irma, what is Al going to do while you're away? Oh, Al will be with Richard, and they're both going to be at the same camp with Jan and me. That's nice. Well, girls, I'll see you before you go. I'll get to my room now and write a letter to the district attorney. He wants to be notified of every crime committed. Every crime? Yes, Mrs. O'Reilly is cooking dinner for me. Hello, Al, and goodbye. I'm just on my way out. Goodbye, Professor. Well, girls, we're all set. Joe found an ideal spot for our vacation. Now, just forget it, Al. I wouldn't go to any place that Joe suggested. Richard has started the wheel turning so we can get into the Moose Head Lodge. Well, if you'll excuse me, I want to go out and buy some impressive stationery so I can write a letter to them for reservation. I'll see you later, kids. Chicken will not let that dame push me around.  What do you mean, Al? Don't you want to go with us? Well, of course I do, chicken. But since Richard is footing my bill, I want to make sure we get in. But Jane's going to write a letter. Do not have confidence in Jane. Need more sophistication. Chicken, you and I will write that letter. Oh, Al, do you think we're doing the right thing? Sure, chicken. Jane and Richard will thank us forever. Oh, Al, I like the way you make up your mind to do things at a moment's notice. You're so repulsive. Chicken, that's impulsive. Oh, what's the difference, Al? I like you either way. That, ladies. The music for the first dance of a lovely evening and the violins are whispering a beauty hint to you. Only swan has that super-cream blend. That's important. Swan soap does give you something no other soap can offer. Swan differs from other soap. You know it does because you can feel the difference just by running your fingers close to it. You can feel the difference just by running your fingers over a cake of swan. You can feel that extra smoothness, the direct result of swan super-cream blend, then feel that wonderful super-creamed lather. Feel that rich, billowy swan lather.  This swan lather cleanses so gently, so thoroughly and then rinses away so completely that it leaves your skin looking softer, smoother, younger. Yes, you'll find out that the swan lather is a young lather. You'll see new beauty in your skin. So please don't forget. Only swan has that super-cream blend. A letter to the Moosehead Lodge asking for reservations for the four of us. You know, my conscience bothers me. I described Al and Irma as the perfect lady and gentleman. Now I know what's going to happen. Someone will say to Al, would you care to indulge in a little park cheesy? Al will say. Park cheesy? By all means. Would you mind putting it on a cracker phone? As soon as we get to the Moosehead Lodge, someone will say to Irma, would you care for a night cat? And Irma will say, no thanks, I'd like to see bald-headed. I'm glad the two of them are not here as I write this letter. I'm taking no chances on Al and Irma coming up the work. So little Jane Stacey, personally, dropping this letter in the mailbox, special delivery. Good. Don't want to around making wisecracks while I'm dictating this letter, but Moosehead Lodge. Got your notebook, chicken? Yes, Al. When you type it, keep a copy. So we'll have a copy of what we said. All right, Al. Now, shall I say gentlemen or dear sir? Chicken, we want to impress this lodge that we're swank people, so use swank terms. Write, um, your highness. My dear, your highness. Good. We wish to make a reservation at your lodge for the coming semester for four people, or as you might say, a group of quadruped. We wish to assure you that we are very high class. You got that, chicken? Al, how do you spell your highness? Chicken, got to write fast. My mind is clicking. These creative thoughts come and go. Oh, I'm sorry, Al. Just say we desire reservations for four people. Well, how will they know we're high class? Uh-huh. I'm coming to that. New paragraph. I don't know how to spell paragraph. Chicken, you don't write. You just zip it in a little. Oh, all right, Al. Okay, take this. Do not think that we are just common people. We have been to many swank places. We have been to England during the cricket shooting season. Sojourned at Capistrano for a few swans. And shot peasants in the other glades. I'll put that we only shoot them in season so they'll know we're legitimate people. Good thought, chicken. Continue. As for our friends, we have mingled only with the best. I personally am related to Count Alfons of Scandia. Of course, I'm only related to the Count by marriage, what you might call a blood count. But almost daily, Rob Sholders with such intimate friends as bankers and authors and... Oh, yes, President Hoover, statesman, scholar, and incidentally inventor of the vacuum cleaner. Yeah, you know everybody. Yes, chicken. Now let us continue. We all eat with knives and forks, especially when we eat on the European planet. And I am sure that you're alive. Since I sent that letter to Moosehead Lodge, and I expect an answer this morning, Irma, of course, is packed. Such packing you have never seen. At this moment, she is trying to pack a ukulele. What she informs me is waterproof. So being a normal person, I said, well, Irma, why would anyone want a waterproof ukulele? And Irma said, in case you get tired playing, you can paddle.  But now before I really blow my top, please tell me why are you putting ice cubes in your hat? Well, you know, when you're on a vacation under the moonlight summer breezes and you're with a man like Ella, I may want to keep a cool head. Oh, honey, forget about packing till we get that confirmation from the lodge, huh? Why don't you go see a movie? There are two new pictures playing right around the corner. On our merry way and dream girl. Well, I saw them with Al. Oh, you saw them. What are they about? I don't know. When Al and I go to the movies, we never look at the screen.  Well, I can't. I'm waiting for someone. Who, Irma? Oh, it isn't important.  You're expecting a letter? Oh, tiddly-dumb. That's a pretty good answer. Hiya, chicken. Any sign of the mailman yet? No, Al. Maybe we should have sent a special delivery like Jane did. Mixed chicken? What else is no Jane? Just a minute. Wait just a minute. Did the two of you by any chance write a letter to Moose Head Lodge? Uh, yeah. Say, tiddly-dumb, Al. I'd always stop there. Irma, let me handle this. Look at me, Al. There's nothing wrong, Jane. Well, then why are you and Irma looking at each other like that? Well, uh...  What about it? Chicken and I are doing a little bookkeeping. Irma Peterson answered me. Did you have the audacity to write a separate letter to Moose Head Lodge? Well, yes, Jane, but when you read it, you'll see that we will be admitted at once. Look, here's your carbon copy. Let me see that. Oh. Not only are we friends of President Hoover, but we have often been invited by the Vanderbilt to go yachting in their solarium and drink grouse. Oh, no. Subtle but effective, Jane. Continue. The family of my fiance, Irma Peterson, has spent a great deal of time abroad. And I can modestly say that my own family has done time in America. Chicken, I think Jane is getting a little pale. So what? You'll get a color back at Moose Head Lodge. Moose Head Lodge, both of you must be kidding. Believe me, after this letter, if we showed up there, they'd have our heads on the wall.  Hello, girls. Hello, Al. Hi, Mrs. O'Reilly. Hello, Mrs. O'Reilly. Jane, this letter just came for you. Thank you. Well, girls, I've got to get back to my room. The professor curled me transformation, and now it's drying on the windowsill. And I want to get it inside before a bird builds a nest in it. Jane, is that letter from Moose Head Lodge? Yes. Why didn't you open it? What's the use? Oh, go on, open it, Jane. All right. Dear Miss Stacy, we regret we cannot give you accommodations at this time as no reservations are available, sincerely Moose Head Lodge. Well, there goes our vacation in Maine. Do you know why? No, Jane, but go ahead. We're paying attention.  What will Richard say? Well, we're sorry, Jane. Well, you're always sorry. You were sorry when you sewed suspenders on my brand new strapless evening gown. You were sorry when you tied firecrackers on my hair because I said I wanted to see how I'd look with bangs. You're just always sorry. I saw anybody. Tell me me again, cravat. But, Janey, you're crying. Well, I've got something to cry about. Well, someone must have shown you a picture of my room. I'm only trying to cheer you up, Janey. Tell me what is wrong. Well, Irma and Al. Irma and Al, just tell me what we need, a doctor, a lawyer, or an undertaker. Now, wait a minute, Jane. I'll wait nothing. When Richard finds out what you've done, he will be ostracized. They can't do that. He's a citizen. Special delivery from Miss Stacy. Oh, thank you. Who's it from, Janey? It's another letter from Moosehead Lodge. They're probably suing us. Go on, go on, read it. What does it say, Janey? Well, it says, your second letter for reservations signed Al, Irma, Jane, and Richard Incorporated has so delighted our committee that we beg you to forgive us for turning down your previous request. We feel that any group with such a sense of humor will give Moosehead Lodge that congenial, amiable atmosphere we so desire. And please give our regards to that great inventor, President Hoover. Jane, your eyes are popping. Well, Irma, Al, they like the letter. They want us to come up. Oh, Al, how can I ever thank you? Oh, don't thank me, Jane. The chicken belongs to the credit. Well, Irma, how in the world did you ever work it? Oh, simple. Jane, you see, Richard had an idea in his head.  Al had an idea in his head. It was easy for me because I could think I had nothing in my head. And you know, that's a bit of an understatement coming from the head of my friend Irma. Irma placing all our cakes of swan's soap on the windowsill with the window wide open. So I said, honey, what's the idea? And Irma said, well, it's been cooped up in the closet all day and I think a swan should get a chance to fly around a little for exercise. Well, that's quite a flight of pants. Even for Irma. But when she's serious, she's the first to say swan's perfect for complexion care. So ladies, get the large size cake of swan. You'll love the way it breaks easily into two beautiful white cakes for your complexion. Then feel your cake of swan. Notice how extra smooth it is. Swan's lather too feels different. Richer, creamier, smoother. A direct result of swan's super-creamed blend. So get the generous, large-sized cake of swan and use it always for your complexion. I'm happy Irma and I are practically in tears. We're anxious to go, but we're going to miss all our friends. Aren't we, Irma? Yes, Jane. Very lucky girl to have so many wonderful friends. I'm so sad because you know what they say. Next to a dog a friend is a man's friend. I'm so sad because you know what they say. Next to a dog a friend is a man's best friend. Professor Kopakian and Mrs. Riley, we just came to say goodbye. Thank you, professor. And girl, you know, I haven't got much money, but I'd like to give you a little present to take with you. Oh, how nice. What is it, professor? Mrs. Riley. Oh, hush up, professor. Goodbye, girls. We're going to miss you.  The tears make my eyelash so clean wet. I have to put them on the radiator to dry. And that shrinks them. And all the time I thought you were wearing them as half mad.  The cab's waiting. Hi, everybody. Have a swell vacation. Oh, and that goes for me, too. Oh, if you get a postal card with my name on it and you don't know who it's from, just wait until I come back and I'll tell you. Bye. Bye, everybody. My friend Armour presented by Swan another fine product of Leverbrothers Company was produced by Ty Howard. Folks, this program is the last one for a short time while our cast, writers, and production personnel take a well-earned vacation. My friend Irma will return to the air again August 30th. And with star, Marie Wilson is Irma and Kathy Lewis is Jane. The part of Professor Kropotkin was played by Hans Connery. Frank Bingman speaking. Yes, there's a reason why Spry makes grand cakes. Spry has an amazing cake improver secret. Try the Spry one bowl away and be sure of lighter, finer, richer cakes every time. No other type of shortening has Spry's cake improver. For new cake-making success, try Spry's the pure, all-vegetable shortening. Remember, my friend Irma will return to the air on August 30th at the same time. This is CBS, the Columbia Broadcasting System. Thank you.