rename to is_valid?