removed all mutex, replaced with synchronized methods