added mutex wrapper implementation