if we were finished creating fleetwe' probably leave create_fleet(as isbut we have more work to doso let' clean up the function bit here' create_fleet(with two new functionsget_number_aliens_x(and create_alien()game_ def get_number_aliens_x(ai_settingsalien_width)functions py """determine the number of aliens that fit in row ""available_space_x ai_settings screen_width alien_width number_aliens_x int(available_space_x ( alien_width)return number_aliens_x def create_alien(ai_settingsscreenaliensalien_number)"""create an alien and place it in the row ""alien alien(ai_settingsscreenv alien_width alien rect width alien alien_width alien_width alien_number alien rect alien aliens add(aliendef create_fleet(ai_settingsscreenaliens)"""create full fleet of aliens ""create an alien and find the number of aliens in row alien alien(ai_settingsscreenw number_aliens_x get_number_aliens_x(ai_settingsalien rect widthx create the first row of aliens for alien_number in range(number_aliens_x)create_alien(ai_settingsscreenaliensalien_numberthe body of get_number_aliens_x(is exactly as it was in create_fleet( the body of create_alien(is also unchanged from create_fleet(except that we use the alien that was just created to get the alien width at we replace the code for determining the horizontal spacing with call to get_ number_aliens_x()and we remove the line referring to alien_widthbecause that' now handled inside create_alien(at we call create_alien(this refactoring will make it easier to add new rows and create an entire fleet adding rows to finish the fleetdetermine the number of rows that fit on the screen and then repeat the loop (for creating the aliens in one rowthat number of times to determine the number of rowswe find the available vertical space by subtracting the alien height from the topthe ship height from the bottomand two alien heights from the bottom of the screenavailable_space_y ai_settings screen_height alien_height ship_height aliens