more precise conditions