ICU-6798 merge r25633 into m4

X-SVN-Rev: 25634
diff --git a/source/common/unicode/udeprctd.h b/source/common/unicode/udeprctd.h
index f4fa8b8..dfe2f77 100644
--- a/source/common/unicode/udeprctd.h
+++ b/source/common/unicode/udeprctd.h
@@ -34,15 +34,15 @@
 #        define utrans_open utrans_open_DEPRECATED_API_DO_NOT_USE
 #        define utrans_unregister utrans_unregister_DEPRECATED_API_DO_NOT_USE
 #    else
-#        define ucol_getContractions_4_1.2 ucol_getContractions_DEPRECATED_API_DO_NOT_USE
-#        define ucol_getLocale_4_1.2 ucol_getLocale_DEPRECATED_API_DO_NOT_USE
-#        define ures_countArrayItems_4_1.2 ures_countArrayItems_DEPRECATED_API_DO_NOT_USE
-#        define ures_getLocale_4_1.2 ures_getLocale_DEPRECATED_API_DO_NOT_USE
-#        define ures_getVersionNumber_4_1.2 ures_getVersionNumber_DEPRECATED_API_DO_NOT_USE
-#        define utrans_getAvailableID_4_1.2 utrans_getAvailableID_DEPRECATED_API_DO_NOT_USE
-#        define utrans_getID_4_1.2 utrans_getID_DEPRECATED_API_DO_NOT_USE
-#        define utrans_open_4_1.2 utrans_open_DEPRECATED_API_DO_NOT_USE
-#        define utrans_unregister_4_1.2 utrans_unregister_DEPRECATED_API_DO_NOT_USE
+#        define ucol_getContractions_4_1 ucol_getContractions_DEPRECATED_API_DO_NOT_USE
+#        define ucol_getLocale_4_1 ucol_getLocale_DEPRECATED_API_DO_NOT_USE
+#        define ures_countArrayItems_4_1 ures_countArrayItems_DEPRECATED_API_DO_NOT_USE
+#        define ures_getLocale_4_1 ures_getLocale_DEPRECATED_API_DO_NOT_USE
+#        define ures_getVersionNumber_4_1 ures_getVersionNumber_DEPRECATED_API_DO_NOT_USE
+#        define utrans_getAvailableID_4_1 utrans_getAvailableID_DEPRECATED_API_DO_NOT_USE
+#        define utrans_getID_4_1 utrans_getID_DEPRECATED_API_DO_NOT_USE
+#        define utrans_open_4_1 utrans_open_DEPRECATED_API_DO_NOT_USE
+#        define utrans_unregister_4_1 utrans_unregister_DEPRECATED_API_DO_NOT_USE
 #    endif /* U_DISABLE_RENAMING */
 
 #endif /* U_HIDE_DEPRECATED_API */
diff --git a/source/common/unicode/udraft.h b/source/common/unicode/udraft.h
index 9b57cbe..7710703 100644
--- a/source/common/unicode/udraft.h
+++ b/source/common/unicode/udraft.h
@@ -24,52 +24,11 @@
 #ifdef U_HIDE_DRAFT_API
 
 #    if U_DISABLE_RENAMING
-#        define afkLanguageCode afkLanguageCode_DRAFT_API_DO_NOT_USE
-#        define armiScriptCode armiScriptCode_DRAFT_API_DO_NOT_USE
-#        define u_fclose u_fclose_DRAFT_API_DO_NOT_USE
-#        define u_feof u_feof_DRAFT_API_DO_NOT_USE
-#        define u_fflush u_fflush_DRAFT_API_DO_NOT_USE
-#        define u_fgetConverter u_fgetConverter_DRAFT_API_DO_NOT_USE
-#        define u_fgetc u_fgetc_DRAFT_API_DO_NOT_USE
-#        define u_fgetcodepage u_fgetcodepage_DRAFT_API_DO_NOT_USE
-#        define u_fgetcx u_fgetcx_DRAFT_API_DO_NOT_USE
-#        define u_fgetfile u_fgetfile_DRAFT_API_DO_NOT_USE
-#        define u_fgetlocale u_fgetlocale_DRAFT_API_DO_NOT_USE
-#        define u_fgets u_fgets_DRAFT_API_DO_NOT_USE
-#        define u_file_read u_file_read_DRAFT_API_DO_NOT_USE
-#        define u_file_write u_file_write_DRAFT_API_DO_NOT_USE
-#        define u_finit u_finit_DRAFT_API_DO_NOT_USE
-#        define u_fopen u_fopen_DRAFT_API_DO_NOT_USE
-#        define u_fprintf u_fprintf_DRAFT_API_DO_NOT_USE
-#        define u_fprintf_u u_fprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_fputc u_fputc_DRAFT_API_DO_NOT_USE
-#        define u_fputs u_fputs_DRAFT_API_DO_NOT_USE
-#        define u_frewind u_frewind_DRAFT_API_DO_NOT_USE
-#        define u_fscanf u_fscanf_DRAFT_API_DO_NOT_USE
-#        define u_fscanf_u u_fscanf_u_DRAFT_API_DO_NOT_USE
-#        define u_fsetcodepage u_fsetcodepage_DRAFT_API_DO_NOT_USE
-#        define u_fsetlocale u_fsetlocale_DRAFT_API_DO_NOT_USE
-#        define u_fsettransliterator u_fsettransliterator_DRAFT_API_DO_NOT_USE
-#        define u_fstropen u_fstropen_DRAFT_API_DO_NOT_USE
-#        define u_fungetc u_fungetc_DRAFT_API_DO_NOT_USE
-#        define u_snprintf u_snprintf_DRAFT_API_DO_NOT_USE
-#        define u_snprintf_u u_snprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_sprintf u_sprintf_DRAFT_API_DO_NOT_USE
-#        define u_sprintf_u u_sprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_sscanf u_sscanf_DRAFT_API_DO_NOT_USE
-#        define u_sscanf_u u_sscanf_u_DRAFT_API_DO_NOT_USE
-#        define u_vfprintf u_vfprintf_DRAFT_API_DO_NOT_USE
-#        define u_vfprintf_u u_vfprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_vfscanf u_vfscanf_DRAFT_API_DO_NOT_USE
-#        define u_vfscanf_u u_vfscanf_u_DRAFT_API_DO_NOT_USE
-#        define u_vsnprintf u_vsnprintf_DRAFT_API_DO_NOT_USE
-#        define u_vsnprintf_u u_vsnprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_vsprintf u_vsprintf_DRAFT_API_DO_NOT_USE
-#        define u_vsprintf_u u_vsprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_vsscanf u_vsscanf_DRAFT_API_DO_NOT_USE
-#        define u_vsscanf_u u_vsscanf_u_DRAFT_API_DO_NOT_USE
-#        define ucal_clone ucal_clone_DRAFT_API_DO_NOT_USE
-#        define ucal_getCanonicalTimeZoneID ucal_getCanonicalTimeZoneID_DRAFT_API_DO_NOT_USE
+#        define u_compareVersions u_compareVersions_DRAFT_API_DO_NOT_USE
+#        define u_strFromUTF32WithSub u_strFromUTF32WithSub_DRAFT_API_DO_NOT_USE
+#        define u_strToUTF32WithSub u_strToUTF32WithSub_DRAFT_API_DO_NOT_USE
+#        define u_versionFromUString u_versionFromUString_DRAFT_API_DO_NOT_USE
+#        define ucal_getKeywordValuesForLocale ucal_getKeywordValuesForLocale_DRAFT_API_DO_NOT_USE
 #        define ucal_getType ucal_getType_DRAFT_API_DO_NOT_USE
 #        define ucnvsel_close ucnvsel_close_DRAFT_API_DO_NOT_USE
 #        define ucnvsel_open ucnvsel_open_DRAFT_API_DO_NOT_USE
@@ -77,102 +36,79 @@
 #        define ucnvsel_selectForString ucnvsel_selectForString_DRAFT_API_DO_NOT_USE
 #        define ucnvsel_selectForUTF8 ucnvsel_selectForUTF8_DRAFT_API_DO_NOT_USE
 #        define ucnvsel_serialize ucnvsel_serialize_DRAFT_API_DO_NOT_USE
-#        define ucurr_countCurrencies ucurr_countCurrencies_DRAFT_API_DO_NOT_USE
-#        define ucurr_forLocaleAndDate ucurr_forLocaleAndDate_DRAFT_API_DO_NOT_USE
-#        define uloc_addLikelySubtags uloc_addLikelySubtags_DRAFT_API_DO_NOT_USE
-#        define uloc_getCharacterOrientation uloc_getCharacterOrientation_DRAFT_API_DO_NOT_USE
-#        define uloc_getLineOrientation uloc_getLineOrientation_DRAFT_API_DO_NOT_USE
-#        define uloc_minimizeSubtags uloc_minimizeSubtags_DRAFT_API_DO_NOT_USE
-#        define uregex_getMatchCallback uregex_getMatchCallback_DRAFT_API_DO_NOT_USE
-#        define uregex_getStackLimit uregex_getStackLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_getTimeLimit uregex_getTimeLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_hasAnchoringBounds uregex_hasAnchoringBounds_DRAFT_API_DO_NOT_USE
-#        define uregex_hasTransparentBounds uregex_hasTransparentBounds_DRAFT_API_DO_NOT_USE
-#        define uregex_hitEnd uregex_hitEnd_DRAFT_API_DO_NOT_USE
-#        define uregex_regionEnd uregex_regionEnd_DRAFT_API_DO_NOT_USE
-#        define uregex_regionStart uregex_regionStart_DRAFT_API_DO_NOT_USE
-#        define uregex_requireEnd uregex_requireEnd_DRAFT_API_DO_NOT_USE
-#        define uregex_setMatchCallback uregex_setMatchCallback_DRAFT_API_DO_NOT_USE
-#        define uregex_setRegion uregex_setRegion_DRAFT_API_DO_NOT_USE
-#        define uregex_setStackLimit uregex_setStackLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_setTimeLimit uregex_setTimeLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_useAnchoringBounds uregex_useAnchoringBounds_DRAFT_API_DO_NOT_USE
-#        define uregex_useTransparentBounds uregex_useTransparentBounds_DRAFT_API_DO_NOT_USE
+#        define ucol_getKeywordValuesForLocale ucol_getKeywordValuesForLocale_DRAFT_API_DO_NOT_USE
+#        define ucurr_getKeywordValuesForLocale ucurr_getKeywordValuesForLocale_DRAFT_API_DO_NOT_USE
+#        define ucurr_getPluralName ucurr_getPluralName_DRAFT_API_DO_NOT_USE
+#        define uloc_forLanguageTag uloc_forLanguageTag_DRAFT_API_DO_NOT_USE
+#        define uloc_toLanguageTag uloc_toLanguageTag_DRAFT_API_DO_NOT_USE
+#        define ulocdata_getCLDRVersion ulocdata_getCLDRVersion_DRAFT_API_DO_NOT_USE
+#        define ulocdata_getLocaleDisplayPattern ulocdata_getLocaleDisplayPattern_DRAFT_API_DO_NOT_USE
+#        define ulocdata_getLocaleSeparator ulocdata_getLocaleSeparator_DRAFT_API_DO_NOT_USE
+#        define uset_closeOver uset_closeOver_DRAFT_API_DO_NOT_USE
+#        define uset_openEmpty uset_openEmpty_DRAFT_API_DO_NOT_USE
+#        define uset_removeAllStrings uset_removeAllStrings_DRAFT_API_DO_NOT_USE
+#        define uspoof_areConfusable uspoof_areConfusable_DRAFT_API_DO_NOT_USE
+#        define uspoof_areConfusableUTF8 uspoof_areConfusableUTF8_DRAFT_API_DO_NOT_USE
+#        define uspoof_check uspoof_check_DRAFT_API_DO_NOT_USE
+#        define uspoof_checkUTF8 uspoof_checkUTF8_DRAFT_API_DO_NOT_USE
+#        define uspoof_clone uspoof_clone_DRAFT_API_DO_NOT_USE
+#        define uspoof_close uspoof_close_DRAFT_API_DO_NOT_USE
+#        define uspoof_getAllowedChars uspoof_getAllowedChars_DRAFT_API_DO_NOT_USE
+#        define uspoof_getAllowedLocales uspoof_getAllowedLocales_DRAFT_API_DO_NOT_USE
+#        define uspoof_getChecks uspoof_getChecks_DRAFT_API_DO_NOT_USE
+#        define uspoof_getSkeleton uspoof_getSkeleton_DRAFT_API_DO_NOT_USE
+#        define uspoof_getSkeletonUTF8 uspoof_getSkeletonUTF8_DRAFT_API_DO_NOT_USE
+#        define uspoof_open uspoof_open_DRAFT_API_DO_NOT_USE
+#        define uspoof_openFromSerialized uspoof_openFromSerialized_DRAFT_API_DO_NOT_USE
+#        define uspoof_openFromSource uspoof_openFromSource_DRAFT_API_DO_NOT_USE
+#        define uspoof_serialize uspoof_serialize_DRAFT_API_DO_NOT_USE
+#        define uspoof_setAllowedChars uspoof_setAllowedChars_DRAFT_API_DO_NOT_USE
+#        define uspoof_setAllowedLocales uspoof_setAllowedLocales_DRAFT_API_DO_NOT_USE
+#        define uspoof_setChecks uspoof_setChecks_DRAFT_API_DO_NOT_USE
+#        define usprep_openByType usprep_openByType_DRAFT_API_DO_NOT_USE
 #    else
-#        define afkLanguageCode_4_1.2 afkLanguageCode_DRAFT_API_DO_NOT_USE
-#        define armiScriptCode_4_1.2 armiScriptCode_DRAFT_API_DO_NOT_USE
-#        define u_fclose_4_1.2 u_fclose_DRAFT_API_DO_NOT_USE
-#        define u_feof_4_1.2 u_feof_DRAFT_API_DO_NOT_USE
-#        define u_fflush_4_1.2 u_fflush_DRAFT_API_DO_NOT_USE
-#        define u_fgetConverter_4_1.2 u_fgetConverter_DRAFT_API_DO_NOT_USE
-#        define u_fgetc_4_1.2 u_fgetc_DRAFT_API_DO_NOT_USE
-#        define u_fgetcodepage_4_1.2 u_fgetcodepage_DRAFT_API_DO_NOT_USE
-#        define u_fgetcx_4_1.2 u_fgetcx_DRAFT_API_DO_NOT_USE
-#        define u_fgetfile_4_1.2 u_fgetfile_DRAFT_API_DO_NOT_USE
-#        define u_fgetlocale_4_1.2 u_fgetlocale_DRAFT_API_DO_NOT_USE
-#        define u_fgets_4_1.2 u_fgets_DRAFT_API_DO_NOT_USE
-#        define u_file_read_4_1.2 u_file_read_DRAFT_API_DO_NOT_USE
-#        define u_file_write_4_1.2 u_file_write_DRAFT_API_DO_NOT_USE
-#        define u_finit_4_1.2 u_finit_DRAFT_API_DO_NOT_USE
-#        define u_fopen_4_1.2 u_fopen_DRAFT_API_DO_NOT_USE
-#        define u_fprintf_4_1.2 u_fprintf_DRAFT_API_DO_NOT_USE
-#        define u_fprintf_u_4_1.2 u_fprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_fputc_4_1.2 u_fputc_DRAFT_API_DO_NOT_USE
-#        define u_fputs_4_1.2 u_fputs_DRAFT_API_DO_NOT_USE
-#        define u_frewind_4_1.2 u_frewind_DRAFT_API_DO_NOT_USE
-#        define u_fscanf_4_1.2 u_fscanf_DRAFT_API_DO_NOT_USE
-#        define u_fscanf_u_4_1.2 u_fscanf_u_DRAFT_API_DO_NOT_USE
-#        define u_fsetcodepage_4_1.2 u_fsetcodepage_DRAFT_API_DO_NOT_USE
-#        define u_fsetlocale_4_1.2 u_fsetlocale_DRAFT_API_DO_NOT_USE
-#        define u_fsettransliterator_4_1.2 u_fsettransliterator_DRAFT_API_DO_NOT_USE
-#        define u_fstropen_4_1.2 u_fstropen_DRAFT_API_DO_NOT_USE
-#        define u_fungetc_4_1.2 u_fungetc_DRAFT_API_DO_NOT_USE
-#        define u_snprintf_4_1.2 u_snprintf_DRAFT_API_DO_NOT_USE
-#        define u_snprintf_u_4_1.2 u_snprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_sprintf_4_1.2 u_sprintf_DRAFT_API_DO_NOT_USE
-#        define u_sprintf_u_4_1.2 u_sprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_sscanf_4_1.2 u_sscanf_DRAFT_API_DO_NOT_USE
-#        define u_sscanf_u_4_1.2 u_sscanf_u_DRAFT_API_DO_NOT_USE
-#        define u_vfprintf_4_1.2 u_vfprintf_DRAFT_API_DO_NOT_USE
-#        define u_vfprintf_u_4_1.2 u_vfprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_vfscanf_4_1.2 u_vfscanf_DRAFT_API_DO_NOT_USE
-#        define u_vfscanf_u_4_1.2 u_vfscanf_u_DRAFT_API_DO_NOT_USE
-#        define u_vsnprintf_4_1.2 u_vsnprintf_DRAFT_API_DO_NOT_USE
-#        define u_vsnprintf_u_4_1.2 u_vsnprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_vsprintf_4_1.2 u_vsprintf_DRAFT_API_DO_NOT_USE
-#        define u_vsprintf_u_4_1.2 u_vsprintf_u_DRAFT_API_DO_NOT_USE
-#        define u_vsscanf_4_1.2 u_vsscanf_DRAFT_API_DO_NOT_USE
-#        define u_vsscanf_u_4_1.2 u_vsscanf_u_DRAFT_API_DO_NOT_USE
-#        define ucal_clone_4_1.2 ucal_clone_DRAFT_API_DO_NOT_USE
-#        define ucal_getCanonicalTimeZoneID_4_1.2 ucal_getCanonicalTimeZoneID_DRAFT_API_DO_NOT_USE
-#        define ucal_getType_4_1.2 ucal_getType_DRAFT_API_DO_NOT_USE
-#        define ucnvsel_close_4_1.2 ucnvsel_close_DRAFT_API_DO_NOT_USE
-#        define ucnvsel_openFromSerialized_4_1.2 ucnvsel_openFromSerialized_DRAFT_API_DO_NOT_USE
-#        define ucnvsel_open_4_1.2 ucnvsel_open_DRAFT_API_DO_NOT_USE
-#        define ucnvsel_selectForString_4_1.2 ucnvsel_selectForString_DRAFT_API_DO_NOT_USE
-#        define ucnvsel_selectForUTF8_4_1.2 ucnvsel_selectForUTF8_DRAFT_API_DO_NOT_USE
-#        define ucnvsel_serialize_4_1.2 ucnvsel_serialize_DRAFT_API_DO_NOT_USE
-#        define ucurr_countCurrencies_4_1.2 ucurr_countCurrencies_DRAFT_API_DO_NOT_USE
-#        define ucurr_forLocaleAndDate_4_1.2 ucurr_forLocaleAndDate_DRAFT_API_DO_NOT_USE
-#        define uloc_addLikelySubtags_4_1.2 uloc_addLikelySubtags_DRAFT_API_DO_NOT_USE
-#        define uloc_getCharacterOrientation_4_1.2 uloc_getCharacterOrientation_DRAFT_API_DO_NOT_USE
-#        define uloc_getLineOrientation_4_1.2 uloc_getLineOrientation_DRAFT_API_DO_NOT_USE
-#        define uloc_minimizeSubtags_4_1.2 uloc_minimizeSubtags_DRAFT_API_DO_NOT_USE
-#        define uregex_getMatchCallback_4_1.2 uregex_getMatchCallback_DRAFT_API_DO_NOT_USE
-#        define uregex_getStackLimit_4_1.2 uregex_getStackLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_getTimeLimit_4_1.2 uregex_getTimeLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_hasAnchoringBounds_4_1.2 uregex_hasAnchoringBounds_DRAFT_API_DO_NOT_USE
-#        define uregex_hasTransparentBounds_4_1.2 uregex_hasTransparentBounds_DRAFT_API_DO_NOT_USE
-#        define uregex_hitEnd_4_1.2 uregex_hitEnd_DRAFT_API_DO_NOT_USE
-#        define uregex_regionEnd_4_1.2 uregex_regionEnd_DRAFT_API_DO_NOT_USE
-#        define uregex_regionStart_4_1.2 uregex_regionStart_DRAFT_API_DO_NOT_USE
-#        define uregex_requireEnd_4_1.2 uregex_requireEnd_DRAFT_API_DO_NOT_USE
-#        define uregex_setMatchCallback_4_1.2 uregex_setMatchCallback_DRAFT_API_DO_NOT_USE
-#        define uregex_setRegion_4_1.2 uregex_setRegion_DRAFT_API_DO_NOT_USE
-#        define uregex_setStackLimit_4_1.2 uregex_setStackLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_setTimeLimit_4_1.2 uregex_setTimeLimit_DRAFT_API_DO_NOT_USE
-#        define uregex_useAnchoringBounds_4_1.2 uregex_useAnchoringBounds_DRAFT_API_DO_NOT_USE
-#        define uregex_useTransparentBounds_4_1.2 uregex_useTransparentBounds_DRAFT_API_DO_NOT_USE
+#        define u_compareVersions_4_1 u_compareVersions_DRAFT_API_DO_NOT_USE
+#        define u_strFromUTF32WithSub_4_1 u_strFromUTF32WithSub_DRAFT_API_DO_NOT_USE
+#        define u_strToUTF32WithSub_4_1 u_strToUTF32WithSub_DRAFT_API_DO_NOT_USE
+#        define u_versionFromUString_4_1 u_versionFromUString_DRAFT_API_DO_NOT_USE
+#        define ucal_getKeywordValuesForLocale_4_1 ucal_getKeywordValuesForLocale_DRAFT_API_DO_NOT_USE
+#        define ucal_getType_4_1 ucal_getType_DRAFT_API_DO_NOT_USE
+#        define ucnvsel_close_4_1 ucnvsel_close_DRAFT_API_DO_NOT_USE
+#        define ucnvsel_openFromSerialized_4_1 ucnvsel_openFromSerialized_DRAFT_API_DO_NOT_USE
+#        define ucnvsel_open_4_1 ucnvsel_open_DRAFT_API_DO_NOT_USE
+#        define ucnvsel_selectForString_4_1 ucnvsel_selectForString_DRAFT_API_DO_NOT_USE
+#        define ucnvsel_selectForUTF8_4_1 ucnvsel_selectForUTF8_DRAFT_API_DO_NOT_USE
+#        define ucnvsel_serialize_4_1 ucnvsel_serialize_DRAFT_API_DO_NOT_USE
+#        define ucol_getKeywordValuesForLocale_4_1 ucol_getKeywordValuesForLocale_DRAFT_API_DO_NOT_USE
+#        define ucurr_getKeywordValuesForLocale_4_1 ucurr_getKeywordValuesForLocale_DRAFT_API_DO_NOT_USE
+#        define ucurr_getPluralName_4_1 ucurr_getPluralName_DRAFT_API_DO_NOT_USE
+#        define uloc_forLanguageTag_4_1 uloc_forLanguageTag_DRAFT_API_DO_NOT_USE
+#        define uloc_toLanguageTag_4_1 uloc_toLanguageTag_DRAFT_API_DO_NOT_USE
+#        define ulocdata_getCLDRVersion_4_1 ulocdata_getCLDRVersion_DRAFT_API_DO_NOT_USE
+#        define ulocdata_getLocaleDisplayPattern_4_1 ulocdata_getLocaleDisplayPattern_DRAFT_API_DO_NOT_USE
+#        define ulocdata_getLocaleSeparator_4_1 ulocdata_getLocaleSeparator_DRAFT_API_DO_NOT_USE
+#        define uset_closeOver_4_1 uset_closeOver_DRAFT_API_DO_NOT_USE
+#        define uset_openEmpty_4_1 uset_openEmpty_DRAFT_API_DO_NOT_USE
+#        define uset_removeAllStrings_4_1 uset_removeAllStrings_DRAFT_API_DO_NOT_USE
+#        define uspoof_areConfusableUTF8_4_1 uspoof_areConfusableUTF8_DRAFT_API_DO_NOT_USE
+#        define uspoof_areConfusable_4_1 uspoof_areConfusable_DRAFT_API_DO_NOT_USE
+#        define uspoof_checkUTF8_4_1 uspoof_checkUTF8_DRAFT_API_DO_NOT_USE
+#        define uspoof_check_4_1 uspoof_check_DRAFT_API_DO_NOT_USE
+#        define uspoof_clone_4_1 uspoof_clone_DRAFT_API_DO_NOT_USE
+#        define uspoof_close_4_1 uspoof_close_DRAFT_API_DO_NOT_USE
+#        define uspoof_getAllowedChars_4_1 uspoof_getAllowedChars_DRAFT_API_DO_NOT_USE
+#        define uspoof_getAllowedLocales_4_1 uspoof_getAllowedLocales_DRAFT_API_DO_NOT_USE
+#        define uspoof_getChecks_4_1 uspoof_getChecks_DRAFT_API_DO_NOT_USE
+#        define uspoof_getSkeletonUTF8_4_1 uspoof_getSkeletonUTF8_DRAFT_API_DO_NOT_USE
+#        define uspoof_getSkeleton_4_1 uspoof_getSkeleton_DRAFT_API_DO_NOT_USE
+#        define uspoof_openFromSerialized_4_1 uspoof_openFromSerialized_DRAFT_API_DO_NOT_USE
+#        define uspoof_openFromSource_4_1 uspoof_openFromSource_DRAFT_API_DO_NOT_USE
+#        define uspoof_open_4_1 uspoof_open_DRAFT_API_DO_NOT_USE
+#        define uspoof_serialize_4_1 uspoof_serialize_DRAFT_API_DO_NOT_USE
+#        define uspoof_setAllowedChars_4_1 uspoof_setAllowedChars_DRAFT_API_DO_NOT_USE
+#        define uspoof_setAllowedLocales_4_1 uspoof_setAllowedLocales_DRAFT_API_DO_NOT_USE
+#        define uspoof_setChecks_4_1 uspoof_setChecks_DRAFT_API_DO_NOT_USE
+#        define usprep_openByType_4_1 usprep_openByType_DRAFT_API_DO_NOT_USE
 #    endif /* U_DISABLE_RENAMING */
 
 #endif /* U_HIDE_DRAFT_API */
diff --git a/source/common/unicode/uintrnal.h b/source/common/unicode/uintrnal.h
index 7911f19..daad4a1 100644
--- a/source/common/unicode/uintrnal.h
+++ b/source/common/unicode/uintrnal.h
@@ -25,6 +25,14 @@
 
 #    if U_DISABLE_RENAMING
 #        define RegexPatternDump RegexPatternDump_INTERNAL_API_DO_NOT_USE
+#        define bms.h bms.h_INTERNAL_API_DO_NOT_USE
+#        define bms_empty bms_empty_INTERNAL_API_DO_NOT_USE
+#        define bms_getData bms_getData_INTERNAL_API_DO_NOT_USE
+#        define bms_open bms_open_INTERNAL_API_DO_NOT_USE
+#        define bms_search bms_search_INTERNAL_API_DO_NOT_USE
+#        define bms_setTargetString bms_setTargetString_INTERNAL_API_DO_NOT_USE
+#        define bmsearch.h bmsearch.h_INTERNAL_API_DO_NOT_USE
+#        define colldata.h colldata.h_INTERNAL_API_DO_NOT_USE
 #        define pl_addFontRun pl_addFontRun_INTERNAL_API_DO_NOT_USE
 #        define pl_addLocaleRun pl_addLocaleRun_INTERNAL_API_DO_NOT_USE
 #        define pl_addValueRun pl_addValueRun_INTERNAL_API_DO_NOT_USE
@@ -81,7 +89,13 @@
 #        define pl_resetLocaleRuns pl_resetLocaleRuns_INTERNAL_API_DO_NOT_USE
 #        define pl_resetValueRuns pl_resetValueRuns_INTERNAL_API_DO_NOT_USE
 #        define pl_visualRun pl_visualRun_INTERNAL_API_DO_NOT_USE
+#        define ucd_close ucd_close_INTERNAL_API_DO_NOT_USE
+#        define ucd_flushCache ucd_flushCache_INTERNAL_API_DO_NOT_USE
+#        define ucd_freeCache ucd_freeCache_INTERNAL_API_DO_NOT_USE
+#        define ucd_getCollator ucd_getCollator_INTERNAL_API_DO_NOT_USE
+#        define ucd_open ucd_open_INTERNAL_API_DO_NOT_USE
 #        define ucol_equals ucol_equals_INTERNAL_API_DO_NOT_USE
+#        define ucol_forceHanImplicit ucol_forceHanImplicit_INTERNAL_API_DO_NOT_USE
 #        define ucol_forgetUCA ucol_forgetUCA_INTERNAL_API_DO_NOT_USE
 #        define ucol_getAttributeOrDefault ucol_getAttributeOrDefault_INTERNAL_API_DO_NOT_USE
 #        define ucol_getUnsafeSet ucol_getUnsafeSet_INTERNAL_API_DO_NOT_USE
@@ -99,80 +113,94 @@
 #        define utf8_nextCharSafeBody utf8_nextCharSafeBody_INTERNAL_API_DO_NOT_USE
 #        define utf8_prevCharSafeBody utf8_prevCharSafeBody_INTERNAL_API_DO_NOT_USE
 #    else
-#        define RegexPatternDump_4_1.2 RegexPatternDump_INTERNAL_API_DO_NOT_USE
-#        define pl_addFontRun_4_1.2 pl_addFontRun_INTERNAL_API_DO_NOT_USE
-#        define pl_addLocaleRun_4_1.2 pl_addLocaleRun_INTERNAL_API_DO_NOT_USE
-#        define pl_addValueRun_4_1.2 pl_addValueRun_INTERNAL_API_DO_NOT_USE
-#        define pl_closeFontRuns_4_1.2 pl_closeFontRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_closeLine_4_1.2 pl_closeLine_INTERNAL_API_DO_NOT_USE
-#        define pl_closeLocaleRuns_4_1.2 pl_closeLocaleRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_closeValueRuns_4_1.2 pl_closeValueRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_close_4_1.2 pl_close_INTERNAL_API_DO_NOT_USE
-#        define pl_countLineRuns_4_1.2 pl_countLineRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_create_4_1.2 pl_create_INTERNAL_API_DO_NOT_USE
-#        define pl_getAscent_4_1.2 pl_getAscent_INTERNAL_API_DO_NOT_USE
-#        define pl_getDescent_4_1.2 pl_getDescent_INTERNAL_API_DO_NOT_USE
-#        define pl_getFontRunCount_4_1.2 pl_getFontRunCount_INTERNAL_API_DO_NOT_USE
-#        define pl_getFontRunFont_4_1.2 pl_getFontRunFont_INTERNAL_API_DO_NOT_USE
-#        define pl_getFontRunLastLimit_4_1.2 pl_getFontRunLastLimit_INTERNAL_API_DO_NOT_USE
-#        define pl_getFontRunLimit_4_1.2 pl_getFontRunLimit_INTERNAL_API_DO_NOT_USE
-#        define pl_getLeading_4_1.2 pl_getLeading_INTERNAL_API_DO_NOT_USE
-#        define pl_getLineAscent_4_1.2 pl_getLineAscent_INTERNAL_API_DO_NOT_USE
-#        define pl_getLineDescent_4_1.2 pl_getLineDescent_INTERNAL_API_DO_NOT_USE
-#        define pl_getLineLeading_4_1.2 pl_getLineLeading_INTERNAL_API_DO_NOT_USE
-#        define pl_getLineVisualRun_4_1.2 pl_getLineVisualRun_INTERNAL_API_DO_NOT_USE
-#        define pl_getLineWidth_4_1.2 pl_getLineWidth_INTERNAL_API_DO_NOT_USE
-#        define pl_getLocaleRunCount_4_1.2 pl_getLocaleRunCount_INTERNAL_API_DO_NOT_USE
-#        define pl_getLocaleRunLastLimit_4_1.2 pl_getLocaleRunLastLimit_INTERNAL_API_DO_NOT_USE
-#        define pl_getLocaleRunLimit_4_1.2 pl_getLocaleRunLimit_INTERNAL_API_DO_NOT_USE
-#        define pl_getLocaleRunLocale_4_1.2 pl_getLocaleRunLocale_INTERNAL_API_DO_NOT_USE
-#        define pl_getParagraphLevel_4_1.2 pl_getParagraphLevel_INTERNAL_API_DO_NOT_USE
-#        define pl_getTextDirection_4_1.2 pl_getTextDirection_INTERNAL_API_DO_NOT_USE
-#        define pl_getValueRunCount_4_1.2 pl_getValueRunCount_INTERNAL_API_DO_NOT_USE
-#        define pl_getValueRunLastLimit_4_1.2 pl_getValueRunLastLimit_INTERNAL_API_DO_NOT_USE
-#        define pl_getValueRunLimit_4_1.2 pl_getValueRunLimit_INTERNAL_API_DO_NOT_USE
-#        define pl_getValueRunValue_4_1.2 pl_getValueRunValue_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunAscent_4_1.2 pl_getVisualRunAscent_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunDescent_4_1.2 pl_getVisualRunDescent_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunDirection_4_1.2 pl_getVisualRunDirection_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunFont_4_1.2 pl_getVisualRunFont_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunGlyphCount_4_1.2 pl_getVisualRunGlyphCount_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunGlyphToCharMap_4_1.2 pl_getVisualRunGlyphToCharMap_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunGlyphs_4_1.2 pl_getVisualRunGlyphs_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunLeading_4_1.2 pl_getVisualRunLeading_INTERNAL_API_DO_NOT_USE
-#        define pl_getVisualRunPositions_4_1.2 pl_getVisualRunPositions_INTERNAL_API_DO_NOT_USE
-#        define pl_isComplex_4_1.2 pl_isComplex_INTERNAL_API_DO_NOT_USE
-#        define pl_line_4_1.2 pl_line_INTERNAL_API_DO_NOT_USE
-#        define pl_nextLine_4_1.2 pl_nextLine_INTERNAL_API_DO_NOT_USE
-#        define pl_openEmptyFontRuns_4_1.2 pl_openEmptyFontRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_openEmptyLocaleRuns_4_1.2 pl_openEmptyLocaleRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_openEmptyValueRuns_4_1.2 pl_openEmptyValueRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_openFontRuns_4_1.2 pl_openFontRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_openLocaleRuns_4_1.2 pl_openLocaleRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_openValueRuns_4_1.2 pl_openValueRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_paragraph_4_1.2 pl_paragraph_INTERNAL_API_DO_NOT_USE
-#        define pl_reflow_4_1.2 pl_reflow_INTERNAL_API_DO_NOT_USE
-#        define pl_resetFontRuns_4_1.2 pl_resetFontRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_resetLocaleRuns_4_1.2 pl_resetLocaleRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_resetValueRuns_4_1.2 pl_resetValueRuns_INTERNAL_API_DO_NOT_USE
-#        define pl_visualRun_4_1.2 pl_visualRun_INTERNAL_API_DO_NOT_USE
-#        define ucol_equals_4_1.2 ucol_equals_INTERNAL_API_DO_NOT_USE
-#        define ucol_forgetUCA_4_1.2 ucol_forgetUCA_INTERNAL_API_DO_NOT_USE
-#        define ucol_getAttributeOrDefault_4_1.2 ucol_getAttributeOrDefault_INTERNAL_API_DO_NOT_USE
-#        define ucol_getUnsafeSet_4_1.2 ucol_getUnsafeSet_INTERNAL_API_DO_NOT_USE
-#        define ucol_nextProcessed_4_1.2 ucol_nextProcessed_INTERNAL_API_DO_NOT_USE
-#        define ucol_prepareShortStringOpen_4_1.2 ucol_prepareShortStringOpen_INTERNAL_API_DO_NOT_USE
-#        define ucol_previousProcessed_4_1.2 ucol_previousProcessed_INTERNAL_API_DO_NOT_USE
-#        define uprv_getDefaultCodepage_4_1.2 uprv_getDefaultCodepage_INTERNAL_API_DO_NOT_USE
-#        define uprv_getDefaultLocaleID_4_1.2 uprv_getDefaultLocaleID_INTERNAL_API_DO_NOT_USE
-#        define ures_openFillIn_4_1.2 ures_openFillIn_INTERNAL_API_DO_NOT_USE
-#        define usearch_searchBackwards_4_1.2 usearch_searchBackwards_INTERNAL_API_DO_NOT_USE
-#        define usearch_search_4_1.2 usearch_search_INTERNAL_API_DO_NOT_USE
-#        define utf8_appendCharSafeBody_4_1.2 utf8_appendCharSafeBody_INTERNAL_API_DO_NOT_USE
-#        define utf8_back1SafeBody_4_1.2 utf8_back1SafeBody_INTERNAL_API_DO_NOT_USE
-#        define utf8_countTrailBytes_4_1.2 utf8_countTrailBytes_INTERNAL_API_DO_NOT_USE
-#        define utf8_nextCharSafeBody_4_1.2 utf8_nextCharSafeBody_INTERNAL_API_DO_NOT_USE
-#        define utf8_prevCharSafeBody_4_1.2 utf8_prevCharSafeBody_INTERNAL_API_DO_NOT_USE
+#        define RegexPatternDump_4_1 RegexPatternDump_INTERNAL_API_DO_NOT_USE
+#        define bms.h_4_1 bms.h_INTERNAL_API_DO_NOT_USE
+#        define bms_empty_4_1 bms_empty_INTERNAL_API_DO_NOT_USE
+#        define bms_getData_4_1 bms_getData_INTERNAL_API_DO_NOT_USE
+#        define bms_open_4_1 bms_open_INTERNAL_API_DO_NOT_USE
+#        define bms_search_4_1 bms_search_INTERNAL_API_DO_NOT_USE
+#        define bms_setTargetString_4_1 bms_setTargetString_INTERNAL_API_DO_NOT_USE
+#        define bmsearch.h_4_1 bmsearch.h_INTERNAL_API_DO_NOT_USE
+#        define colldata.h_4_1 colldata.h_INTERNAL_API_DO_NOT_USE
+#        define pl_addFontRun_4_1 pl_addFontRun_INTERNAL_API_DO_NOT_USE
+#        define pl_addLocaleRun_4_1 pl_addLocaleRun_INTERNAL_API_DO_NOT_USE
+#        define pl_addValueRun_4_1 pl_addValueRun_INTERNAL_API_DO_NOT_USE
+#        define pl_closeFontRuns_4_1 pl_closeFontRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_closeLine_4_1 pl_closeLine_INTERNAL_API_DO_NOT_USE
+#        define pl_closeLocaleRuns_4_1 pl_closeLocaleRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_closeValueRuns_4_1 pl_closeValueRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_close_4_1 pl_close_INTERNAL_API_DO_NOT_USE
+#        define pl_countLineRuns_4_1 pl_countLineRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_create_4_1 pl_create_INTERNAL_API_DO_NOT_USE
+#        define pl_getAscent_4_1 pl_getAscent_INTERNAL_API_DO_NOT_USE
+#        define pl_getDescent_4_1 pl_getDescent_INTERNAL_API_DO_NOT_USE
+#        define pl_getFontRunCount_4_1 pl_getFontRunCount_INTERNAL_API_DO_NOT_USE
+#        define pl_getFontRunFont_4_1 pl_getFontRunFont_INTERNAL_API_DO_NOT_USE
+#        define pl_getFontRunLastLimit_4_1 pl_getFontRunLastLimit_INTERNAL_API_DO_NOT_USE
+#        define pl_getFontRunLimit_4_1 pl_getFontRunLimit_INTERNAL_API_DO_NOT_USE
+#        define pl_getLeading_4_1 pl_getLeading_INTERNAL_API_DO_NOT_USE
+#        define pl_getLineAscent_4_1 pl_getLineAscent_INTERNAL_API_DO_NOT_USE
+#        define pl_getLineDescent_4_1 pl_getLineDescent_INTERNAL_API_DO_NOT_USE
+#        define pl_getLineLeading_4_1 pl_getLineLeading_INTERNAL_API_DO_NOT_USE
+#        define pl_getLineVisualRun_4_1 pl_getLineVisualRun_INTERNAL_API_DO_NOT_USE
+#        define pl_getLineWidth_4_1 pl_getLineWidth_INTERNAL_API_DO_NOT_USE
+#        define pl_getLocaleRunCount_4_1 pl_getLocaleRunCount_INTERNAL_API_DO_NOT_USE
+#        define pl_getLocaleRunLastLimit_4_1 pl_getLocaleRunLastLimit_INTERNAL_API_DO_NOT_USE
+#        define pl_getLocaleRunLimit_4_1 pl_getLocaleRunLimit_INTERNAL_API_DO_NOT_USE
+#        define pl_getLocaleRunLocale_4_1 pl_getLocaleRunLocale_INTERNAL_API_DO_NOT_USE
+#        define pl_getParagraphLevel_4_1 pl_getParagraphLevel_INTERNAL_API_DO_NOT_USE
+#        define pl_getTextDirection_4_1 pl_getTextDirection_INTERNAL_API_DO_NOT_USE
+#        define pl_getValueRunCount_4_1 pl_getValueRunCount_INTERNAL_API_DO_NOT_USE
+#        define pl_getValueRunLastLimit_4_1 pl_getValueRunLastLimit_INTERNAL_API_DO_NOT_USE
+#        define pl_getValueRunLimit_4_1 pl_getValueRunLimit_INTERNAL_API_DO_NOT_USE
+#        define pl_getValueRunValue_4_1 pl_getValueRunValue_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunAscent_4_1 pl_getVisualRunAscent_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunDescent_4_1 pl_getVisualRunDescent_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunDirection_4_1 pl_getVisualRunDirection_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunFont_4_1 pl_getVisualRunFont_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunGlyphCount_4_1 pl_getVisualRunGlyphCount_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunGlyphToCharMap_4_1 pl_getVisualRunGlyphToCharMap_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunGlyphs_4_1 pl_getVisualRunGlyphs_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunLeading_4_1 pl_getVisualRunLeading_INTERNAL_API_DO_NOT_USE
+#        define pl_getVisualRunPositions_4_1 pl_getVisualRunPositions_INTERNAL_API_DO_NOT_USE
+#        define pl_isComplex_4_1 pl_isComplex_INTERNAL_API_DO_NOT_USE
+#        define pl_line_4_1 pl_line_INTERNAL_API_DO_NOT_USE
+#        define pl_nextLine_4_1 pl_nextLine_INTERNAL_API_DO_NOT_USE
+#        define pl_openEmptyFontRuns_4_1 pl_openEmptyFontRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_openEmptyLocaleRuns_4_1 pl_openEmptyLocaleRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_openEmptyValueRuns_4_1 pl_openEmptyValueRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_openFontRuns_4_1 pl_openFontRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_openLocaleRuns_4_1 pl_openLocaleRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_openValueRuns_4_1 pl_openValueRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_paragraph_4_1 pl_paragraph_INTERNAL_API_DO_NOT_USE
+#        define pl_reflow_4_1 pl_reflow_INTERNAL_API_DO_NOT_USE
+#        define pl_resetFontRuns_4_1 pl_resetFontRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_resetLocaleRuns_4_1 pl_resetLocaleRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_resetValueRuns_4_1 pl_resetValueRuns_INTERNAL_API_DO_NOT_USE
+#        define pl_visualRun_4_1 pl_visualRun_INTERNAL_API_DO_NOT_USE
+#        define ucd_close_4_1 ucd_close_INTERNAL_API_DO_NOT_USE
+#        define ucd_flushCache_4_1 ucd_flushCache_INTERNAL_API_DO_NOT_USE
+#        define ucd_freeCache_4_1 ucd_freeCache_INTERNAL_API_DO_NOT_USE
+#        define ucd_getCollator_4_1 ucd_getCollator_INTERNAL_API_DO_NOT_USE
+#        define ucd_open_4_1 ucd_open_INTERNAL_API_DO_NOT_USE
+#        define ucol_equals_4_1 ucol_equals_INTERNAL_API_DO_NOT_USE
+#        define ucol_forceHanImplicit_4_1 ucol_forceHanImplicit_INTERNAL_API_DO_NOT_USE
+#        define ucol_forgetUCA_4_1 ucol_forgetUCA_INTERNAL_API_DO_NOT_USE
+#        define ucol_getAttributeOrDefault_4_1 ucol_getAttributeOrDefault_INTERNAL_API_DO_NOT_USE
+#        define ucol_getUnsafeSet_4_1 ucol_getUnsafeSet_INTERNAL_API_DO_NOT_USE
+#        define ucol_nextProcessed_4_1 ucol_nextProcessed_INTERNAL_API_DO_NOT_USE
+#        define ucol_prepareShortStringOpen_4_1 ucol_prepareShortStringOpen_INTERNAL_API_DO_NOT_USE
+#        define ucol_previousProcessed_4_1 ucol_previousProcessed_INTERNAL_API_DO_NOT_USE
+#        define uprv_getDefaultCodepage_4_1 uprv_getDefaultCodepage_INTERNAL_API_DO_NOT_USE
+#        define uprv_getDefaultLocaleID_4_1 uprv_getDefaultLocaleID_INTERNAL_API_DO_NOT_USE
+#        define ures_openFillIn_4_1 ures_openFillIn_INTERNAL_API_DO_NOT_USE
+#        define usearch_searchBackwards_4_1 usearch_searchBackwards_INTERNAL_API_DO_NOT_USE
+#        define usearch_search_4_1 usearch_search_INTERNAL_API_DO_NOT_USE
+#        define utf8_appendCharSafeBody_4_1 utf8_appendCharSafeBody_INTERNAL_API_DO_NOT_USE
+#        define utf8_back1SafeBody_4_1 utf8_back1SafeBody_INTERNAL_API_DO_NOT_USE
+#        define utf8_countTrailBytes_4_1 utf8_countTrailBytes_INTERNAL_API_DO_NOT_USE
+#        define utf8_nextCharSafeBody_4_1 utf8_nextCharSafeBody_INTERNAL_API_DO_NOT_USE
+#        define utf8_prevCharSafeBody_4_1 utf8_prevCharSafeBody_INTERNAL_API_DO_NOT_USE
 #    endif /* U_DISABLE_RENAMING */
 
 #endif /* U_HIDE_INTERNAL_API */
diff --git a/source/common/unicode/urename.h b/source/common/unicode/urename.h
index 305b4cf..94420c5 100644
--- a/source/common/unicode/urename.h
+++ b/source/common/unicode/urename.h
@@ -171,7 +171,13 @@
 #define res_getTableItemByKey res_getTableItemByKey_4_1
 #define res_load res_load_4_1
 #define res_unload res_unload_4_1
+#define spacesRelativeToTextBeginEnd spacesRelativeToTextBeginEnd_4_1
+#define tailChar tailChar_4_1
 #define triedict_swap triedict_swap_4_1
+#define uShapeLamalefBegin uShapeLamalefBegin_4_1
+#define uShapeLamalefEnd uShapeLamalefEnd_4_1
+#define uShapeTashkeelBegin uShapeTashkeelBegin_4_1
+#define uShapeTashkeelEnd uShapeTashkeelEnd_4_1
 #define u_UCharsToChars u_UCharsToChars_4_1
 #define u_austrcpy u_austrcpy_4_1
 #define u_austrncpy u_austrncpy_4_1
@@ -312,6 +318,7 @@
 #define u_strFoldCase u_strFoldCase_4_1
 #define u_strFromPunycode u_strFromPunycode_4_1
 #define u_strFromUTF32 u_strFromUTF32_4_1
+#define u_strFromUTF32WithSub u_strFromUTF32WithSub_4_1
 #define u_strFromUTF8 u_strFromUTF8_4_1
 #define u_strFromUTF8Lenient u_strFromUTF8Lenient_4_1
 #define u_strFromUTF8WithSub u_strFromUTF8WithSub_4_1
@@ -321,6 +328,7 @@
 #define u_strToPunycode u_strToPunycode_4_1
 #define u_strToTitle u_strToTitle_4_1
 #define u_strToUTF32 u_strToUTF32_4_1
+#define u_strToUTF32WithSub u_strToUTF32WithSub_4_1
 #define u_strToUTF8 u_strToUTF8_4_1
 #define u_strToUTF8WithSub u_strToUTF8WithSub_4_1
 #define u_strToUpper u_strToUpper_4_1
@@ -465,6 +473,7 @@
 #define ucal_getDSTSavings ucal_getDSTSavings_4_1
 #define ucal_getDefaultTimeZone ucal_getDefaultTimeZone_4_1
 #define ucal_getGregorianChange ucal_getGregorianChange_4_1
+#define ucal_getKeywordValuesForLocale ucal_getKeywordValuesForLocale_4_1
 #define ucal_getLimit ucal_getLimit_4_1
 #define ucal_getLocaleByType ucal_getLocaleByType_4_1
 #define ucal_getMillis ucal_getMillis_4_1
@@ -541,6 +550,7 @@
 #define ucnv_MBCSToUnicodeWithOffsets ucnv_MBCSToUnicodeWithOffsets_4_1
 #define ucnv_bld_countAvailableConverters ucnv_bld_countAvailableConverters_4_1
 #define ucnv_bld_getAvailableConverter ucnv_bld_getAvailableConverter_4_1
+#define ucnv_canCreateConverter ucnv_canCreateConverter_4_1
 #define ucnv_cbFromUWriteBytes ucnv_cbFromUWriteBytes_4_1
 #define ucnv_cbFromUWriteSub ucnv_cbFromUWriteSub_4_1
 #define ucnv_cbFromUWriteUChars ucnv_cbFromUWriteUChars_4_1
@@ -665,6 +675,7 @@
 #define ucol_getFirstCE ucol_getFirstCE_4_1
 #define ucol_getFunctionalEquivalent ucol_getFunctionalEquivalent_4_1
 #define ucol_getKeywordValues ucol_getKeywordValues_4_1
+#define ucol_getKeywordValuesForLocale ucol_getKeywordValuesForLocale_4_1
 #define ucol_getKeywords ucol_getKeywords_4_1
 #define ucol_getLocale ucol_getLocale_4_1
 #define ucol_getLocaleByType ucol_getLocaleByType_4_1
@@ -753,7 +764,9 @@
 #define ucurr_forLocale ucurr_forLocale_4_1
 #define ucurr_forLocaleAndDate ucurr_forLocaleAndDate_4_1
 #define ucurr_getDefaultFractionDigits ucurr_getDefaultFractionDigits_4_1
+#define ucurr_getKeywordValuesForLocale ucurr_getKeywordValuesForLocale_4_1
 #define ucurr_getName ucurr_getName_4_1
+#define ucurr_getPluralName ucurr_getPluralName_4_1
 #define ucurr_getRoundingIncrement ucurr_getRoundingIncrement_4_1
 #define ucurr_openISOCurrencies ucurr_openISOCurrencies_4_1
 #define ucurr_register ucurr_register_4_1
@@ -826,7 +839,7 @@
 #define uenum_next uenum_next_4_1
 #define uenum_nextDefault uenum_nextDefault_4_1
 #define uenum_openCharStringsEnumeration uenum_openCharStringsEnumeration_4_1
-#define uenum_openStringEnumeration uenum_openStringEnumeration_4_1
+#define uenum_openFromStringEnumeration uenum_openFromStringEnumeration_4_1
 #define uenum_reset uenum_reset_4_1
 #define uenum_unext uenum_unext_4_1
 #define uenum_unextDefault uenum_unextDefault_4_1
@@ -903,14 +916,27 @@
 #define uiter_setString uiter_setString_4_1
 #define uiter_setUTF16BE uiter_setUTF16BE_4_1
 #define uiter_setUTF8 uiter_setUTF8_4_1
+#define ulist_addItemBeginList ulist_addItemBeginList_4_1
+#define ulist_addItemEndList ulist_addItemEndList_4_1
+#define ulist_close_keyword_values_iterator ulist_close_keyword_values_iterator_4_1
+#define ulist_containsString ulist_containsString_4_1
+#define ulist_count_keyword_values ulist_count_keyword_values_4_1
+#define ulist_createEmptyList ulist_createEmptyList_4_1
+#define ulist_deleteList ulist_deleteList_4_1
+#define ulist_getListFromEnum ulist_getListFromEnum_4_1
+#define ulist_getListSize ulist_getListSize_4_1
+#define ulist_getNext ulist_getNext_4_1
+#define ulist_next_keyword_value ulist_next_keyword_value_4_1
+#define ulist_resetList ulist_resetList_4_1
+#define ulist_reset_keyword_values_iterator ulist_reset_keyword_values_iterator_4_1
 #define uloc_acceptLanguage uloc_acceptLanguage_4_1
 #define uloc_acceptLanguageFromHTTP uloc_acceptLanguageFromHTTP_4_1
 #define uloc_addLikelySubtags uloc_addLikelySubtags_4_1
 #define uloc_canonicalize uloc_canonicalize_4_1
 #define uloc_countAvailable uloc_countAvailable_4_1
+#define uloc_forLanguageTag uloc_forLanguageTag_4_1
 #define uloc_getAvailable uloc_getAvailable_4_1
 #define uloc_getBaseName uloc_getBaseName_4_1
-#define uloc_getCLDRVersion uloc_getCLDRVersion_4_1
 #define uloc_getCharacterOrientation uloc_getCharacterOrientation_4_1
 #define uloc_getCountry uloc_getCountry_4_1
 #define uloc_getDefault uloc_getDefault_4_1
@@ -939,9 +965,13 @@
 #define uloc_openKeywords uloc_openKeywords_4_1
 #define uloc_setDefault uloc_setDefault_4_1
 #define uloc_setKeywordValue uloc_setKeywordValue_4_1
+#define uloc_toLanguageTag uloc_toLanguageTag_4_1
 #define ulocdata_close ulocdata_close_4_1
+#define ulocdata_getCLDRVersion ulocdata_getCLDRVersion_4_1
 #define ulocdata_getDelimiter ulocdata_getDelimiter_4_1
 #define ulocdata_getExemplarSet ulocdata_getExemplarSet_4_1
+#define ulocdata_getLocaleDisplayPattern ulocdata_getLocaleDisplayPattern_4_1
+#define ulocdata_getLocaleSeparator ulocdata_getLocaleSeparator_4_1
 #define ulocdata_getMeasurementSystem ulocdata_getMeasurementSystem_4_1
 #define ulocdata_getNoSubstitute ulocdata_getNoSubstitute_4_1
 #define ulocdata_getPaperSize ulocdata_getPaperSize_4_1
@@ -1256,6 +1286,7 @@
 #define uset_clone uset_clone_4_1
 #define uset_cloneAsThawed uset_cloneAsThawed_4_1
 #define uset_close uset_close_4_1
+#define uset_closeOver uset_closeOver_4_1
 #define uset_compact uset_compact_4_1
 #define uset_complement uset_complement_4_1
 #define uset_complementAll uset_complementAll_4_1
@@ -1277,10 +1308,12 @@
 #define uset_isEmpty uset_isEmpty_4_1
 #define uset_isFrozen uset_isFrozen_4_1
 #define uset_open uset_open_4_1
+#define uset_openEmpty uset_openEmpty_4_1
 #define uset_openPattern uset_openPattern_4_1
 #define uset_openPatternOptions uset_openPatternOptions_4_1
 #define uset_remove uset_remove_4_1
 #define uset_removeAll uset_removeAll_4_1
+#define uset_removeAllStrings uset_removeAllStrings_4_1
 #define uset_removeRange uset_removeRange_4_1
 #define uset_removeString uset_removeString_4_1
 #define uset_resemblesPattern uset_resemblesPattern_4_1
@@ -1296,8 +1329,29 @@
 #define uset_spanBackUTF8 uset_spanBackUTF8_4_1
 #define uset_spanUTF8 uset_spanUTF8_4_1
 #define uset_toPattern uset_toPattern_4_1
+#define uspoof_check uspoof_check_4_1
+#define uspoof_checkUTF8 uspoof_checkUTF8_4_1
+#define uspoof_checkUnicodeString uspoof_checkUnicodeString_4_1
+#define uspoof_clone uspoof_clone_4_1
+#define uspoof_close uspoof_close_4_1
+#define uspoof_getAllowedChars uspoof_getAllowedChars_4_1
+#define uspoof_getAllowedUnicodeSet uspoof_getAllowedUnicodeSet_4_1
+#define uspoof_getChecks uspoof_getChecks_4_1
+#define uspoof_getSkeleton uspoof_getSkeleton_4_1
+#define uspoof_getSkeletonUTF8 uspoof_getSkeletonUTF8_4_1
+#define uspoof_getSkeletonUnicodeString uspoof_getSkeletonUnicodeString_4_1
+#define uspoof_open uspoof_open_4_1
+#define uspoof_openFromSerialized uspoof_openFromSerialized_4_1
+#define uspoof_openFromSource uspoof_openFromSource_4_1
+#define uspoof_serialize uspoof_serialize_4_1
+#define uspoof_setAllowedChars uspoof_setAllowedChars_4_1
+#define uspoof_setAllowedLocales uspoof_setAllowedLocales_4_1
+#define uspoof_setAllowedUnicodeSet uspoof_setAllowedUnicodeSet_4_1
+#define uspoof_setChecks uspoof_setChecks_4_1
+#define uspoof_swap uspoof_swap_4_1
 #define usprep_close usprep_close_4_1
 #define usprep_open usprep_open_4_1
+#define usprep_openByType usprep_openByType_4_1
 #define usprep_prepare usprep_prepare_4_1
 #define usprep_swap usprep_swap_4_1
 #define ustr_foldCase ustr_foldCase_4_1
@@ -1432,6 +1486,8 @@
 #define BuildCompactTrieHorizontalNode BuildCompactTrieHorizontalNode_4_1
 #define BuildCompactTrieNode BuildCompactTrieNode_4_1
 #define BuildCompactTrieVerticalNode BuildCompactTrieVerticalNode_4_1
+#define BuilderScriptSet BuilderScriptSet_4_1
+#define ByteSink ByteSink_4_1
 #define CEBuffer CEBuffer_4_1
 #define CECalendar CECalendar_4_1
 #define CEList CEList_4_1
@@ -1505,6 +1561,7 @@
 #define CharsetRecog_windows_1251 CharsetRecog_windows_1251_4_1
 #define CharsetRecog_windows_1256 CharsetRecog_windows_1256_4_1
 #define CharsetRecognizer CharsetRecognizer_4_1
+#define CheckedArrayByteSink CheckedArrayByteSink_4_1
 #define ChineseCalendar ChineseCalendar_4_1
 #define ChoiceFormat ChoiceFormat_4_1
 #define ClassDefFormat1Table ClassDefFormat1Table_4_1
@@ -1522,6 +1579,7 @@
 #define CompactTrieDictionary CompactTrieDictionary_4_1
 #define CompactTrieEnumeration CompactTrieEnumeration_4_1
 #define CompoundTransliterator CompoundTransliterator_4_1
+#define ConfusabledataBuilder ConfusabledataBuilder_4_1
 #define ContextualGlyphSubstitutionProcessor ContextualGlyphSubstitutionProcessor_4_1
 #define ContextualSubstitutionBase ContextualSubstitutionBase_4_1
 #define ContextualSubstitutionFormat1Subtable ContextualSubstitutionFormat1Subtable_4_1
@@ -1534,6 +1592,7 @@
 #define CoverageTable CoverageTable_4_1
 #define CurrencyAmount CurrencyAmount_4_1
 #define CurrencyFormat CurrencyFormat_4_1
+#define CurrencyPluralInfo CurrencyPluralInfo_4_1
 #define CurrencyUnit CurrencyUnit_4_1
 #define CursiveAttachmentSubtable CursiveAttachmentSubtable_4_1
 #define DTRedundantEnumeration DTRedundantEnumeration_4_1
@@ -1555,6 +1614,7 @@
 #define DigitList DigitList_4_1
 #define DistanceInfo DistanceInfo_4_1
 #define EnumToOffset EnumToOffset_4_1
+#define ErrorCode ErrorCode_4_1
 #define EscapeTransliterator EscapeTransliterator_4_1
 #define EthiopicCalendar EthiopicCalendar_4_1
 #define EventListener EventListener_4_1
@@ -1663,6 +1723,7 @@
 #define MutableTrieDictionary MutableTrieDictionary_4_1
 #define MutableTrieEnumeration MutableTrieEnumeration_4_1
 #define NFFactory NFFactory_4_1
+#define NFKDBuffer NFKDBuffer_4_1
 #define NFRule NFRule_4_1
 #define NFRuleSet NFRuleSet_4_1
 #define NFSubstitution NFSubstitution_4_1
@@ -1732,10 +1793,13 @@
 #define RuleHalf RuleHalf_4_1
 #define RuleParser RuleParser_4_1
 #define RunArray RunArray_4_1
+#define SPUString SPUString_4_1
+#define SPUStringPool SPUStringPool_4_1
 #define SafeZoneStringFormatPtr SafeZoneStringFormatPtr_4_1
 #define SameValueSubstitution SameValueSubstitution_4_1
 #define ScriptListTable ScriptListTable_4_1
 #define ScriptRunIterator ScriptRunIterator_4_1
+#define ScriptSet ScriptSet_4_1
 #define ScriptTable ScriptTable_4_1
 #define SearchIterator SearchIterator_4_1
 #define SegmentArrayProcessor SegmentArrayProcessor_4_1
@@ -1755,6 +1819,9 @@
 #define SingleSubstitutionFormat2Subtable SingleSubstitutionFormat2Subtable_4_1
 #define SingleSubstitutionSubtable SingleSubstitutionSubtable_4_1
 #define SingleTableProcessor SingleTableProcessor_4_1
+#define SpoofData SpoofData_4_1
+#define SpoofImpl SpoofImpl_4_1
+#define SpoofImpl*, SpoofImpl*,_4_1
 #define StateTableProcessor StateTableProcessor_4_1
 #define StringCharacterIterator StringCharacterIterator_4_1
 #define StringEnumeration StringEnumeration_4_1
@@ -1762,6 +1829,7 @@
 #define StringLocalizationInfo StringLocalizationInfo_4_1
 #define StringMatcher StringMatcher_4_1
 #define StringPair StringPair_4_1
+#define StringPiece StringPiece_4_1
 #define StringReplacer StringReplacer_4_1
 #define StringSearch StringSearch_4_1
 #define StringToCEsMap StringToCEsMap_4_1
@@ -1837,7 +1905,17 @@
 #define ZoneStringInfo ZoneStringInfo_4_1
 #define ZoneStringSearchResultHandler ZoneStringSearchResultHandler_4_1
 #define ZoneStrings ZoneStrings_4_1
+#define addKeyEntry addKeyEntry_4_1
+#define addString addString_4_1
+#define build build_4_1
+#define buildConfusableData buildConfusableData_4_1
+#define getByIndex getByIndex_4_1
+#define getKeywordValuesForLocale getKeywordValuesForLocale_4_1
+#define getMapping getMapping_4_1
 #define locale_set_default_internal locale_set_default_internal_4_1
+#define outputData outputData_4_1
+#define size size_4_1
+#define sort sort_4_1
 #define util64_fromDouble util64_fromDouble_4_1
 #define util64_pow util64_pow_4_1
 #define util64_tou util64_tou_4_1
diff --git a/source/common/unicode/usystem.h b/source/common/unicode/usystem.h
index b9fac24..d530385 100644
--- a/source/common/unicode/usystem.h
+++ b/source/common/unicode/usystem.h
@@ -32,13 +32,13 @@
 #        define uloc_getDefault uloc_getDefault_SYSTEM_API_DO_NOT_USE
 #        define uloc_setDefault uloc_setDefault_SYSTEM_API_DO_NOT_USE
 #    else
-#        define u_cleanup_4_1.2 u_cleanup_SYSTEM_API_DO_NOT_USE
-#        define u_setAtomicIncDecFunctions_4_1.2 u_setAtomicIncDecFunctions_SYSTEM_API_DO_NOT_USE
-#        define u_setMemoryFunctions_4_1.2 u_setMemoryFunctions_SYSTEM_API_DO_NOT_USE
-#        define u_setMutexFunctions_4_1.2 u_setMutexFunctions_SYSTEM_API_DO_NOT_USE
-#        define ucnv_setDefaultName_4_1.2 ucnv_setDefaultName_SYSTEM_API_DO_NOT_USE
-#        define uloc_getDefault_4_1.2 uloc_getDefault_SYSTEM_API_DO_NOT_USE
-#        define uloc_setDefault_4_1.2 uloc_setDefault_SYSTEM_API_DO_NOT_USE
+#        define u_cleanup_4_1 u_cleanup_SYSTEM_API_DO_NOT_USE
+#        define u_setAtomicIncDecFunctions_4_1 u_setAtomicIncDecFunctions_SYSTEM_API_DO_NOT_USE
+#        define u_setMemoryFunctions_4_1 u_setMemoryFunctions_SYSTEM_API_DO_NOT_USE
+#        define u_setMutexFunctions_4_1 u_setMutexFunctions_SYSTEM_API_DO_NOT_USE
+#        define ucnv_setDefaultName_4_1 ucnv_setDefaultName_SYSTEM_API_DO_NOT_USE
+#        define uloc_getDefault_4_1 uloc_getDefault_SYSTEM_API_DO_NOT_USE
+#        define uloc_setDefault_4_1 uloc_setDefault_SYSTEM_API_DO_NOT_USE
 #    endif /* U_DISABLE_RENAMING */
 
 #endif /* U_HIDE_SYSTEM_API */
diff --git a/source/tools/gendraft/genheaders.pl b/source/tools/gendraft/genheaders.pl
index 6f83b2d..126c0f0 100755
--- a/source/tools/gendraft/genheaders.pl
+++ b/source/tools/gendraft/genheaders.pl
@@ -1,7 +1,7 @@
 #!/usr/bin/perl
 #*
 #*******************************************************************************
-#*   Copyright (C) 2006, International Business Machines
+#*   Copyright (C) 2006-2009, International Business Machines
 #*   Corporation and others.  All Rights Reserved.
 #*******************************************************************************
 #*
@@ -71,7 +71,7 @@
   $internalFile   = "$srcDir/internal.html";
   
   $versionAppend = $version;
-  $versionAppend=~ s/\./_/;
+  $versionAppend=~ s/^([0-9]+)\.([0-9]+).*/\1_\2/;
   $excludeFH = IO::File->new($exclude,"r")
             or die  "could not open the file $exclude for reading: $! \n";
   my %exclude;