main function, 1st commit