fix ampersand text bug and rearrange some functions