still works
ok yet
Final version