using main_function_type = void(*)(int, char **)
main(int argc, char * argv, main_function_type main) -> void