reworked oi methods