make all except main function