who calls the main function?