opto-hyper functions