main function
ignore classes