need to fix bugs