ignore main function