tar utility functions omg this is so boring I really hope I never have to write this code again