main program to use