creates main and main_spec