still have some bugs to repair