add check fix bugs