Updated 3 Main Funcs