everything works but not perfect