fix bug in Cache
refactor Locale, non-finish