add more failure cases