make sure if fails, it will fail all