not buggy last version non working functions commented out