refactored unicode manager