a lot  of  bug  fix