Finally, the meat of the program