main winsa winsb proba probb printintro getinputs proba probb winsa winsb simngames printsummary figure first-level structure chart for racquetball simulation characteristics of something and ignoring other details is called abstraction abstraction is the fundamental tool of design you might view the entire process of top-down design as systematic method for discovering useful abstractions second-level design now all we need to do is repeat the design process for each of the remaining components let' take them in order the printintro function should print an introduction to the program let' compose suitable sequence of print statements def printintro()print("this program simulates game of racquetball between two"print('players called "aand "bthe abilities of each player is'print("indicated by probability ( number between and that"print("the player wins the point when serving player always"print("has the first serve "notice the second line wanted to put double quotes around "aand "bso that the entire string is enclosed in apostrophes this function comprises only primitive python instructions since we didn' introduce any new functionsthere is no change to our structure chart now let' tackle getinputs we need to prompt for and get three valueswhich are returned to the main program againthis is simple to code def getinputs()returns the three simulation parameters probaprobb and eval(input("what is the prob player wins serve") eval(input("what is the prob player wins serve") eval(input("how many games to simulate")return abn notice that have taken some shortcuts with the variable names remembervariables inside of function are local to that function this function is so shortit' very easy to see what the three