put mutexes behind unexported member