implemented op INPUT