add mutex wrapper