main func added