Function implementation --open