more flexible status check