performing main.