Implementing image-less OP with options [always, optional, never]