[MUSIC] >> Let's take a look now at a function that takes multiple arguments. This will allow us to show more or less information about a planet, right? That's what we're making it do here. And notice the type of the argument planet is the same as before. We just typed it a little bit different, with the keyboard, typed it out differently, okay? So, here we have Show Info. And instead of calling this argument planet, it's little bit tedious inside of our function to keep typing planet over and over again. So I'm just going to call this argument p, and that stands for planet. All right. It's of the same type in dictionary that takes the string for keys and any object for the values, right? Notice here, we use the dictionary literal syntax versus, in the previous one, we used this other syntax with the angle brackets. All right. And now, our two other arguments for this function, showsNumberofMoons, of type Bool. So showsNumberofMoons will be True or false. And showsMoonNames also of type Bool will be true or false. So this will let us control how much information we see about the planet. All right So, this is very similar logic to the example I just showed you. So I won't explain all of the logic in here. I'll just explain what's unique. So we have an if case here that says if shows number of moons equals true. So we can access the values that are passed into our functions through these arguments by using the name of the argument as we do with any other variable name. So, when I call this function, so for example, showInfoAboutMars, showsNumberOfMoons, and I set that to true here when I call it. So that will be passed into this argument showsNumberOfMoons will be equal to true. And down here when I use showsNumberOfMoons, then I can compare with the value that was passed into our function. So if showsMoons equals true, then do all of the logic that we just saw to make the info string, right? We don't call it info string here, but show the final string. The planet so-and-so has x number of moons. Or if it's only one moon, the planet so-and-so has one moon, right? With no s at the end. So that's a nice English sentence. Okay? So, otherwise, we don't have an else case here because if showsNumberOfMoons equals false, we just don't have to do anything, and of course, we won't see that information. Same here with showsMoonNames. We say ifShowsMoonNames equals true, then we can call the function that we made in the previous example just a few minutes ago, called showMoonsOfPlanet. And notice here that we're passing in the planet that this function contains, or excuse me, that this function received into another function. So let's look at that quickly. Here, I have my function showInfoAboutPlanet. We're calling it p right now. And this is going to be passed into this function by the caller. And now this function is actually the caller of the showMoonsOfPlanet function. We can pass in ourPlanet by just putting in p for the argument, the planet argument, of showMoonsOfPlanet. Okay. So, now that we have our functions set up to show the moon names and show the number of the moons or not, then we can call this function. So, showInfo. We're going to pass in the planet Mars. ShowsNumberOfMoons equals true, and showsMoonNames equals true. And we should see all that information. So, Here we go. Here's the information you asked for about the planet Mars. No information available for the names of the moons of planet Mars. Here's the information you asked for about planet Gaia. In the next line of code we pass in Earth, and we say showNumbrOfMoons equals false. And showNamesOfMoons equals true. So, the only moon of planet Gaia is called Luna. And I can pass in true for showsNumberOfMoons, and we should see that change in our console at the bottom. All right. So, we let our playground execute. Take a little bit of time, but we changed showsNumberOfMoons from false to true. And now we see here's the information we asked for. The planet Gaia has one moon, and the only moon of planet Gaia is called Luna. So the function performed as we expected it to. [MUSIC]