add various check