more explicit conditions