diff --git a/icu4c/APIChangeReport.html b/icu4c/APIChangeReport.html
index a3d1da6..f262ed9 100644
--- a/icu4c/APIChangeReport.html
+++ b/icu4c/APIChangeReport.html
@@ -5,31 +5,31 @@
 	-->
 <head>
 <META http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>ICU4C API Comparison: ICU 68 (update #1: 68.2) with ICU 69</title>
+<title>ICU4C API Comparison: ICU 69 with ICU 70</title>
 <link type="text/css" href="icu4c.css" rel="stylesheet">
 </head>
 <body>
 <a name="#_top"></a>
-<h1>ICU4C API Comparison: ICU 68 (update #1: 68.2) with ICU 69</h1>
+<h1>ICU4C API Comparison: ICU 69 with ICU 70</h1>
 <div id="toc">
 <ul>
 <li>
-<a href="#removed">Removed from ICU 68</a>
+<a href="#removed">Removed from ICU 69</a>
 </li>
 <li>
-<a href="#deprecated">Deprecated or Obsoleted in ICU 69</a>
+<a href="#deprecated">Deprecated or Obsoleted in ICU 70</a>
 </li>
 <li>
-<a href="#changed">Changed in  ICU 69</a>
+<a href="#changed">Changed in  ICU 70</a>
 </li>
 <li>
-<a href="#promoted">Promoted to stable in ICU 69</a>
+<a href="#promoted">Promoted to stable in ICU 70</a>
 </li>
 <li>
-<a href="#added">Added in ICU 69</a>
+<a href="#added">Added in ICU 70</a>
 </li>
 <li>
-<a href="#other">Other existing drafts in ICU 69</a>
+<a href="#other">Other existing drafts in ICU 70</a>
 </li>
 <li>
 <a href="#simplifications">Signature Simplifications</a>
@@ -38,71 +38,15 @@
 <hr>
 </div>
 <a name="removed"></a>
-<h2>Removed from ICU 68</h2>
+<h2>Removed from ICU 69</h2>
 <table BORDER="1" class="genTable">
 <THEAD>
 <tr>
-<th>File</th><th>API</th><th>ICU 68</th><th>ICU 69</th>
+<th>File</th><th>API</th><th>ICU 69</th><th>ICU 70</th>
 </tr>
 </THEAD>
 <tr class="row1">
-<td class="file">listformatter.h</td><td class="proto"><tt>static</tt> ListFormatter* icu::ListFormatter::createInstance(const Locale&amp;, const char*, UErrorCode&amp;)</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::withSIPrefix(UMeasureSIPrefix, UErrorCode&amp;) const</td><td class="">Draft<br>ICU 67</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">measunit.h</td><td class="proto">UMeasureSIPrefix icu::MeasureUnit::getSIPrefix(UErrorCode&amp;) const</td><td class="">Draft<br>ICU 67</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">Usage&amp; icu::number::impl::Usage::operator=(Usage&amp;&amp;)</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">Usage&amp; icu::number::impl::Usage::operator=(const Usage&amp;)</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">bool icu::number::impl::Usage::isSet() const</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">icu::number::impl::Usage::Usage(Usage&amp;&amp;)</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">icu::number::impl::Usage::Usage(const Usage&amp;)</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">icu::number::impl::Usage::~Usage()</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">int16_t icu::number::impl::Usage::length() const</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">void icu::number::impl::Usage::set(StringPiece)</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberrangeformatter.h</td><td class="proto">UnicodeString icu::number::FormattedNumberRange::getFirstDecimal(UErrorCode&amp;) const</td><td class="">Deprecated<br>ICU 68</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberrangeformatter.h</td><td class="proto">UnicodeString icu::number::FormattedNumberRange::getSecondDecimal(UErrorCode&amp;) const</td><td class="">Deprecated<br>ICU 68</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">rbtz.h</td><td class="proto">void icu::RuleBasedTimeZone::getOffsetFromLocal(UDate, int32_t, int32_t, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="">Internal</td><td>(missing)<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">simpletz.h</td><td class="proto">void icu::SimpleTimeZone::getOffsetFromLocal(UDate, int32_t, int32_t, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="">Internal</td><td>(missing)<br>
+<td class="file">tmutfmt.h</td><td class="proto">bool icu::TimeUnitFormat::operator!=(const Format&amp;) const</td><td class="">Deprecated<br>ICU 53</td><td>(missing)<br>
 <span class=""><span></span></span></td>
 </tr>
 </table>
@@ -110,685 +54,799 @@
 <a href="#_top">(jump back to top)</a>
 <hr>
 <a name="deprecated"></a>
-<h2>Deprecated or Obsoleted in ICU 69</h2>
+<h2>Deprecated or Obsoleted in ICU 70</h2>
 <table BORDER="1" class="genTable">
 <THEAD>
 <tr>
-<th>File</th><th>API</th><th>ICU 68</th><th>ICU 69</th>
+<th>File</th><th>API</th><th>ICU 69</th><th>ICU 70</th>
 </tr>
 </THEAD>
 <tr class="row1">
-<td class="file">ubrk.h</td><td class="proto">UBreakIterator* ubrk_safeClone(const UBreakIterator*, void*, int32_t*, UErrorCode*)</td><td class="stabchange">Stable<br>ICU 2.0</td><td>Deprecated<br>
-<span class="verchange"><span>ICU 69</span></span></td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration()</td><td class="stabchange">Stable<br>ICU 2.4</td><td>Deprecated<br>
+<span class="verchange"><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(const char*)</td><td class="stabchange">Stable<br>ICU 2.4</td><td>Deprecated<br>
+<span class="verchange"><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(int32_t)</td><td class="stabchange">Stable<br>ICU 2.4</td><td>Deprecated<br>
+<span class="verchange"><span>ICU 70</span></span></td>
 </tr>
 </table>
 <P></P>
 <a href="#_top">(jump back to top)</a>
 <hr>
 <a name="changed"></a>
-<h2>Changed in  ICU 69 (old, new)</h2>
+<h2>Changed in  ICU 70 (old, new)</h2>
 <table BORDER="1" class="genTable">
 <THEAD>
 <tr>
-<th>File</th><th>API</th><th>ICU 68</th><th>ICU 69</th>
+<th>File</th><th>API</th><th>ICU 69</th><th>ICU 70</th>
 </tr>
 </THEAD>
 <tr class="row1">
-<td class="file">bytestream.h</td><td class="proto">void icu::ByteSink::AppendU8(const char*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">dtitvfmt.h</td><td class="proto">UDisplayContext icu::DateIntervalFormat::getContext(UDisplayContextType, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">bytestream.h</td><td class="proto">void icu::ByteSink::AppendU8(const char8_t*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">dtitvfmt.h</td><td class="proto">void icu::DateIntervalFormat::setContext(UDisplayContext, UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">dtptngen.h</td><td class="proto">UDateFormatHourCycle icu::DateTimePatternGenerator::getDefaultHourCycle(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setMaxDistance(const Locale&amp;, const Locale&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setDirection(ULocMatchDirection)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setNoDefaultLocale()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">localematcher.h</td><td class="proto"><tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_ONLY_TWO_WAY</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">localematcher.h</td><td class="proto">bool icu::LocaleMatcher::isMatch(const Locale&amp;, const Locale&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">localematcher.h</td><td class="proto"><tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_WITH_ONE_WAY</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getCandela()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">locid.h</td><td class="proto">void icu::Locale::canonicalize(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoon()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::product(const MeasureUnit&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoonImperial()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::reciprocal(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDot()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::withDimensionality(int32_t, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDram()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit&amp; icu::MeasureUnit::operator=(MeasureUnit&amp;&amp;) noexcept</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDrop()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">UMeasureUnitComplexity icu::MeasureUnit::getComplexity(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getEarthRadius()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">const char* icu::MeasureUnit::getIdentifier() const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getGrain()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">icu::MeasureUnit::MeasureUnit(MeasureUnit&amp;&amp;) noexcept</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getJigger()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">int32_t icu::MeasureUnit::getDimensionality(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getLumen()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::forIdentifier(StringPiece, UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getPinch()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(const char8_t*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getQuartImperial()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(const char8_t*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createCandela(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(const std::u8string&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoon(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(std::nullptr_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoonImperial(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">int32_t icu::StringPiece::compare(StringPiece)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDot(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">int32_t icu::StringPiece::find(StringPiece, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDram(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">void icu::StringPiece::set(const char8_t*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDrop(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">void icu::StringPiece::set(const char8_t*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createEarthRadius(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">translit.h</td><td class="proto">UnicodeSet&amp; icu::Transliterator::getSourceSet(UnicodeSet&amp;) const</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.4</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createGrain(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">translit.h</td><td class="proto"><tt>static</tt> UnicodeString&amp; icu::Transliterator::getDisplayName(const UnicodeString&amp;, UnicodeString&amp;)</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.0</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createJigger(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">translit.h</td><td class="proto">void icu::Transliterator::finishTransliteration(Replaceable&amp;, UTransPosition&amp;) const</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.0</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createLumen(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">translit.h</td><td class="proto">void icu::Transliterator::transliterate(Replaceable&amp;, UTransPosition&amp;, UErrorCode&amp;) const</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.0</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createPinch(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">ubrk.h</td><td class="proto">UBreakIterator* ubrk_safeClone(const UBreakIterator*, void*, int32_t*, UErrorCode*)</td><td class="stabchange">Stable<br>ICU 2.0</td><td>Deprecated<br>
-<span class="verchange"><span>ICU 69</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createQuartImperial(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_11</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto">std::pair&lt; LocalArray&lt; MeasureUnit &gt;, int32_t &gt; icu::MeasureUnit::splitToSingleUnits(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_12</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece) const&amp;</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_23</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece)&amp;&amp;</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_24</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberformatter.h</td><td class="proto">MeasureUnit icu::number::FormattedNumber::getOutputUnit(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_formatCalendarToResult(const UDateIntervalFormat*, UCalendar*, UCalendar*, UFormattedDateInterval*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberrangeformatter.h</td><td class="proto">std::pair&lt; StringClass, StringClass &gt; icu::number::FormattedNumberRange::getDecimalNumbers(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_formatToResult(const UDateIntervalFormat*, UDate, UDate, UFormattedDateInterval*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">plurrule.h</td><td class="proto">UnicodeString icu::PluralRules::select(const number::FormattedNumberRange&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udatpg.h</td><td class="proto">UDateFormatHourCycle udatpg_getDefaultHourCycle(const UDateTimePatternGenerator*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration()</td><td class="stabchange">Stable<br>ICU 2.4</td><td>Deprecated<br>
+<span class="verchange"><span>ICU 70</span></span></td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_BREAK_ENGINE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(const char*)</td><td class="stabchange">Stable<br>ICU 2.4</td><td>Deprecated<br>
+<span class="verchange"><span>ICU 70</span></span></td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_CHARACTER</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(int32_t)</td><td class="stabchange">Stable<br>ICU 2.4</td><td>Deprecated<br>
+<span class="verchange"><span>ICU 70</span></span></td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_LINE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">ucurr.h</td><td class="proto"><tt>enum</tt> UCurrNameStyle::UCURR_FORMAL_SYMBOL_NAME</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_SENTENCE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">ucurr.h</td><td class="proto"><tt>enum</tt> UCurrNameStyle::UCURR_VARIANT_SYMBOL_NAME</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_TITLE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">udateintervalformat.h</td><td class="proto">UDisplayContext udtitvfmt_getContext(const UDateIntervalFormat*, UDisplayContextType, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_WORD</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_setContext(UDateIntervalFormat*, UDisplayContext, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_START</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_AUTO</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_MIN2</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_FORMAL</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_VARIANT</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberformatter.h</td><td class="proto">int32_t unumf_resultToDecimalNumber(const UFormattedNumber*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">UFormattedNumberRange* unumrf_openResult(UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">UNumberRangeFormatter* unumrf_openForSkeletonWithCollapseAndIdentityFallback(const UChar*, int32_t, UNumberRangeCollapse, UNumberRangeIdentityFallback, const char*, UParseError*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">UNumberRangeIdentityResult unumrf_resultGetIdentityResult(const UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">const UFormattedValue* unumrf_resultAsValue(const UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">int32_t unumrf_resultGetFirstDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">int32_t unumrf_resultGetSecondDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_close(UNumberRangeFormatter*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_closeResult(UFormattedNumberRange*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_formatDecimalRange(const UNumberRangeFormatter*, const char*, int32_t, const char*, int32_t, UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_formatDoubleRange(const UNumberRangeFormatter*, double, double, UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">upluralrules.h</td><td class="proto">int32_t uplrules_selectForRange(const UPluralRules*, const struct UFormattedNumberRange*, UChar*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 </table>
 <P></P>
 <a href="#_top">(jump back to top)</a>
 <hr>
 <a name="promoted"></a>
-<h2>Promoted to stable in ICU 69</h2>
+<h2>Promoted to stable in ICU 70</h2>
 <table BORDER="1" class="genTable">
 <THEAD>
 <tr>
-<th>File</th><th>API</th><th>ICU 68</th><th>ICU 69</th>
+<th>File</th><th>API</th><th>ICU 69</th><th>ICU 70</th>
 </tr>
 </THEAD>
 <tr class="row1">
-<td class="file">bytestream.h</td><td class="proto">void icu::ByteSink::AppendU8(const char*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">dtitvfmt.h</td><td class="proto">UDisplayContext icu::DateIntervalFormat::getContext(UDisplayContextType, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">bytestream.h</td><td class="proto">void icu::ByteSink::AppendU8(const char8_t*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">dtitvfmt.h</td><td class="proto">void icu::DateIntervalFormat::setContext(UDisplayContext, UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">dtptngen.h</td><td class="proto">UDateFormatHourCycle icu::DateTimePatternGenerator::getDefaultHourCycle(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setMaxDistance(const Locale&amp;, const Locale&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setDirection(ULocMatchDirection)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setNoDefaultLocale()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">localematcher.h</td><td class="proto"><tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_ONLY_TWO_WAY</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">localematcher.h</td><td class="proto">bool icu::LocaleMatcher::isMatch(const Locale&amp;, const Locale&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">localematcher.h</td><td class="proto"><tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_WITH_ONE_WAY</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getCandela()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">locid.h</td><td class="proto">void icu::Locale::canonicalize(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoon()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::product(const MeasureUnit&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoonImperial()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::reciprocal(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDot()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::withDimensionality(int32_t, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDram()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit&amp; icu::MeasureUnit::operator=(MeasureUnit&amp;&amp;) noexcept</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDrop()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">UMeasureUnitComplexity icu::MeasureUnit::getComplexity(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getEarthRadius()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">const char* icu::MeasureUnit::getIdentifier() const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getGrain()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto">icu::MeasureUnit::MeasureUnit(MeasureUnit&amp;&amp;) noexcept</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getJigger()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">int32_t icu::MeasureUnit::getDimensionality(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getLumen()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::forIdentifier(StringPiece, UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getPinch()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(const char8_t*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getQuartImperial()</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(const char8_t*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createCandela(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(const std::u8string&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoon(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">icu::StringPiece::StringPiece(std::nullptr_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoonImperial(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">int32_t icu::StringPiece::compare(StringPiece)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDot(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">int32_t icu::StringPiece::find(StringPiece, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDram(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">stringpiece.h</td><td class="proto">void icu::StringPiece::set(const char8_t*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDrop(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">stringpiece.h</td><td class="proto">void icu::StringPiece::set(const char8_t*, int32_t)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createEarthRadius(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">translit.h</td><td class="proto">UnicodeSet&amp; icu::Transliterator::getSourceSet(UnicodeSet&amp;) const</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.4</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createGrain(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">translit.h</td><td class="proto"><tt>static</tt> UnicodeString&amp; icu::Transliterator::getDisplayName(const UnicodeString&amp;, UnicodeString&amp;)</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.0</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createJigger(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">translit.h</td><td class="proto">void icu::Transliterator::finishTransliteration(Replaceable&amp;, UTransPosition&amp;) const</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.0</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createLumen(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">translit.h</td><td class="proto">void icu::Transliterator::transliterate(Replaceable&amp;, UTransPosition&amp;, UErrorCode&amp;) const</td><td class=""><i>(untagged)</i></td><td>Stable<br>
-<span class=""><span>ICU 2.0</span></span></td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createPinch(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_11</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createQuartImperial(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_12</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">measunit.h</td><td class="proto">std::pair&lt; LocalArray&lt; MeasureUnit &gt;, int32_t &gt; icu::MeasureUnit::splitToSingleUnits(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_23</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece) const&amp;</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_24</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece)&amp;&amp;</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_formatCalendarToResult(const UDateIntervalFormat*, UCalendar*, UCalendar*, UFormattedDateInterval*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberformatter.h</td><td class="proto">MeasureUnit icu::number::FormattedNumber::getOutputUnit(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_formatToResult(const UDateIntervalFormat*, UDate, UDate, UFormattedDateInterval*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">numberrangeformatter.h</td><td class="proto">std::pair&lt; StringClass, StringClass &gt; icu::number::FormattedNumberRange::getDecimalNumbers(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row1">
-<td class="file">udatpg.h</td><td class="proto">UDateFormatHourCycle udatpg_getDefaultHourCycle(const UDateTimePatternGenerator*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">plurrule.h</td><td class="proto">UnicodeString icu::PluralRules::select(const number::FormattedNumberRange&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_BREAK_ENGINE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(UErrorCode&amp;)</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_CHARACTER</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRawOffset(int32_t, UErrorCode&amp;)</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_LINE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRegion(const char*, UErrorCode&amp;)</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_SENTENCE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_ARABIC_EXTENDED_B</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_TITLE</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_CYPRO_MINOAN</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row1">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_WORD</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_ETHIOPIC_EXTENDED_B</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row0">
-<td class="file">utrace.h</td><td class="proto"><tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_START</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 67</td>
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_KANA_EXTENDED_B</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_F</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_G</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_OLD_UYGHUR</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_TANGSA</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_TOTO</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_VITHKUQI</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_ZNAMENNY_MUSICAL_NOTATION</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UJoiningGroup::U_JG_THIN_YEH</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UJoiningGroup::U_JG_VERTICAL_TAIL</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">ucurr.h</td><td class="proto"><tt>enum</tt> UCurrNameStyle::UCURR_FORMAL_SYMBOL_NAME</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">ucurr.h</td><td class="proto"><tt>enum</tt> UCurrNameStyle::UCURR_VARIANT_SYMBOL_NAME</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">udateintervalformat.h</td><td class="proto">UDisplayContext udtitvfmt_getContext(const UDateIntervalFormat*, UDisplayContextType, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_setContext(UDateIntervalFormat*, UDisplayContext, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_AUTO</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_MIN2</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_FORMAL</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_VARIANT</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberformatter.h</td><td class="proto">int32_t unumf_resultToDecimalNumber(const UFormattedNumber*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">UFormattedNumberRange* unumrf_openResult(UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">UNumberRangeFormatter* unumrf_openForSkeletonWithCollapseAndIdentityFallback(const UChar*, int32_t, UNumberRangeCollapse, UNumberRangeIdentityFallback, const char*, UParseError*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">UNumberRangeIdentityResult unumrf_resultGetIdentityResult(const UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">const UFormattedValue* unumrf_resultAsValue(const UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">int32_t unumrf_resultGetFirstDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">int32_t unumrf_resultGetSecondDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_close(UNumberRangeFormatter*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_closeResult(UFormattedNumberRange*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_formatDecimalRange(const UNumberRangeFormatter*, const char*, int32_t, const char*, int32_t, UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_formatDoubleRange(const UNumberRangeFormatter*, double, double, UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row0">
+<td class="file">upluralrules.h</td><td class="proto">int32_t uplrules_selectForRange(const UPluralRules*, const struct UFormattedNumberRange*, UChar*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft&rarr;Stable<br>ICU 68</td>
+</tr>
+<tr class="row1">
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_CYPRO_MINOAN</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_OLD_UYGHUR</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_TANGSA</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_TOTO</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_VITHKUQI</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">utypes.h</td><td class="proto"><tt>enum</tt> UErrorCode::U_INPUT_TOO_LONG_ERROR</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 68</span></span></td>
 </tr>
 </table>
 <P></P>
 <a href="#_top">(jump back to top)</a>
 <hr>
 <a name="added"></a>
-<h2>Added in ICU 69</h2>
+<h2>Added in ICU 70</h2>
 <table BORDER="1" class="genTable">
 <THEAD>
 <tr>
-<th>File</th><th>API</th><th>ICU 68</th><th>ICU 69</th>
+<th>File</th><th>API</th><th>ICU 69</th><th>ICU 70</th>
 </tr>
 </THEAD>
 <tr class="row1">
-<td class="file">basictz.h</td><td class="proto">void icu::BasicTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::withPrefix(UMeasurePrefix, UErrorCode&amp;) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">measunit.h</td><td class="proto">UMeasurePrefix icu::MeasureUnit::getPrefix(UErrorCode&amp;) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getMilligramOfglucosePerDeciliter()</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createMilligramOfglucosePerDeciliter(UErrorCode&amp;)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::unitDisplayCase(StringPiece) const&amp;</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::unitDisplayCase(StringPiece)&amp;&amp;</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">Precision icu::number::FractionPrecision::withSignificantDigits(int32_t, int32_t, UNumberRoundingPriority) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">Precision icu::number::Precision::trailingZeroDisplay(UNumberTrailingZeroDisplay) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">StringProp&amp; icu::number::impl::StringProp::operator=(StringProp&amp;&amp;)</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span></span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">StringProp&amp; icu::number::impl::StringProp::operator=(const StringProp&amp;)</td><td class="">(missing)</td><td>Internal<br>
+<td class="file">dcfmtsym.h</td><td class="proto"><tt>enum</tt>  							icu::DecimalFormatSymbols::ENumberFormatSymbol::kApproximatelySignSymbol</td><td class="">(missing)</td><td>Internal<br>
 <span class=""><span></span></span></td>
 </tr>
 <tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">bool icu::number::impl::StringProp::isSet() const</td><td class="">(missing)</td><td>Internal<br>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getItem()</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getKilowattHourPer100Kilometer()</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createItem(UErrorCode&amp;)</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createKilowattHourPer100Kilometer(UErrorCode&amp;)</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">numberformatter.h</td><td class="proto">const DecimalFormatSymbols* icu::number::LocalizedNumberFormatter::getDecimalFormatSymbols() const</td><td class="">(missing)</td><td>Internal<br>
 <span class=""><span></span></span></td>
 </tr>
 <tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">const char* icu::number::FormattedNumber::getGender(UErrorCode&amp;) const</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span>ICU 69</span></span></td>
+<td class="file">numberrangeformatter.h</td><td class="proto">icu::number::FormattedNumberRange::FormattedNumberRange()</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
 </tr>
 <tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">icu::number::impl::StringProp::StringProp(StringProp&amp;&amp;)</td><td class="">(missing)</td><td>Internal<br>
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(UErrorCode&amp;)</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRawOffset(int32_t, UErrorCode&amp;)</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">timezone.h</td><td class="proto"><tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRegion(const char*, UErrorCode&amp;)</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto">bool u_stringHasBinaryProperty(const UChar*, int32_t, UProperty)</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_ARABIC_EXTENDED_B</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_CYPRO_MINOAN</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_ETHIOPIC_EXTENDED_B</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_KANA_EXTENDED_B</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_F</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_G</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_OLD_UYGHUR</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_TANGSA</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_TOTO</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_VITHKUQI</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UBlockCode::UBLOCK_ZNAMENNY_MUSICAL_NOTATION</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UJoiningGroup::U_JG_THIN_YEH</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UJoiningGroup::U_JG_VERTICAL_TAIL</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_BASIC_EMOJI</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_EMOJI_KEYCAP_SEQUENCE</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_FLAG_SEQUENCE</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_MODIFIER_SEQUENCE</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_TAG_SEQUENCE</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_ZWJ_SEQUENCE</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">uchar.h</td><td class="proto"><tt>enum</tt> UProperty::UCHAR_RGI_EMOJI</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatSymbolType::UDAT_NARROW_QUARTERS</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">udat.h</td><td class="proto"><tt>enum</tt> UDateFormatSymbolType::UDAT_STANDALONE_NARROW_QUARTERS</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row1">
+<td class="file">uniset.h</td><td class="proto">bool icu::UnicodeSet::hasStrings() const</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
+</tr>
+<tr class="row0">
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatSymbol::UNUM_APPROXIMATELY_SIGN_SYMBOL</td><td class="">(missing)</td><td>Internal<br>
 <span class=""><span></span></span></td>
 </tr>
 <tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">icu::number::impl::StringProp::StringProp(const StringProp&amp;)</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span></span></span></td>
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_CYPRO_MINOAN</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">icu::number::impl::StringProp::~StringProp()</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span></span></span></td>
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_OLD_UYGHUR</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">int16_t icu::number::impl::StringProp::length() const</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span></span></span></td>
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_TANGSA</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">void icu::number::impl::StringProp::set(StringPiece)</td><td class="">(missing)</td><td>Internal<br>
-<span class=""><span></span></span></td>
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_TOTO</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row1">
-<td class="file">rbtz.h</td><td class="proto">void icu::RuleBasedTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
+<td class="file">uscript.h</td><td class="proto"><tt>enum</tt> UScriptCode::USCRIPT_VITHKUQI</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 70</span></span></td><td class="bornstable"><b class="bigwarn" title="A new API was introduced as stable in ICU 70.">(Born Stable)</b></td>
 </tr>
 <tr class="row0">
-<td class="file">simpletz.h</td><td class="proto">void icu::SimpleTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
+<td class="file">uset.h</td><td class="proto">bool uset_hasStrings(const USet*)</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
 </tr>
 <tr class="row1">
-<td class="file">ubrk.h</td><td class="proto">UBreakIterator* ubrk_clone(const UBreakIterator*, UErrorCode*)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
+<td class="file">uset.h</td><td class="proto">int32_t uset_getRangeCount(const USet*)</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
 </tr>
 <tr class="row0">
-<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_FORMER</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
+<td class="file">usetiter.h</td><td class="proto">UnicodeSetIterator&amp; icu::UnicodeSetIterator::skipToStrings()</td><td class="">(missing)</td><td>Draft<br>
+<span class=""><span>ICU 70</span></span></td>
 </tr>
 <tr class="row1">
-<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_LATTER</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_FORMER</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_LATTER</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_FORMER</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_LATTER</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">ucal.h</td><td class="proto">void ucal_getTimeZoneOffsetFromLocal(const UCalendar*, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t*, int32_t*, UErrorCode*)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">uformattedvalue.h</td><td class="proto"><tt>enum</tt> UFieldCategory::UFIELD_CATEGORY_NUMBER_RANGE_SPAN</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">uniset.h</td><td class="proto">UnicodeSet&amp; icu::UnicodeSet::retain(const UnicodeString&amp;)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_CEILING</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_FLOOR</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_ODD</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_RELAXED</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_STRICT</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_ACCOUNTING_NEGATIVE</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_NEGATIVE</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_AUTO</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_HIDE_IF_WHOLE</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">uset.h</td><td class="proto">void uset_complementAllCodePoints(USet*, const UChar*, int32_t)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">uset.h</td><td class="proto">void uset_complementRange(USet*, UChar32, UChar32)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">uset.h</td><td class="proto">void uset_complementString(USet*, const UChar*, int32_t)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">uset.h</td><td class="proto">void uset_removeAllCodePoints(USet*, const UChar*, int32_t)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">uset.h</td><td class="proto">void uset_retainAllCodePoints(USet*, const UChar*, int32_t)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row1">
-<td class="file">uset.h</td><td class="proto">void uset_retainString(USet*, const UChar*, int32_t)</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
-</tr>
-<tr class="row0">
-<td class="file">vtzone.h</td><td class="proto">void icu::VTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="">(missing)</td><td>Draft<br>
-<span class=""><span>ICU 69</span></span></td>
+<td class="file">utypes.h</td><td class="proto"><tt>enum</tt> UErrorCode::U_INPUT_TOO_LONG_ERROR</td><td class="">(missing)</td><td>Stable<br>
+<span class=""><span>ICU 68</span></span></td>
 </tr>
 </table>
 <P></P>
 <a href="#_top">(jump back to top)</a>
 <hr>
 <a name="other"></a>
-<h2>Other existing drafts in ICU 69</h2>
+<h2>Other existing drafts in ICU 70</h2>
 <div class="other">
 <table BORDER="1" class="genTable">
 <THEAD>
 <tr>
-<th>File</th><th>API</th><th>ICU 68</th><th>ICU 69</th>
+<th>File</th><th>API</th><th>ICU 69</th><th>ICU 70</th>
 </tr>
 </THEAD>
 <tr class="row1">
-<td class="file">dtitvfmt.h</td><td class="proto">UDisplayContext icu::DateIntervalFormat::getContext(UDisplayContextType, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">dtitvfmt.h</td><td class="proto">void icu::DateIntervalFormat::setContext(UDisplayContext, UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setMaxDistance(const Locale&amp;, const Locale&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">localematcher.h</td><td class="proto">Builder&amp; icu::LocaleMatcher::Builder::setNoDefaultLocale()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">localematcher.h</td><td class="proto">UBool icu::LocaleMatcher::isMatch(const Locale&amp;, const Locale&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">basictz.h</td><td class="proto">void icu::BasicTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
 <td class="file">measfmt.h</td><td class="proto">void icu::MeasureFormat::parseObject(const UnicodeString&amp;, Formattable&amp;, ParsePosition&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 53</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getCandela()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">measunit.h</td><td class="proto">MeasureUnit icu::MeasureUnit::withPrefix(UMeasurePrefix, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoon()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">measunit.h</td><td class="proto">UMeasurePrefix icu::MeasureUnit::getPrefix(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoonImperial()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getMilligramOfglucosePerDeciliter()</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDot()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createMilligramOfglucosePerDeciliter(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDram()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">numberformatter.h</td><td class="proto">Precision icu::number::FractionPrecision::withSignificantDigits(int32_t, int32_t, UNumberRoundingPriority) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getDrop()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">numberformatter.h</td><td class="proto">Precision icu::number::Precision::trailingZeroDisplay(UNumberTrailingZeroDisplay) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getEarthRadius()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">rbtz.h</td><td class="proto">void icu::RuleBasedTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getGrain()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">simpletz.h</td><td class="proto">void icu::SimpleTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getJigger()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ubrk.h</td><td class="proto">UBreakIterator* ubrk_clone(const UBreakIterator*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getLumen()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_FORMER</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getPinch()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_LATTER</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit icu::MeasureUnit::getQuartImperial()</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_FORMER</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createCandela(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_LATTER</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoon(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_FORMER</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoonImperial(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto"><tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_LATTER</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDot(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">ucal.h</td><td class="proto">void ucal_getTimeZoneOffsetFromLocal(const UCalendar*, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t*, int32_t*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDram(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">uformattedvalue.h</td><td class="proto"><tt>enum</tt> UFieldCategory::UFIELD_CATEGORY_NUMBER_RANGE_SPAN</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createDrop(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">uniset.h</td><td class="proto">UnicodeSet&amp; icu::UnicodeSet::retain(const UnicodeString&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createEarthRadius(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_CEILING</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createGrain(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_FLOOR</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createJigger(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_ODD</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createLumen(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_RELAXED</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createPinch(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_STRICT</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">measunit.h</td><td class="proto"><tt>static</tt> MeasureUnit* icu::MeasureUnit::createQuartImperial(UErrorCode&amp;)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_ACCOUNTING_NEGATIVE</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">measunit.h</td><td class="proto">std::pair&lt; LocalArray&lt; MeasureUnit &gt;, int32_t &gt; icu::MeasureUnit::splitToSingleUnits(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_NEGATIVE</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece) const&amp;</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_AUTO</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row1">
-<td class="file">numberformatter.h</td><td class="proto">Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece)&amp;&amp;</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
+<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_HIDE_IF_WHOLE</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
 </tr>
 <tr class="row0">
-<td class="file">numberformatter.h</td><td class="proto">MeasureUnit icu::number::FormattedNumber::getOutputUnit(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">numberrangeformatter.h</td><td class="proto">std::pair&lt; StringClass, StringClass &gt; icu::number::FormattedNumberRange::getDecimalNumbers(UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">plurrule.h</td><td class="proto">UnicodeString icu::PluralRules::select(const number::FormattedNumberRange&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">ucurr.h</td><td class="proto"><tt>enum</tt> UCurrNameStyle::UCURR_FORMAL_SYMBOL_NAME</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">ucurr.h</td><td class="proto"><tt>enum</tt> UCurrNameStyle::UCURR_VARIANT_SYMBOL_NAME</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">udateintervalformat.h</td><td class="proto">UDisplayContext udtitvfmt_getContext(const UDateIntervalFormat*, UDisplayContextType, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">udateintervalformat.h</td><td class="proto">void udtitvfmt_setContext(UDateIntervalFormat*, UDisplayContext, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_AUTO</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unum.h</td><td class="proto"><tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_MIN2</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_FORMAL</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unumberformatter.h</td><td class="proto"><tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_VARIANT</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberformatter.h</td><td class="proto">int32_t unumf_resultToDecimalNumber(const UFormattedNumber*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unumberrangeformatter.h</td><td class="proto">UFormattedNumberRange* unumrf_openResult(UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberrangeformatter.h</td><td class="proto">UNumberRangeFormatter* unumrf_openForSkeletonWithCollapseAndIdentityFallback(const UChar*, int32_t, UNumberRangeCollapse, UNumberRangeIdentityFallback, const char*, UParseError*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unumberrangeformatter.h</td><td class="proto">UNumberRangeIdentityResult unumrf_resultGetIdentityResult(const UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberrangeformatter.h</td><td class="proto">const UFormattedValue* unumrf_resultAsValue(const UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unumberrangeformatter.h</td><td class="proto">int32_t unumrf_resultGetFirstDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberrangeformatter.h</td><td class="proto">int32_t unumrf_resultGetSecondDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_close(UNumberRangeFormatter*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_closeResult(UFormattedNumberRange*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_formatDecimalRange(const UNumberRangeFormatter*, const char*, int32_t, const char*, int32_t, UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
-<td class="file">unumberrangeformatter.h</td><td class="proto">void unumrf_formatDoubleRange(const UNumberRangeFormatter*, double, double, UFormattedNumberRange*, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row0">
-<td class="file">upluralrules.h</td><td class="proto">int32_t uplrules_selectForRange(const UPluralRules*, const struct UFormattedNumberRange*, UChar*, int32_t, UErrorCode*)</td><td class="" colspan="2" align="center">Draft<br>ICU 68</td>
-</tr>
-<tr class="row1">
 <td class="file">uregex.h</td><td class="proto"><tt>enum</tt> URegexpFlag::UREGEX_CANON_EQ</td><td class="" colspan="2" align="center">Draft<br>ICU 2.4</td>
 </tr>
+<tr class="row1">
+<td class="file">uset.h</td><td class="proto">void uset_complementAllCodePoints(USet*, const UChar*, int32_t)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
+<tr class="row0">
+<td class="file">uset.h</td><td class="proto">void uset_complementRange(USet*, UChar32, UChar32)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
+<tr class="row1">
+<td class="file">uset.h</td><td class="proto">void uset_complementString(USet*, const UChar*, int32_t)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
+<tr class="row0">
+<td class="file">uset.h</td><td class="proto">void uset_removeAllCodePoints(USet*, const UChar*, int32_t)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
+<tr class="row1">
+<td class="file">uset.h</td><td class="proto">void uset_retainAllCodePoints(USet*, const UChar*, int32_t)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
+<tr class="row0">
+<td class="file">uset.h</td><td class="proto">void uset_retainString(USet*, const UChar*, int32_t)</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
+<tr class="row1">
+<td class="file">vtzone.h</td><td class="proto">void icu::VTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</td><td class="" colspan="2" align="center">Draft<br>ICU 69</td>
+</tr>
 </table>
 </div>
 <P></P>
@@ -799,13 +857,502 @@
 <i>This section shows cases where the signature was "simplified" for the sake of comparison. The simplified form is in bold, followed by
     	all possible variations in "original" form.</i>
 <div class="other">
-<ul></ul>
+<ul>
+<li>
+<b>UClassID icu::BreakIterator::getDynamicClassID() const</b>
+<br>UClassID icu::BreakIterator::getDynamicClassID() const override=0<br>UClassID icu::BreakIterator::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::Calendar::getDynamicClassID() const</b>
+<br>UClassID icu::Calendar::getDynamicClassID() const override=0<br>UClassID icu::Calendar::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::Collator::getDynamicClassID() const</b>
+<br>UClassID icu::Collator::getDynamicClassID() const override=0<br>UClassID icu::Collator::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::ForwardCharacterIterator::getDynamicClassID() const</b>
+<br>UClassID icu::ForwardCharacterIterator::getDynamicClassID() const override=0<br>UClassID icu::ForwardCharacterIterator::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::NumberFormat::getDynamicClassID() const</b>
+<br>UClassID icu::NumberFormat::getDynamicClassID() const override=0<br>UClassID icu::NumberFormat::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::TimeZone::getDynamicClassID() const</b>
+<br>UClassID icu::TimeZone::getDynamicClassID() const override=0<br>UClassID icu::TimeZone::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::Transliterator::getDynamicClassID() const</b>
+<br>UClassID icu::Transliterator::getDynamicClassID() const override=0<br>UClassID icu::Transliterator::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UClassID icu::UnicodeFunctor::getDynamicClassID() const</b>
+<br>UClassID icu::UnicodeFunctor::getDynamicClassID() const override=0<br>UClassID icu::UnicodeFunctor::getDynamicClassID() const=0<br>
+</li>
+<li>
+<b>UMatchDegree icu::UnicodeFilter::matches(const Replaceable&amp;, int32_t&amp;, int32_t, bool)</b>
+<br>UMatchDegree icu::UnicodeFilter::matches(const Replaceable&amp;, int32_t&amp;, int32_t, UBool)<br>UMatchDegree icu::UnicodeFilter::matches(const Replaceable&amp;, int32_t&amp;, int32_t, UBool) override<br>
+</li>
+<li>
+<b>UMatchDegree icu::UnicodeSet::matches(const Replaceable&amp;, int32_t&amp;, int32_t, bool)</b>
+<br>UMatchDegree icu::UnicodeSet::matches(const Replaceable&amp;, int32_t&amp;, int32_t, UBool)<br>UMatchDegree icu::UnicodeSet::matches(const Replaceable&amp;, int32_t&amp;, int32_t, UBool) override<br>
+</li>
+<li>
+<b>UnicodeString&amp; icu::UnicodeSet::toPattern(UnicodeString&amp;, bool escapeUnprintable=) const</b>
+<br>UnicodeString&amp; icu::UnicodeSet::toPattern(UnicodeString&amp;, UBool escapeUnprintable=) const<br>UnicodeString&amp; icu::UnicodeSet::toPattern(UnicodeString&amp;, UBool escapeUnprintable=) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const<br>UBool icu::AnnualTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const<br>UBool icu::AnnualTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::getNextStart(UDate, int32_t, int32_t, bool, UDate&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const<br>UBool icu::AnnualTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, bool, UDate&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const<br>UBool icu::AnnualTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const<br>UBool icu::AnnualTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::operator!=(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::operator!=(const TimeZoneRule&amp;) const<br>bool icu::AnnualTimeZoneRule::operator!=(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::AnnualTimeZoneRule::operator==(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::AnnualTimeZoneRule::operator==(const TimeZoneRule&amp;) const<br>bool icu::AnnualTimeZoneRule::operator==(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::BreakIterator::operator==(const BreakIterator&amp;) const</b>
+<br>UBool icu::BreakIterator::operator==(const BreakIterator&amp;) const=0<br>bool icu::BreakIterator::operator==(const BreakIterator&amp;) const=0<br>
+</li>
+<li>
+<b>bool icu::ChoiceFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::ChoiceFormat::operator==(const Format&amp;) const<br>bool icu::ChoiceFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::DateFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::DateFormat::operator==(const Format&amp;) const<br>bool icu::DateFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::DateIntervalFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::DateIntervalFormat::operator==(const Format&amp;) const<br>bool icu::DateIntervalFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::DecimalFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::DecimalFormat::operator==(const Format&amp;) const U_OVERRIDE<br>bool icu::DecimalFormat::operator==(const Format&amp;) const U_OVERRIDE<br>
+</li>
+<li>
+<b>bool icu::Format::operator==(const Format&amp;) const</b>
+<br>UBool icu::Format::operator==(const Format&amp;) const=0<br>bool icu::Format::operator==(const Format&amp;) const=0<br>
+</li>
+<li>
+<b>bool icu::ForwardCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const</b>
+<br>UBool icu::ForwardCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const=0<br>bool icu::ForwardCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const=0<br>
+</li>
+<li>
+<b>bool icu::GregorianCalendar::haveDefaultCentury() const</b>
+<br>UBool icu::GregorianCalendar::haveDefaultCentury() const<br>UBool icu::GregorianCalendar::haveDefaultCentury() const override<br>
+</li>
+<li>
+<b>bool icu::GregorianCalendar::inDaylightTime(UErrorCode&amp;) const</b>
+<br>UBool icu::GregorianCalendar::inDaylightTime(UErrorCode&amp;) const<br>UBool icu::GregorianCalendar::inDaylightTime(UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::GregorianCalendar::isEquivalentTo(const Calendar&amp;) const</b>
+<br>UBool icu::GregorianCalendar::isEquivalentTo(const Calendar&amp;) const<br>UBool icu::GregorianCalendar::isEquivalentTo(const Calendar&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const<br>UBool icu::InitialTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const<br>UBool icu::InitialTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::getNextStart(UDate, int32_t, int32_t, bool, UDate&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const<br>UBool icu::InitialTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, bool, UDate&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const<br>UBool icu::InitialTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const<br>UBool icu::InitialTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::operator!=(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::operator!=(const TimeZoneRule&amp;) const<br>bool icu::InitialTimeZoneRule::operator!=(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::InitialTimeZoneRule::operator==(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::InitialTimeZoneRule::operator==(const TimeZoneRule&amp;) const<br>bool icu::InitialTimeZoneRule::operator==(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::MeasureFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::MeasureFormat::operator==(const Format&amp;) const<br>bool icu::MeasureFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::MessageFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::MessageFormat::operator==(const Format&amp;) const<br>bool icu::MessageFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::NumberFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::NumberFormat::operator==(const Format&amp;) const<br>bool icu::NumberFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::PluralFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::PluralFormat::operator==(const Format&amp;) const<br>bool icu::PluralFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedBreakIterator::isBoundary(int32_t)</b>
+<br>UBool icu::RuleBasedBreakIterator::isBoundary(int32_t)<br>UBool icu::RuleBasedBreakIterator::isBoundary(int32_t) override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedBreakIterator::operator==(const BreakIterator&amp;) const</b>
+<br>UBool icu::RuleBasedBreakIterator::operator==(const BreakIterator&amp;) const<br>bool icu::RuleBasedBreakIterator::operator==(const BreakIterator&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedCollator::operator==(const Collator&amp;) const</b>
+<br>UBool icu::RuleBasedCollator::operator==(const Collator&amp;) const<br>bool icu::RuleBasedCollator::operator==(const Collator&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedNumberFormat::isLenient() const</b>
+<br>UBool icu::RuleBasedNumberFormat::isLenient() const<br>UBool icu::RuleBasedNumberFormat::isLenient() const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedNumberFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::RuleBasedNumberFormat::operator==(const Format&amp;) const<br>bool icu::RuleBasedNumberFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedTimeZone::getNextTransition(UDate, bool, TimeZoneTransition&amp;) const</b>
+<br>UBool icu::RuleBasedTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&amp;) const<br>UBool icu::RuleBasedTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedTimeZone::getPreviousTransition(UDate, bool, TimeZoneTransition&amp;) const</b>
+<br>UBool icu::RuleBasedTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&amp;) const<br>UBool icu::RuleBasedTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedTimeZone::hasSameRules(const TimeZone&amp;) const</b>
+<br>UBool icu::RuleBasedTimeZone::hasSameRules(const TimeZone&amp;) const<br>UBool icu::RuleBasedTimeZone::hasSameRules(const TimeZone&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const</b>
+<br>UBool icu::RuleBasedTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const<br>UBool icu::RuleBasedTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedTimeZone::operator==(const TimeZone&amp;) const</b>
+<br>UBool icu::RuleBasedTimeZone::operator==(const TimeZone&amp;) const<br>bool icu::RuleBasedTimeZone::operator==(const TimeZone&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::RuleBasedTimeZone::useDaylightTime() const</b>
+<br>UBool icu::RuleBasedTimeZone::useDaylightTime() const<br>UBool icu::RuleBasedTimeZone::useDaylightTime() const override<br>
+</li>
+<li>
+<b>bool icu::SelectFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::SelectFormat::operator==(const Format&amp;) const<br>bool icu::SelectFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleDateFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::SimpleDateFormat::operator==(const Format&amp;) const<br>bool icu::SimpleDateFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleNumberFormatFactory::visible() const</b>
+<br>UBool icu::SimpleNumberFormatFactory::visible() const<br>UBool icu::SimpleNumberFormatFactory::visible() const override<br>
+</li>
+<li>
+<b>bool icu::SimpleTimeZone::getNextTransition(UDate, bool, TimeZoneTransition&amp;) const</b>
+<br>UBool icu::SimpleTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&amp;) const<br>UBool icu::SimpleTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleTimeZone::getPreviousTransition(UDate, bool, TimeZoneTransition&amp;) const</b>
+<br>UBool icu::SimpleTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&amp;) const<br>UBool icu::SimpleTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleTimeZone::hasSameRules(const TimeZone&amp;) const</b>
+<br>UBool icu::SimpleTimeZone::hasSameRules(const TimeZone&amp;) const<br>UBool icu::SimpleTimeZone::hasSameRules(const TimeZone&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const</b>
+<br>UBool icu::SimpleTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const<br>UBool icu::SimpleTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleTimeZone::operator==(const TimeZone&amp;) const</b>
+<br>UBool icu::SimpleTimeZone::operator==(const TimeZone&amp;) const<br>bool icu::SimpleTimeZone::operator==(const TimeZone&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::SimpleTimeZone::useDaylightTime() const</b>
+<br>UBool icu::SimpleTimeZone::useDaylightTime() const<br>UBool icu::SimpleTimeZone::useDaylightTime() const override<br>
+</li>
+<li>
+<b>bool icu::StringCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const</b>
+<br>UBool icu::StringCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const<br>bool icu::StringCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::StringSearch::operator==(const SearchIterator&amp;) const</b>
+<br>UBool icu::StringSearch::operator==(const SearchIterator&amp;) const<br>bool icu::StringSearch::operator==(const SearchIterator&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const<br>UBool icu::TimeArrayTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const<br>UBool icu::TimeArrayTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::getNextStart(UDate, int32_t, int32_t, bool, UDate&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const<br>UBool icu::TimeArrayTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, bool, UDate&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const<br>UBool icu::TimeArrayTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const<br>UBool icu::TimeArrayTimeZoneRule::isEquivalentTo(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::operator!=(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::operator!=(const TimeZoneRule&amp;) const<br>bool icu::TimeArrayTimeZoneRule::operator!=(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeArrayTimeZoneRule::operator==(const TimeZoneRule&amp;) const</b>
+<br>UBool icu::TimeArrayTimeZoneRule::operator==(const TimeZoneRule&amp;) const<br>bool icu::TimeArrayTimeZoneRule::operator==(const TimeZoneRule&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeZoneFormat::operator==(const Format&amp;) const</b>
+<br>UBool icu::TimeZoneFormat::operator==(const Format&amp;) const<br>bool icu::TimeZoneFormat::operator==(const Format&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::TimeZoneNames::operator==(const TimeZoneNames&amp;) const</b>
+<br>UBool icu::TimeZoneNames::operator==(const TimeZoneNames&amp;) const=0<br>bool icu::TimeZoneNames::operator==(const TimeZoneNames&amp;) const=0<br>
+</li>
+<li>
+<b>bool icu::UCharCharacterIterator::hasNext()</b>
+<br>UBool icu::UCharCharacterIterator::hasNext()<br>UBool icu::UCharCharacterIterator::hasNext() override<br>
+</li>
+<li>
+<b>bool icu::UCharCharacterIterator::hasPrevious()</b>
+<br>UBool icu::UCharCharacterIterator::hasPrevious()<br>UBool icu::UCharCharacterIterator::hasPrevious() override<br>
+</li>
+<li>
+<b>bool icu::UCharCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const</b>
+<br>UBool icu::UCharCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const<br>bool icu::UCharCharacterIterator::operator==(const ForwardCharacterIterator&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::UnicodeSet::contains(UChar32) const</b>
+<br>UBool icu::UnicodeSet::contains(UChar32) const<br>UBool icu::UnicodeSet::contains(UChar32) const override<br>
+</li>
+<li>
+<b>bool icu::UnicodeString::hasMetaData() const</b>
+<br>UBool icu::UnicodeString::hasMetaData() const<br>UBool icu::UnicodeString::hasMetaData() const override<br>
+</li>
+<li>
+<b>bool icu::UnicodeStringAppendable::appendCodePoint(UChar32)</b>
+<br>UBool icu::UnicodeStringAppendable::appendCodePoint(UChar32)<br>UBool icu::UnicodeStringAppendable::appendCodePoint(UChar32) override<br>
+</li>
+<li>
+<b>bool icu::UnicodeStringAppendable::appendCodeUnit(char16_t)</b>
+<br>UBool icu::UnicodeStringAppendable::appendCodeUnit(char16_t)<br>UBool icu::UnicodeStringAppendable::appendCodeUnit(char16_t) override<br>
+</li>
+<li>
+<b>bool icu::UnicodeStringAppendable::appendString(const char16_t*, int32_t)</b>
+<br>UBool icu::UnicodeStringAppendable::appendString(const char16_t*, int32_t)<br>UBool icu::UnicodeStringAppendable::appendString(const char16_t*, int32_t) override<br>
+</li>
+<li>
+<b>bool icu::UnicodeStringAppendable::reserveAppendCapacity(int32_t)</b>
+<br>UBool icu::UnicodeStringAppendable::reserveAppendCapacity(int32_t)<br>UBool icu::UnicodeStringAppendable::reserveAppendCapacity(int32_t) override<br>
+</li>
+<li>
+<b>bool icu::VTimeZone::getNextTransition(UDate, bool, TimeZoneTransition&amp;) const</b>
+<br>UBool icu::VTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&amp;) const<br>UBool icu::VTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::VTimeZone::getPreviousTransition(UDate, bool, TimeZoneTransition&amp;) const</b>
+<br>UBool icu::VTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&amp;) const<br>UBool icu::VTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::VTimeZone::hasSameRules(const TimeZone&amp;) const</b>
+<br>UBool icu::VTimeZone::hasSameRules(const TimeZone&amp;) const<br>UBool icu::VTimeZone::hasSameRules(const TimeZone&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::VTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const</b>
+<br>UBool icu::VTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const<br>UBool icu::VTimeZone::inDaylightTime(UDate, UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::VTimeZone::operator==(const TimeZone&amp;) const</b>
+<br>UBool icu::VTimeZone::operator==(const TimeZone&amp;) const<br>bool icu::VTimeZone::operator==(const TimeZone&amp;) const override<br>
+</li>
+<li>
+<b>bool icu::VTimeZone::useDaylightTime() const</b>
+<br>UBool icu::VTimeZone::useDaylightTime() const<br>UBool icu::VTimeZone::useDaylightTime() const override<br>
+</li>
+<li>
+<b>void icu::RuleBasedNumberFormat::setLenient(bool)</b>
+<br>void icu::RuleBasedNumberFormat::setLenient(UBool)<br>void icu::RuleBasedNumberFormat::setLenient(UBool) override<br>
+</li>
+<li>
+<b>void icu::RuleBasedTimeZone::getOffset(UDate, bool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</b>
+<br>void icu::RuleBasedTimeZone::getOffset(UDate, UBool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const<br>void icu::RuleBasedTimeZone::getOffset(UDate, UBool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>void icu::SimpleTimeZone::getOffset(UDate, bool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</b>
+<br>void icu::SimpleTimeZone::getOffset(UDate, UBool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const<br>void icu::SimpleTimeZone::getOffset(UDate, UBool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>void icu::VTimeZone::getOffset(UDate, bool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const</b>
+<br>void icu::VTimeZone::getOffset(UDate, UBool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const<br>void icu::VTimeZone::getOffset(UDate, UBool, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const override<br>
+</li>
+<li>
+<b>void* icu::AnnualTimeZoneRule::clone() const</b>
+<br>AnnualTimeZoneRule* icu::AnnualTimeZoneRule::clone() const<br>AnnualTimeZoneRule* icu::AnnualTimeZoneRule::clone() const override<br>
+</li>
+<li>
+<b>void* icu::BasicTimeZone::clone() const</b>
+<br>BasicTimeZone* icu::BasicTimeZone::clone() const override=0<br>BasicTimeZone* icu::BasicTimeZone::clone() const=0<br>
+</li>
+<li>
+<b>void* icu::ChoiceFormat::clone() const</b>
+<br>ChoiceFormat* icu::ChoiceFormat::clone() const<br>ChoiceFormat* icu::ChoiceFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::CurrencyAmount::clone() const</b>
+<br>CurrencyAmount* icu::CurrencyAmount::clone() const<br>CurrencyAmount* icu::CurrencyAmount::clone() const override<br>
+</li>
+<li>
+<b>void* icu::CurrencyUnit::clone() const</b>
+<br>CurrencyUnit* icu::CurrencyUnit::clone() const<br>CurrencyUnit* icu::CurrencyUnit::clone() const override<br>
+</li>
+<li>
+<b>void* icu::DateFormat::clone() const</b>
+<br>DateFormat* icu::DateFormat::clone() const override=0<br>DateFormat* icu::DateFormat::clone() const=0<br>
+</li>
+<li>
+<b>void* icu::DateIntervalFormat::clone() const</b>
+<br>DateIntervalFormat* icu::DateIntervalFormat::clone() const<br>DateIntervalFormat* icu::DateIntervalFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::GregorianCalendar::clone() const</b>
+<br>GregorianCalendar* icu::GregorianCalendar::clone() const<br>GregorianCalendar* icu::GregorianCalendar::clone() const override<br>
+</li>
+<li>
+<b>void* icu::InitialTimeZoneRule::clone() const</b>
+<br>InitialTimeZoneRule* icu::InitialTimeZoneRule::clone() const<br>InitialTimeZoneRule* icu::InitialTimeZoneRule::clone() const override<br>
+</li>
+<li>
+<b>void* icu::MeasureFormat::clone() const</b>
+<br>MeasureFormat* icu::MeasureFormat::clone() const<br>MeasureFormat* icu::MeasureFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::MessageFormat::clone() const</b>
+<br>MessageFormat* icu::MessageFormat::clone() const<br>MessageFormat* icu::MessageFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::NumberFormat::clone() const</b>
+<br>NumberFormat* icu::NumberFormat::clone() const override=0<br>NumberFormat* icu::NumberFormat::clone() const=0<br>
+</li>
+<li>
+<b>void* icu::PluralFormat::clone() const</b>
+<br>PluralFormat* icu::PluralFormat::clone() const<br>PluralFormat* icu::PluralFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::RuleBasedBreakIterator::clone() const</b>
+<br>RuleBasedBreakIterator* icu::RuleBasedBreakIterator::clone() const<br>RuleBasedBreakIterator* icu::RuleBasedBreakIterator::clone() const override<br>
+</li>
+<li>
+<b>void* icu::RuleBasedBreakIterator::createBufferClone(void*, int32_t&amp;, UErrorCode&amp;)</b>
+<br>RuleBasedBreakIterator* icu::RuleBasedBreakIterator::createBufferClone(void*, int32_t&amp;, UErrorCode&amp;)<br>RuleBasedBreakIterator* icu::RuleBasedBreakIterator::createBufferClone(void*, int32_t&amp;, UErrorCode&amp;) override<br>
+</li>
+<li>
+<b>void* icu::RuleBasedCollator::clone() const</b>
+<br>RuleBasedCollator* icu::RuleBasedCollator::clone() const<br>RuleBasedCollator* icu::RuleBasedCollator::clone() const override<br>
+</li>
+<li>
+<b>void* icu::RuleBasedNumberFormat::clone() const</b>
+<br>RuleBasedNumberFormat* icu::RuleBasedNumberFormat::clone() const<br>RuleBasedNumberFormat* icu::RuleBasedNumberFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::RuleBasedTimeZone::clone() const</b>
+<br>RuleBasedTimeZone* icu::RuleBasedTimeZone::clone() const<br>RuleBasedTimeZone* icu::RuleBasedTimeZone::clone() const override<br>
+</li>
+<li>
+<b>void* icu::SelectFormat::clone() const</b>
+<br>SelectFormat* icu::SelectFormat::clone() const<br>SelectFormat* icu::SelectFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::SimpleDateFormat::clone() const</b>
+<br>SimpleDateFormat* icu::SimpleDateFormat::clone() const<br>SimpleDateFormat* icu::SimpleDateFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::SimpleTimeZone::clone() const</b>
+<br>SimpleTimeZone* icu::SimpleTimeZone::clone() const<br>SimpleTimeZone* icu::SimpleTimeZone::clone() const override<br>
+</li>
+<li>
+<b>void* icu::StringCharacterIterator::clone() const</b>
+<br>StringCharacterIterator* icu::StringCharacterIterator::clone() const<br>StringCharacterIterator* icu::StringCharacterIterator::clone() const override<br>
+</li>
+<li>
+<b>void* icu::StringSearch::safeClone() const</b>
+<br>StringSearch* icu::StringSearch::safeClone() const<br>StringSearch* icu::StringSearch::safeClone() const override<br>
+</li>
+<li>
+<b>void* icu::TimeArrayTimeZoneRule::clone() const</b>
+<br>TimeArrayTimeZoneRule* icu::TimeArrayTimeZoneRule::clone() const<br>TimeArrayTimeZoneRule* icu::TimeArrayTimeZoneRule::clone() const override<br>
+</li>
+<li>
+<b>void* icu::TimeUnit::clone() const</b>
+<br>TimeUnit* icu::TimeUnit::clone() const<br>TimeUnit* icu::TimeUnit::clone() const override<br>
+</li>
+<li>
+<b>void* icu::TimeUnitAmount::clone() const</b>
+<br>TimeUnitAmount* icu::TimeUnitAmount::clone() const<br>TimeUnitAmount* icu::TimeUnitAmount::clone() const override<br>
+</li>
+<li>
+<b>void* icu::TimeUnitFormat::clone() const</b>
+<br>TimeUnitFormat* icu::TimeUnitFormat::clone() const<br>TimeUnitFormat* icu::TimeUnitFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::TimeZoneFormat::clone() const</b>
+<br>TimeZoneFormat* icu::TimeZoneFormat::clone() const<br>TimeZoneFormat* icu::TimeZoneFormat::clone() const override<br>
+</li>
+<li>
+<b>void* icu::UCharCharacterIterator::clone() const</b>
+<br>UCharCharacterIterator* icu::UCharCharacterIterator::clone() const<br>UCharCharacterIterator* icu::UCharCharacterIterator::clone() const override<br>
+</li>
+<li>
+<b>void* icu::UnicodeFilter::clone() const</b>
+<br>UnicodeFilter* icu::UnicodeFilter::clone() const override=0<br>UnicodeFilter* icu::UnicodeFilter::clone() const=0<br>
+</li>
+<li>
+<b>void* icu::UnicodeSet::clone() const</b>
+<br>UnicodeSet* icu::UnicodeSet::clone() const<br>UnicodeSet* icu::UnicodeSet::clone() const override<br>
+</li>
+<li>
+<b>void* icu::UnicodeString::clone() const</b>
+<br>UnicodeString* icu::UnicodeString::clone() const<br>UnicodeString* icu::UnicodeString::clone() const override<br>
+</li>
+<li>
+<b>void* icu::VTimeZone::clone() const</b>
+<br>VTimeZone* icu::VTimeZone::clone() const<br>VTimeZone* icu::VTimeZone::clone() const override<br>
+</li>
+</ul>
 </div>
 <P></P>
 <a href="#_top">(jump back to top)</a>
 <hr>
 <p>
-<i><font size="-1">Contents generated by StableAPI tool on Thu Mar 11 15:54:11 PST 2021<br>
+<i><font size="-1">Contents generated by StableAPI tool on Wed Sep 29 11:59:05 PDT 2021<br>
         Copyright &copy; 2017 and later: Unicode, Inc. and others.<br>
         License &amp; terms of use: http://www.unicode.org/copyright.html
     </font></i>
diff --git a/icu4c/APIChangeReport.md b/icu4c/APIChangeReport.md
index 9184c42..07cb985 100644
--- a/icu4c/APIChangeReport.md
+++ b/icu4c/APIChangeReport.md
@@ -5,275 +5,659 @@
  License & terms of use: http://www.unicode.org/copyright.html
 -->
 
-# ICU4C API Comparison: ICU 68 (update #1: 68.2) with ICU 69
+# ICU4C API Comparison: ICU 69 with ICU 70
 
 > _Note_ Markdown format of this document is new for ICU 65.
 
-- [Removed from ICU 68](#removed)
-- [Deprecated or Obsoleted in ICU 69](#deprecated)
-- [Changed in  ICU 69](#changed)
-- [Promoted to stable in ICU 69](#promoted)
-- [Added in ICU 69](#added)
-- [Other existing drafts in ICU 69](#other)
+- [Removed from ICU 69](#removed)
+- [Deprecated or Obsoleted in ICU 70](#deprecated)
+- [Changed in  ICU 70](#changed)
+- [Promoted to stable in ICU 70](#promoted)
+- [Added in ICU 70](#added)
+- [Other existing drafts in ICU 70](#other)
 - [Signature Simplifications](#simplifications)
 
 ## Removed
 
-Removed from ICU 68
+Removed from ICU 69
   
-| File | API | ICU 68 | ICU 69 |
+| File | API | ICU 69 | ICU 70 |
 |---|---|---|---|
-| listformatter.h | <tt>static</tt> ListFormatter* icu::ListFormatter::createInstance(const Locale&amp;, const char*, UErrorCode&amp;) |  Internal | (missing)
-| measunit.h | MeasureUnit icu::MeasureUnit::withSIPrefix(UMeasureSIPrefix, UErrorCode&amp;) const |  DraftICU 67 | (missing)
-| measunit.h | UMeasureSIPrefix icu::MeasureUnit::getSIPrefix(UErrorCode&amp;) const |  DraftICU 67 | (missing)
-| numberformatter.h | Usage&amp; icu::number::impl::Usage::operator=(Usage&amp;&amp;) |  Internal | (missing)
-| numberformatter.h | Usage&amp; icu::number::impl::Usage::operator=(const Usage&amp;) |  Internal | (missing)
-| numberformatter.h | bool icu::number::impl::Usage::isSet() const |  Internal | (missing)
-| numberformatter.h | icu::number::impl::Usage::Usage(Usage&amp;&amp;) |  Internal | (missing)
-| numberformatter.h | icu::number::impl::Usage::Usage(const Usage&amp;) |  Internal | (missing)
-| numberformatter.h | icu::number::impl::Usage::~Usage() |  Internal | (missing)
-| numberformatter.h | int16_t icu::number::impl::Usage::length() const |  Internal | (missing)
-| numberformatter.h | void icu::number::impl::Usage::set(StringPiece) |  Internal | (missing)
-| numberrangeformatter.h | UnicodeString icu::number::FormattedNumberRange::getFirstDecimal(UErrorCode&amp;) const |  DeprecatedICU 68 | (missing)
-| numberrangeformatter.h | UnicodeString icu::number::FormattedNumberRange::getSecondDecimal(UErrorCode&amp;) const |  DeprecatedICU 68 | (missing)
-| rbtz.h | void icu::RuleBasedTimeZone::getOffsetFromLocal(UDate, int32_t, int32_t, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const |  Internal | (missing)
-| simpletz.h | void icu::SimpleTimeZone::getOffsetFromLocal(UDate, int32_t, int32_t, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const |  Internal | (missing)
+| tmutfmt.h | bool icu::TimeUnitFormat::operator!=(const Format&amp;) const |  DeprecatedICU 53 | (missing)
 
 ## Deprecated
 
-Deprecated or Obsoleted in ICU 69
+Deprecated or Obsoleted in ICU 70
   
-| File | API | ICU 68 | ICU 69 |
+| File | API | ICU 69 | ICU 70 |
 |---|---|---|---|
-| ubrk.h | UBreakIterator* ubrk_safeClone(const UBreakIterator*, void*, int32_t*, UErrorCode*) |  StableICU 2.0 | DeprecatedICU 69
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration() |  StableICU 2.4 | DeprecatedICU 70
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(const char*) |  StableICU 2.4 | DeprecatedICU 70
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(int32_t) |  StableICU 2.4 | DeprecatedICU 70
 
 ## Changed
 
-Changed in  ICU 69 (old, new)
+Changed in  ICU 70 (old, new)
 
 
   
-| File | API | ICU 68 | ICU 69 |
+| File | API | ICU 69 | ICU 70 |
 |---|---|---|---|
-| bytestream.h | void icu::ByteSink::AppendU8(const char*, int32_t) |  Draft→StableICU 67
-| bytestream.h | void icu::ByteSink::AppendU8(const char8_t*, int32_t) |  Draft→StableICU 67
-| dtptngen.h | UDateFormatHourCycle icu::DateTimePatternGenerator::getDefaultHourCycle(UErrorCode&amp;) const |  Draft→StableICU 67
-| localematcher.h | Builder&amp; icu::LocaleMatcher::Builder::setDirection(ULocMatchDirection) |  Draft→StableICU 67
-| localematcher.h | <tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_ONLY_TWO_WAY |  Draft→StableICU 67
-| localematcher.h | <tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_WITH_ONE_WAY |  Draft→StableICU 67
-| locid.h | void icu::Locale::canonicalize(UErrorCode&amp;) |  Draft→StableICU 67
-| measunit.h | MeasureUnit icu::MeasureUnit::product(const MeasureUnit&amp;, UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | MeasureUnit icu::MeasureUnit::reciprocal(UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | MeasureUnit icu::MeasureUnit::withDimensionality(int32_t, UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | MeasureUnit&amp; icu::MeasureUnit::operator=(MeasureUnit&amp;&amp;) noexcept |  Draft→StableICU 67
-| measunit.h | UMeasureUnitComplexity icu::MeasureUnit::getComplexity(UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | const char* icu::MeasureUnit::getIdentifier() const |  Draft→StableICU 67
-| measunit.h | icu::MeasureUnit::MeasureUnit(MeasureUnit&amp;&amp;) noexcept |  Draft→StableICU 67
-| measunit.h | int32_t icu::MeasureUnit::getDimensionality(UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::forIdentifier(StringPiece, UErrorCode&amp;) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(const char8_t*) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(const char8_t*, int32_t) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(const std::u8string&amp;) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(std::nullptr_t) |  Draft→StableICU 67
-| stringpiece.h | int32_t icu::StringPiece::compare(StringPiece) |  Draft→StableICU 67
-| stringpiece.h | int32_t icu::StringPiece::find(StringPiece, int32_t) |  Draft→StableICU 67
-| stringpiece.h | void icu::StringPiece::set(const char8_t*) |  Draft→StableICU 67
-| stringpiece.h | void icu::StringPiece::set(const char8_t*, int32_t) |  Draft→StableICU 67
-| translit.h | UnicodeSet&amp; icu::Transliterator::getSourceSet(UnicodeSet&amp;) const |   _untagged _  | StableICU 2.4
-| translit.h | <tt>static</tt> UnicodeString&amp; icu::Transliterator::getDisplayName(const UnicodeString&amp;, UnicodeString&amp;) |   _untagged _  | StableICU 2.0
-| translit.h | void icu::Transliterator::finishTransliteration(Replaceable&amp;, UTransPosition&amp;) const |   _untagged _  | StableICU 2.0
-| translit.h | void icu::Transliterator::transliterate(Replaceable&amp;, UTransPosition&amp;, UErrorCode&amp;) const |   _untagged _  | StableICU 2.0
-| ubrk.h | UBreakIterator* ubrk_safeClone(const UBreakIterator*, void*, int32_t*, UErrorCode*) |  StableICU 2.0 | DeprecatedICU 69
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_11 |  Draft→StableICU 67
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_12 |  Draft→StableICU 67
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_23 |  Draft→StableICU 67
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_24 |  Draft→StableICU 67
-| udateintervalformat.h | void udtitvfmt_formatCalendarToResult(const UDateIntervalFormat*, UCalendar*, UCalendar*, UFormattedDateInterval*, UErrorCode*) |  Draft→StableICU 67
-| udateintervalformat.h | void udtitvfmt_formatToResult(const UDateIntervalFormat*, UDate, UDate, UFormattedDateInterval*, UErrorCode*) |  Draft→StableICU 67
-| udatpg.h | UDateFormatHourCycle udatpg_getDefaultHourCycle(const UDateTimePatternGenerator*, UErrorCode*) |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_BREAK_ENGINE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_CHARACTER |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_LINE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_SENTENCE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_TITLE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_WORD |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_START |  Draft→StableICU 67
+| dtitvfmt.h | UDisplayContext icu::DateIntervalFormat::getContext(UDisplayContextType, UErrorCode&amp;) const |  Draft→StableICU 68
+| dtitvfmt.h | void icu::DateIntervalFormat::setContext(UDisplayContext, UErrorCode&amp;) |  Draft→StableICU 68
+| localematcher.h | Builder&amp; icu::LocaleMatcher::Builder::setMaxDistance(const Locale&amp;, const Locale&amp;) |  Draft→StableICU 68
+| localematcher.h | Builder&amp; icu::LocaleMatcher::Builder::setNoDefaultLocale() |  Draft→StableICU 68
+| localematcher.h | bool icu::LocaleMatcher::isMatch(const Locale&amp;, const Locale&amp;, UErrorCode&amp;) const |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getCandela() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoon() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoonImperial() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDot() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDram() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDrop() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getEarthRadius() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getGrain() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getJigger() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getLumen() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getPinch() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getQuartImperial() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createCandela(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoon(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoonImperial(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDot(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDram(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDrop(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createEarthRadius(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createGrain(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createJigger(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createLumen(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createPinch(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createQuartImperial(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | std::pair&lt; LocalArray&lt; MeasureUnit &gt;, int32_t &gt; icu::MeasureUnit::splitToSingleUnits(UErrorCode&amp;) const |  Draft→StableICU 68
+| numberformatter.h | Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece) const&amp; |  Draft→StableICU 68
+| numberformatter.h | Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece)&amp;&amp; |  Draft→StableICU 68
+| numberformatter.h | MeasureUnit icu::number::FormattedNumber::getOutputUnit(UErrorCode&amp;) const |  Draft→StableICU 68
+| numberrangeformatter.h | std::pair&lt; StringClass, StringClass &gt; icu::number::FormattedNumberRange::getDecimalNumbers(UErrorCode&amp;) const |  Draft→StableICU 68
+| plurrule.h | UnicodeString icu::PluralRules::select(const number::FormattedNumberRange&amp;, UErrorCode&amp;) const |  Draft→StableICU 68
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration() |  StableICU 2.4 | DeprecatedICU 70
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(const char*) |  StableICU 2.4 | DeprecatedICU 70
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(int32_t) |  StableICU 2.4 | DeprecatedICU 70
+| ucurr.h | <tt>enum</tt> UCurrNameStyle::UCURR_FORMAL_SYMBOL_NAME |  Draft→StableICU 68
+| ucurr.h | <tt>enum</tt> UCurrNameStyle::UCURR_VARIANT_SYMBOL_NAME |  Draft→StableICU 68
+| udateintervalformat.h | UDisplayContext udtitvfmt_getContext(const UDateIntervalFormat*, UDisplayContextType, UErrorCode*) |  Draft→StableICU 68
+| udateintervalformat.h | void udtitvfmt_setContext(UDateIntervalFormat*, UDisplayContext, UErrorCode*) |  Draft→StableICU 68
+| unum.h | <tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_AUTO |  Draft→StableICU 68
+| unum.h | <tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_MIN2 |  Draft→StableICU 68
+| unumberformatter.h | <tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_FORMAL |  Draft→StableICU 68
+| unumberformatter.h | <tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_VARIANT |  Draft→StableICU 68
+| unumberformatter.h | int32_t unumf_resultToDecimalNumber(const UFormattedNumber*, char*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | UFormattedNumberRange* unumrf_openResult(UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | UNumberRangeFormatter* unumrf_openForSkeletonWithCollapseAndIdentityFallback(const UChar*, int32_t, UNumberRangeCollapse, UNumberRangeIdentityFallback, const char*, UParseError*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | UNumberRangeIdentityResult unumrf_resultGetIdentityResult(const UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | const UFormattedValue* unumrf_resultAsValue(const UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | int32_t unumrf_resultGetFirstDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | int32_t unumrf_resultGetSecondDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_close(UNumberRangeFormatter*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_closeResult(UFormattedNumberRange*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_formatDecimalRange(const UNumberRangeFormatter*, const char*, int32_t, const char*, int32_t, UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_formatDoubleRange(const UNumberRangeFormatter*, double, double, UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| upluralrules.h | int32_t uplrules_selectForRange(const UPluralRules*, const struct UFormattedNumberRange*, UChar*, int32_t, UErrorCode*) |  Draft→StableICU 68
 
 ## Promoted
 
-Promoted to stable in ICU 69
+Promoted to stable in ICU 70
   
-| File | API | ICU 68 | ICU 69 |
+| File | API | ICU 69 | ICU 70 |
 |---|---|---|---|
-| bytestream.h | void icu::ByteSink::AppendU8(const char*, int32_t) |  Draft→StableICU 67
-| bytestream.h | void icu::ByteSink::AppendU8(const char8_t*, int32_t) |  Draft→StableICU 67
-| dtptngen.h | UDateFormatHourCycle icu::DateTimePatternGenerator::getDefaultHourCycle(UErrorCode&amp;) const |  Draft→StableICU 67
-| localematcher.h | Builder&amp; icu::LocaleMatcher::Builder::setDirection(ULocMatchDirection) |  Draft→StableICU 67
-| localematcher.h | <tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_ONLY_TWO_WAY |  Draft→StableICU 67
-| localematcher.h | <tt>enum</tt> ULocMatchDirection::ULOCMATCH_DIRECTION_WITH_ONE_WAY |  Draft→StableICU 67
-| locid.h | void icu::Locale::canonicalize(UErrorCode&amp;) |  Draft→StableICU 67
-| measunit.h | MeasureUnit icu::MeasureUnit::product(const MeasureUnit&amp;, UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | MeasureUnit icu::MeasureUnit::reciprocal(UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | MeasureUnit icu::MeasureUnit::withDimensionality(int32_t, UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | MeasureUnit&amp; icu::MeasureUnit::operator=(MeasureUnit&amp;&amp;) noexcept |  Draft→StableICU 67
-| measunit.h | UMeasureUnitComplexity icu::MeasureUnit::getComplexity(UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | const char* icu::MeasureUnit::getIdentifier() const |  Draft→StableICU 67
-| measunit.h | icu::MeasureUnit::MeasureUnit(MeasureUnit&amp;&amp;) noexcept |  Draft→StableICU 67
-| measunit.h | int32_t icu::MeasureUnit::getDimensionality(UErrorCode&amp;) const |  Draft→StableICU 67
-| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::forIdentifier(StringPiece, UErrorCode&amp;) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(const char8_t*) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(const char8_t*, int32_t) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(const std::u8string&amp;) |  Draft→StableICU 67
-| stringpiece.h | icu::StringPiece::StringPiece(std::nullptr_t) |  Draft→StableICU 67
-| stringpiece.h | int32_t icu::StringPiece::compare(StringPiece) |  Draft→StableICU 67
-| stringpiece.h | int32_t icu::StringPiece::find(StringPiece, int32_t) |  Draft→StableICU 67
-| stringpiece.h | void icu::StringPiece::set(const char8_t*) |  Draft→StableICU 67
-| stringpiece.h | void icu::StringPiece::set(const char8_t*, int32_t) |  Draft→StableICU 67
-| translit.h | UnicodeSet&amp; icu::Transliterator::getSourceSet(UnicodeSet&amp;) const |   _untagged _  | StableICU 2.4
-| translit.h | <tt>static</tt> UnicodeString&amp; icu::Transliterator::getDisplayName(const UnicodeString&amp;, UnicodeString&amp;) |   _untagged _  | StableICU 2.0
-| translit.h | void icu::Transliterator::finishTransliteration(Replaceable&amp;, UTransPosition&amp;) const |   _untagged _  | StableICU 2.0
-| translit.h | void icu::Transliterator::transliterate(Replaceable&amp;, UTransPosition&amp;, UErrorCode&amp;) const |   _untagged _  | StableICU 2.0
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_11 |  Draft→StableICU 67
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_12 |  Draft→StableICU 67
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_23 |  Draft→StableICU 67
-| udat.h | <tt>enum</tt> UDateFormatHourCycle::UDAT_HOUR_CYCLE_24 |  Draft→StableICU 67
-| udateintervalformat.h | void udtitvfmt_formatCalendarToResult(const UDateIntervalFormat*, UCalendar*, UCalendar*, UFormattedDateInterval*, UErrorCode*) |  Draft→StableICU 67
-| udateintervalformat.h | void udtitvfmt_formatToResult(const UDateIntervalFormat*, UDate, UDate, UFormattedDateInterval*, UErrorCode*) |  Draft→StableICU 67
-| udatpg.h | UDateFormatHourCycle udatpg_getDefaultHourCycle(const UDateTimePatternGenerator*, UErrorCode*) |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_BREAK_ENGINE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_CHARACTER |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_LINE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_SENTENCE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_TITLE |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_CREATE_WORD |  Draft→StableICU 67
-| utrace.h | <tt>enum</tt> UTraceFunctionNumber::UTRACE_UBRK_START |  Draft→StableICU 67
+| dtitvfmt.h | UDisplayContext icu::DateIntervalFormat::getContext(UDisplayContextType, UErrorCode&amp;) const |  Draft→StableICU 68
+| dtitvfmt.h | void icu::DateIntervalFormat::setContext(UDisplayContext, UErrorCode&amp;) |  Draft→StableICU 68
+| localematcher.h | Builder&amp; icu::LocaleMatcher::Builder::setMaxDistance(const Locale&amp;, const Locale&amp;) |  Draft→StableICU 68
+| localematcher.h | Builder&amp; icu::LocaleMatcher::Builder::setNoDefaultLocale() |  Draft→StableICU 68
+| localematcher.h | bool icu::LocaleMatcher::isMatch(const Locale&amp;, const Locale&amp;, UErrorCode&amp;) const |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getCandela() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoon() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoonImperial() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDot() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDram() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getDrop() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getEarthRadius() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getGrain() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getJigger() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getLumen() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getPinch() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getQuartImperial() |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createCandela(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoon(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoonImperial(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDot(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDram(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDrop(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createEarthRadius(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createGrain(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createJigger(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createLumen(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createPinch(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createQuartImperial(UErrorCode&amp;) |  Draft→StableICU 68
+| measunit.h | std::pair&lt; LocalArray&lt; MeasureUnit &gt;, int32_t &gt; icu::MeasureUnit::splitToSingleUnits(UErrorCode&amp;) const |  Draft→StableICU 68
+| numberformatter.h | Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece) const&amp; |  Draft→StableICU 68
+| numberformatter.h | Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece)&amp;&amp; |  Draft→StableICU 68
+| numberformatter.h | MeasureUnit icu::number::FormattedNumber::getOutputUnit(UErrorCode&amp;) const |  Draft→StableICU 68
+| numberrangeformatter.h | std::pair&lt; StringClass, StringClass &gt; icu::number::FormattedNumberRange::getDecimalNumbers(UErrorCode&amp;) const |  Draft→StableICU 68
+| plurrule.h | UnicodeString icu::PluralRules::select(const number::FormattedNumberRange&amp;, UErrorCode&amp;) const |  Draft→StableICU 68
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(UErrorCode&amp;) |  (missing) | StableICU 70| *(Born Stable)* |
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRawOffset(int32_t, UErrorCode&amp;) |  (missing) | StableICU 70| *(Born Stable)* |
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRegion(const char*, UErrorCode&amp;) |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_ARABIC_EXTENDED_B |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_CYPRO_MINOAN |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_ETHIOPIC_EXTENDED_B |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_KANA_EXTENDED_B |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_F |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_G |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_OLD_UYGHUR |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_TANGSA |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_TOTO |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_VITHKUQI |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_ZNAMENNY_MUSICAL_NOTATION |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UJoiningGroup::U_JG_THIN_YEH |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UJoiningGroup::U_JG_VERTICAL_TAIL |  (missing) | StableICU 70| *(Born Stable)* |
+| ucurr.h | <tt>enum</tt> UCurrNameStyle::UCURR_FORMAL_SYMBOL_NAME |  Draft→StableICU 68
+| ucurr.h | <tt>enum</tt> UCurrNameStyle::UCURR_VARIANT_SYMBOL_NAME |  Draft→StableICU 68
+| udateintervalformat.h | UDisplayContext udtitvfmt_getContext(const UDateIntervalFormat*, UDisplayContextType, UErrorCode*) |  Draft→StableICU 68
+| udateintervalformat.h | void udtitvfmt_setContext(UDateIntervalFormat*, UDisplayContext, UErrorCode*) |  Draft→StableICU 68
+| unum.h | <tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_AUTO |  Draft→StableICU 68
+| unum.h | <tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_MIN2 |  Draft→StableICU 68
+| unumberformatter.h | <tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_FORMAL |  Draft→StableICU 68
+| unumberformatter.h | <tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_VARIANT |  Draft→StableICU 68
+| unumberformatter.h | int32_t unumf_resultToDecimalNumber(const UFormattedNumber*, char*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | UFormattedNumberRange* unumrf_openResult(UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | UNumberRangeFormatter* unumrf_openForSkeletonWithCollapseAndIdentityFallback(const UChar*, int32_t, UNumberRangeCollapse, UNumberRangeIdentityFallback, const char*, UParseError*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | UNumberRangeIdentityResult unumrf_resultGetIdentityResult(const UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | const UFormattedValue* unumrf_resultAsValue(const UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | int32_t unumrf_resultGetFirstDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | int32_t unumrf_resultGetSecondDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_close(UNumberRangeFormatter*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_closeResult(UFormattedNumberRange*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_formatDecimalRange(const UNumberRangeFormatter*, const char*, int32_t, const char*, int32_t, UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| unumberrangeformatter.h | void unumrf_formatDoubleRange(const UNumberRangeFormatter*, double, double, UFormattedNumberRange*, UErrorCode*) |  Draft→StableICU 68
+| upluralrules.h | int32_t uplrules_selectForRange(const UPluralRules*, const struct UFormattedNumberRange*, UChar*, int32_t, UErrorCode*) |  Draft→StableICU 68
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_CYPRO_MINOAN |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_OLD_UYGHUR |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_TANGSA |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_TOTO |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_VITHKUQI |  (missing) | StableICU 70| *(Born Stable)* |
+| utypes.h | <tt>enum</tt> UErrorCode::U_INPUT_TOO_LONG_ERROR |  (missing) | StableICU 68
 
 ## Added
 
-Added in ICU 69
+Added in ICU 70
   
-| File | API | ICU 68 | ICU 69 |
+| File | API | ICU 69 | ICU 70 |
 |---|---|---|---|
-| basictz.h | void icu::BasicTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const |  (missing) | DraftICU 69
-| measunit.h | MeasureUnit icu::MeasureUnit::withPrefix(UMeasurePrefix, UErrorCode&amp;) const |  (missing) | DraftICU 69
-| measunit.h | UMeasurePrefix icu::MeasureUnit::getPrefix(UErrorCode&amp;) const |  (missing) | DraftICU 69
-| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getMilligramOfglucosePerDeciliter() |  (missing) | DraftICU 69
-| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createMilligramOfglucosePerDeciliter(UErrorCode&amp;) |  (missing) | DraftICU 69
-| numberformatter.h | Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::unitDisplayCase(StringPiece) const&amp; |  (missing) | InternalICU 69
-| numberformatter.h | Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::unitDisplayCase(StringPiece)&amp;&amp; |  (missing) | InternalICU 69
-| numberformatter.h | Precision icu::number::FractionPrecision::withSignificantDigits(int32_t, int32_t, UNumberRoundingPriority) const |  (missing) | DraftICU 69
-| numberformatter.h | Precision icu::number::Precision::trailingZeroDisplay(UNumberTrailingZeroDisplay) const |  (missing) | DraftICU 69
-| numberformatter.h | StringProp&amp; icu::number::impl::StringProp::operator=(StringProp&amp;&amp;) |  (missing) | Internal
-| numberformatter.h | StringProp&amp; icu::number::impl::StringProp::operator=(const StringProp&amp;) |  (missing) | Internal
-| numberformatter.h | bool icu::number::impl::StringProp::isSet() const |  (missing) | Internal
-| numberformatter.h | const char* icu::number::FormattedNumber::getGender(UErrorCode&amp;) const |  (missing) | InternalICU 69
-| numberformatter.h | icu::number::impl::StringProp::StringProp(StringProp&amp;&amp;) |  (missing) | Internal
-| numberformatter.h | icu::number::impl::StringProp::StringProp(const StringProp&amp;) |  (missing) | Internal
-| numberformatter.h | icu::number::impl::StringProp::~StringProp() |  (missing) | Internal
-| numberformatter.h | int16_t icu::number::impl::StringProp::length() const |  (missing) | Internal
-| numberformatter.h | void icu::number::impl::StringProp::set(StringPiece) |  (missing) | Internal
-| rbtz.h | void icu::RuleBasedTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const |  (missing) | DraftICU 69
-| simpletz.h | void icu::SimpleTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const |  (missing) | DraftICU 69
-| ubrk.h | UBreakIterator* ubrk_clone(const UBreakIterator*, UErrorCode*) |  (missing) | DraftICU 69
-| ucal.h | <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_FORMER |  (missing) | DraftICU 69
-| ucal.h | <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_LATTER |  (missing) | DraftICU 69
-| ucal.h | <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_FORMER |  (missing) | DraftICU 69
-| ucal.h | <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_LATTER |  (missing) | DraftICU 69
-| ucal.h | <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_FORMER |  (missing) | DraftICU 69
-| ucal.h | <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_LATTER |  (missing) | DraftICU 69
-| ucal.h | void ucal_getTimeZoneOffsetFromLocal(const UCalendar*, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t*, int32_t*, UErrorCode*) |  (missing) | DraftICU 69
-| uformattedvalue.h | <tt>enum</tt> UFieldCategory::UFIELD_CATEGORY_NUMBER_RANGE_SPAN |  (missing) | DraftICU 69
-| uniset.h | UnicodeSet&amp; icu::UnicodeSet::retain(const UnicodeString&amp;) |  (missing) | DraftICU 69
-| unum.h | <tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_CEILING |  (missing) | DraftICU 69
-| unum.h | <tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_FLOOR |  (missing) | DraftICU 69
-| unum.h | <tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_ODD |  (missing) | DraftICU 69
-| unumberformatter.h | <tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_RELAXED |  (missing) | DraftICU 69
-| unumberformatter.h | <tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_STRICT |  (missing) | DraftICU 69
-| unumberformatter.h | <tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_ACCOUNTING_NEGATIVE |  (missing) | DraftICU 69
-| unumberformatter.h | <tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_NEGATIVE |  (missing) | DraftICU 69
-| unumberformatter.h | <tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_AUTO |  (missing) | DraftICU 69
-| unumberformatter.h | <tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_HIDE_IF_WHOLE |  (missing) | DraftICU 69
-| uset.h | void uset_complementAllCodePoints(USet*, const UChar*, int32_t) |  (missing) | DraftICU 69
-| uset.h | void uset_complementRange(USet*, UChar32, UChar32) |  (missing) | DraftICU 69
-| uset.h | void uset_complementString(USet*, const UChar*, int32_t) |  (missing) | DraftICU 69
-| uset.h | void uset_removeAllCodePoints(USet*, const UChar*, int32_t) |  (missing) | DraftICU 69
-| uset.h | void uset_retainAllCodePoints(USet*, const UChar*, int32_t) |  (missing) | DraftICU 69
-| uset.h | void uset_retainString(USet*, const UChar*, int32_t) |  (missing) | DraftICU 69
-| vtzone.h | void icu::VTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const |  (missing) | DraftICU 69
+| dcfmtsym.h | <tt>enum</tt>  							icu::DecimalFormatSymbols::ENumberFormatSymbol::kApproximatelySignSymbol |  (missing) | Internal
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getItem() |  (missing) | DraftICU 70
+| measunit.h | <tt>static</tt> MeasureUnit icu::MeasureUnit::getKilowattHourPer100Kilometer() |  (missing) | DraftICU 70
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createItem(UErrorCode&amp;) |  (missing) | DraftICU 70
+| measunit.h | <tt>static</tt> MeasureUnit* icu::MeasureUnit::createKilowattHourPer100Kilometer(UErrorCode&amp;) |  (missing) | DraftICU 70
+| numberformatter.h | const DecimalFormatSymbols* icu::number::LocalizedNumberFormatter::getDecimalFormatSymbols() const |  (missing) | Internal
+| numberrangeformatter.h | icu::number::FormattedNumberRange::FormattedNumberRange() |  (missing) | DraftICU 70
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumeration(UErrorCode&amp;) |  (missing) | StableICU 70| *(Born Stable)* |
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRawOffset(int32_t, UErrorCode&amp;) |  (missing) | StableICU 70| *(Born Stable)* |
+| timezone.h | <tt>static</tt> StringEnumeration* icu::TimeZone::createEnumerationForRegion(const char*, UErrorCode&amp;) |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | bool u_stringHasBinaryProperty(const UChar*, int32_t, UProperty) |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_ARABIC_EXTENDED_B |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_CYPRO_MINOAN |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_ETHIOPIC_EXTENDED_B |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_KANA_EXTENDED_B |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_F |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_LATIN_EXTENDED_G |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_OLD_UYGHUR |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_TANGSA |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_TOTO |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_VITHKUQI |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UBlockCode::UBLOCK_ZNAMENNY_MUSICAL_NOTATION |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UJoiningGroup::U_JG_THIN_YEH |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UJoiningGroup::U_JG_VERTICAL_TAIL |  (missing) | StableICU 70| *(Born Stable)* |
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_BASIC_EMOJI |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_EMOJI_KEYCAP_SEQUENCE |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_FLAG_SEQUENCE |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_MODIFIER_SEQUENCE |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_TAG_SEQUENCE |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_RGI_EMOJI_ZWJ_SEQUENCE |  (missing) | DraftICU 70
+| uchar.h | <tt>enum</tt> UProperty::UCHAR_RGI_EMOJI |  (missing) | DraftICU 70
+| udat.h | <tt>enum</tt> UDateFormatSymbolType::UDAT_NARROW_QUARTERS |  (missing) | DraftICU 70
+| udat.h | <tt>enum</tt> UDateFormatSymbolType::UDAT_STANDALONE_NARROW_QUARTERS |  (missing) | DraftICU 70
+| uniset.h | bool icu::UnicodeSet::hasStrings() const |  (missing) | DraftICU 70
+| unum.h | <tt>enum</tt> UNumberFormatSymbol::UNUM_APPROXIMATELY_SIGN_SYMBOL |  (missing) | Internal
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_CYPRO_MINOAN |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_OLD_UYGHUR |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_TANGSA |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_TOTO |  (missing) | StableICU 70| *(Born Stable)* |
+| uscript.h | <tt>enum</tt> UScriptCode::USCRIPT_VITHKUQI |  (missing) | StableICU 70| *(Born Stable)* |
+| uset.h | bool uset_hasStrings(const USet*) |  (missing) | DraftICU 70
+| uset.h | int32_t uset_getRangeCount(const USet*) |  (missing) | DraftICU 70
+| usetiter.h | UnicodeSetIterator&amp; icu::UnicodeSetIterator::skipToStrings() |  (missing) | DraftICU 70
+| utypes.h | <tt>enum</tt> UErrorCode::U_INPUT_TOO_LONG_ERROR |  (missing) | StableICU 68
 
 ## Other
 
-Other existing drafts in ICU 69
+Other existing drafts in ICU 70
 
-| File | API | ICU 68 | ICU 69 |
+| File | API | ICU 69 | ICU 70 |
 |---|---|---|---|
-| dtitvfmt.h |  UDisplayContext icu::DateIntervalFormat::getContext(UDisplayContextType, UErrorCode&amp;) const | DraftICU 68 | 
-| dtitvfmt.h |  void icu::DateIntervalFormat::setContext(UDisplayContext, UErrorCode&amp;) | DraftICU 68 | 
-| localematcher.h |  Builder&amp; icu::LocaleMatcher::Builder::setMaxDistance(const Locale&amp;, const Locale&amp;) | DraftICU 68 | 
-| localematcher.h |  Builder&amp; icu::LocaleMatcher::Builder::setNoDefaultLocale() | DraftICU 68 | 
-| localematcher.h |  UBool icu::LocaleMatcher::isMatch(const Locale&amp;, const Locale&amp;, UErrorCode&amp;) const | DraftICU 68 | 
+| basictz.h |  void icu::BasicTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const | DraftICU 69 | 
 | measfmt.h |  void icu::MeasureFormat::parseObject(const UnicodeString&amp;, Formattable&amp;, ParsePosition&amp;) const | DraftICU 53 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getCandela() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoon() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getDessertSpoonImperial() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getDot() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getDram() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getDrop() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getEarthRadius() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getGrain() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getJigger() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getLumen() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getPinch() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getQuartImperial() | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createCandela(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoon(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDessertSpoonImperial(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDot(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDram(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createDrop(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createEarthRadius(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createGrain(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createJigger(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createLumen(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createPinch(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createQuartImperial(UErrorCode&amp;) | DraftICU 68 | 
-| measunit.h |  std::pair&lt; LocalArray&lt; MeasureUnit &gt;, int32_t &gt; icu::MeasureUnit::splitToSingleUnits(UErrorCode&amp;) const | DraftICU 68 | 
-| numberformatter.h |  Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece) const&amp; | DraftICU 68 | 
-| numberformatter.h |  Derived icu::number::NumberFormatterSettings&lt; Derived &gt;::usage(StringPiece)&amp;&amp; | DraftICU 68 | 
-| numberformatter.h |  MeasureUnit icu::number::FormattedNumber::getOutputUnit(UErrorCode&amp;) const | DraftICU 68 | 
-| numberrangeformatter.h |  std::pair&lt; StringClass, StringClass &gt; icu::number::FormattedNumberRange::getDecimalNumbers(UErrorCode&amp;) const | DraftICU 68 | 
-| plurrule.h |  UnicodeString icu::PluralRules::select(const number::FormattedNumberRange&amp;, UErrorCode&amp;) const | DraftICU 68 | 
-| ucurr.h |  <tt>enum</tt> UCurrNameStyle::UCURR_FORMAL_SYMBOL_NAME | DraftICU 68 | 
-| ucurr.h |  <tt>enum</tt> UCurrNameStyle::UCURR_VARIANT_SYMBOL_NAME | DraftICU 68 | 
-| udateintervalformat.h |  UDisplayContext udtitvfmt_getContext(const UDateIntervalFormat*, UDisplayContextType, UErrorCode*) | DraftICU 68 | 
-| udateintervalformat.h |  void udtitvfmt_setContext(UDateIntervalFormat*, UDisplayContext, UErrorCode*) | DraftICU 68 | 
-| unum.h |  <tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_AUTO | DraftICU 68 | 
-| unum.h |  <tt>enum</tt> UNumberFormatMinimumGroupingDigits::UNUM_MINIMUM_GROUPING_DIGITS_MIN2 | DraftICU 68 | 
-| unumberformatter.h |  <tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_FORMAL | DraftICU 68 | 
-| unumberformatter.h |  <tt>enum</tt> UNumberUnitWidth::UNUM_UNIT_WIDTH_VARIANT | DraftICU 68 | 
-| unumberformatter.h |  int32_t unumf_resultToDecimalNumber(const UFormattedNumber*, char*, int32_t, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  UFormattedNumberRange* unumrf_openResult(UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  UNumberRangeFormatter* unumrf_openForSkeletonWithCollapseAndIdentityFallback(const UChar*, int32_t, UNumberRangeCollapse, UNumberRangeIdentityFallback, const char*, UParseError*, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  UNumberRangeIdentityResult unumrf_resultGetIdentityResult(const UFormattedNumberRange*, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  const UFormattedValue* unumrf_resultAsValue(const UFormattedNumberRange*, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  int32_t unumrf_resultGetFirstDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  int32_t unumrf_resultGetSecondDecimalNumber(const UFormattedNumberRange*, char*, int32_t, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  void unumrf_close(UNumberRangeFormatter*) | DraftICU 68 | 
-| unumberrangeformatter.h |  void unumrf_closeResult(UFormattedNumberRange*) | DraftICU 68 | 
-| unumberrangeformatter.h |  void unumrf_formatDecimalRange(const UNumberRangeFormatter*, const char*, int32_t, const char*, int32_t, UFormattedNumberRange*, UErrorCode*) | DraftICU 68 | 
-| unumberrangeformatter.h |  void unumrf_formatDoubleRange(const UNumberRangeFormatter*, double, double, UFormattedNumberRange*, UErrorCode*) | DraftICU 68 | 
-| upluralrules.h |  int32_t uplrules_selectForRange(const UPluralRules*, const struct UFormattedNumberRange*, UChar*, int32_t, UErrorCode*) | DraftICU 68 | 
+| measunit.h |  MeasureUnit icu::MeasureUnit::withPrefix(UMeasurePrefix, UErrorCode&amp;) const | DraftICU 69 | 
+| measunit.h |  UMeasurePrefix icu::MeasureUnit::getPrefix(UErrorCode&amp;) const | DraftICU 69 | 
+| measunit.h |  <tt>static</tt> MeasureUnit icu::MeasureUnit::getMilligramOfglucosePerDeciliter() | DraftICU 69 | 
+| measunit.h |  <tt>static</tt> MeasureUnit* icu::MeasureUnit::createMilligramOfglucosePerDeciliter(UErrorCode&amp;) | DraftICU 69 | 
+| numberformatter.h |  Precision icu::number::FractionPrecision::withSignificantDigits(int32_t, int32_t, UNumberRoundingPriority) const | DraftICU 69 | 
+| numberformatter.h |  Precision icu::number::Precision::trailingZeroDisplay(UNumberTrailingZeroDisplay) const | DraftICU 69 | 
+| rbtz.h |  void icu::RuleBasedTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const | DraftICU 69 | 
+| simpletz.h |  void icu::SimpleTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const | DraftICU 69 | 
+| ubrk.h |  UBreakIterator* ubrk_clone(const UBreakIterator*, UErrorCode*) | DraftICU 69 | 
+| ucal.h |  <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_FORMER | DraftICU 69 | 
+| ucal.h |  <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_DAYLIGHT_LATTER | DraftICU 69 | 
+| ucal.h |  <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_FORMER | DraftICU 69 | 
+| ucal.h |  <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_LATTER | DraftICU 69 | 
+| ucal.h |  <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_FORMER | DraftICU 69 | 
+| ucal.h |  <tt>enum</tt> UTimeZoneLocalOption::UCAL_TZ_LOCAL_STANDARD_LATTER | DraftICU 69 | 
+| ucal.h |  void ucal_getTimeZoneOffsetFromLocal(const UCalendar*, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t*, int32_t*, UErrorCode*) | DraftICU 69 | 
+| uformattedvalue.h |  <tt>enum</tt> UFieldCategory::UFIELD_CATEGORY_NUMBER_RANGE_SPAN | DraftICU 69 | 
+| uniset.h |  UnicodeSet&amp; icu::UnicodeSet::retain(const UnicodeString&amp;) | DraftICU 69 | 
+| unum.h |  <tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_CEILING | DraftICU 69 | 
+| unum.h |  <tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_FLOOR | DraftICU 69 | 
+| unum.h |  <tt>enum</tt> UNumberFormatRoundingMode::UNUM_ROUND_HALF_ODD | DraftICU 69 | 
+| unumberformatter.h |  <tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_RELAXED | DraftICU 69 | 
+| unumberformatter.h |  <tt>enum</tt> UNumberRoundingPriority::UNUM_ROUNDING_PRIORITY_STRICT | DraftICU 69 | 
+| unumberformatter.h |  <tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_ACCOUNTING_NEGATIVE | DraftICU 69 | 
+| unumberformatter.h |  <tt>enum</tt> UNumberSignDisplay::UNUM_SIGN_NEGATIVE | DraftICU 69 | 
+| unumberformatter.h |  <tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_AUTO | DraftICU 69 | 
+| unumberformatter.h |  <tt>enum</tt> UNumberTrailingZeroDisplay::UNUM_TRAILING_ZERO_HIDE_IF_WHOLE | DraftICU 69 | 
 | uregex.h |  <tt>enum</tt> URegexpFlag::UREGEX_CANON_EQ | DraftICU 2.4 | 
+| uset.h |  void uset_complementAllCodePoints(USet*, const UChar*, int32_t) | DraftICU 69 | 
+| uset.h |  void uset_complementRange(USet*, UChar32, UChar32) | DraftICU 69 | 
+| uset.h |  void uset_complementString(USet*, const UChar*, int32_t) | DraftICU 69 | 
+| uset.h |  void uset_removeAllCodePoints(USet*, const UChar*, int32_t) | DraftICU 69 | 
+| uset.h |  void uset_retainAllCodePoints(USet*, const UChar*, int32_t) | DraftICU 69 | 
+| uset.h |  void uset_retainString(USet*, const UChar*, int32_t) | DraftICU 69 | 
+| vtzone.h |  void icu::VTimeZone::getOffsetFromLocal(UDate, UTimeZoneLocalOption, UTimeZoneLocalOption, int32_t&amp;, int32_t&amp;, UErrorCode&amp;) const | DraftICU 69 | 
 
 ## Simplifications
 
 This section shows cases where the signature was "simplified" for the sake of comparison. The simplified form is in bold, followed by
     all possible variations in "original" form.
 
+- **`UClassID icu::BreakIterator::getDynamicClassID() const`**
+  - `UClassID icu::BreakIterator::getDynamicClassID() const override=0`
+  - `UClassID icu::BreakIterator::getDynamicClassID() const=0`
+- **`UClassID icu::Calendar::getDynamicClassID() const`**
+  - `UClassID icu::Calendar::getDynamicClassID() const override=0`
+  - `UClassID icu::Calendar::getDynamicClassID() const=0`
+- **`UClassID icu::Collator::getDynamicClassID() const`**
+  - `UClassID icu::Collator::getDynamicClassID() const override=0`
+  - `UClassID icu::Collator::getDynamicClassID() const=0`
+- **`UClassID icu::ForwardCharacterIterator::getDynamicClassID() const`**
+  - `UClassID icu::ForwardCharacterIterator::getDynamicClassID() const override=0`
+  - `UClassID icu::ForwardCharacterIterator::getDynamicClassID() const=0`
+- **`UClassID icu::NumberFormat::getDynamicClassID() const`**
+  - `UClassID icu::NumberFormat::getDynamicClassID() const override=0`
+  - `UClassID icu::NumberFormat::getDynamicClassID() const=0`
+- **`UClassID icu::TimeZone::getDynamicClassID() const`**
+  - `UClassID icu::TimeZone::getDynamicClassID() const override=0`
+  - `UClassID icu::TimeZone::getDynamicClassID() const=0`
+- **`UClassID icu::Transliterator::getDynamicClassID() const`**
+  - `UClassID icu::Transliterator::getDynamicClassID() const override=0`
+  - `UClassID icu::Transliterator::getDynamicClassID() const=0`
+- **`UClassID icu::UnicodeFunctor::getDynamicClassID() const`**
+  - `UClassID icu::UnicodeFunctor::getDynamicClassID() const override=0`
+  - `UClassID icu::UnicodeFunctor::getDynamicClassID() const=0`
+- **`UMatchDegree icu::UnicodeFilter::matches(const Replaceable&, int32_t&, int32_t, bool)`**
+  - `UMatchDegree icu::UnicodeFilter::matches(const Replaceable&, int32_t&, int32_t, UBool)`
+  - `UMatchDegree icu::UnicodeFilter::matches(const Replaceable&, int32_t&, int32_t, UBool) override`
+- **`UMatchDegree icu::UnicodeSet::matches(const Replaceable&, int32_t&, int32_t, bool)`**
+  - `UMatchDegree icu::UnicodeSet::matches(const Replaceable&, int32_t&, int32_t, UBool)`
+  - `UMatchDegree icu::UnicodeSet::matches(const Replaceable&, int32_t&, int32_t, UBool) override`
+- **`UnicodeString& icu::UnicodeSet::toPattern(UnicodeString&, bool escapeUnprintable=) const`**
+  - `UnicodeString& icu::UnicodeSet::toPattern(UnicodeString&, UBool escapeUnprintable=) const`
+  - `UnicodeString& icu::UnicodeSet::toPattern(UnicodeString&, UBool escapeUnprintable=) const override`
+- **`bool icu::AnnualTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const`**
+  - `UBool icu::AnnualTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const`
+  - `UBool icu::AnnualTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const override`
+- **`bool icu::AnnualTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const`**
+  - `UBool icu::AnnualTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const`
+  - `UBool icu::AnnualTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const override`
+- **`bool icu::AnnualTimeZoneRule::getNextStart(UDate, int32_t, int32_t, bool, UDate&) const`**
+  - `UBool icu::AnnualTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&) const`
+  - `UBool icu::AnnualTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&) const override`
+- **`bool icu::AnnualTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, bool, UDate&) const`**
+  - `UBool icu::AnnualTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&) const`
+  - `UBool icu::AnnualTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&) const override`
+- **`bool icu::AnnualTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const`**
+  - `UBool icu::AnnualTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const`
+  - `UBool icu::AnnualTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const override`
+- **`bool icu::AnnualTimeZoneRule::operator!=(const TimeZoneRule&) const`**
+  - `UBool icu::AnnualTimeZoneRule::operator!=(const TimeZoneRule&) const`
+  - `bool icu::AnnualTimeZoneRule::operator!=(const TimeZoneRule&) const override`
+- **`bool icu::AnnualTimeZoneRule::operator==(const TimeZoneRule&) const`**
+  - `UBool icu::AnnualTimeZoneRule::operator==(const TimeZoneRule&) const`
+  - `bool icu::AnnualTimeZoneRule::operator==(const TimeZoneRule&) const override`
+- **`bool icu::BreakIterator::operator==(const BreakIterator&) const`**
+  - `UBool icu::BreakIterator::operator==(const BreakIterator&) const=0`
+  - `bool icu::BreakIterator::operator==(const BreakIterator&) const=0`
+- **`bool icu::ChoiceFormat::operator==(const Format&) const`**
+  - `UBool icu::ChoiceFormat::operator==(const Format&) const`
+  - `bool icu::ChoiceFormat::operator==(const Format&) const override`
+- **`bool icu::DateFormat::operator==(const Format&) const`**
+  - `UBool icu::DateFormat::operator==(const Format&) const`
+  - `bool icu::DateFormat::operator==(const Format&) const override`
+- **`bool icu::DateIntervalFormat::operator==(const Format&) const`**
+  - `UBool icu::DateIntervalFormat::operator==(const Format&) const`
+  - `bool icu::DateIntervalFormat::operator==(const Format&) const override`
+- **`bool icu::DecimalFormat::operator==(const Format&) const`**
+  - `UBool icu::DecimalFormat::operator==(const Format&) const U_OVERRIDE`
+  - `bool icu::DecimalFormat::operator==(const Format&) const U_OVERRIDE`
+- **`bool icu::Format::operator==(const Format&) const`**
+  - `UBool icu::Format::operator==(const Format&) const=0`
+  - `bool icu::Format::operator==(const Format&) const=0`
+- **`bool icu::ForwardCharacterIterator::operator==(const ForwardCharacterIterator&) const`**
+  - `UBool icu::ForwardCharacterIterator::operator==(const ForwardCharacterIterator&) const=0`
+  - `bool icu::ForwardCharacterIterator::operator==(const ForwardCharacterIterator&) const=0`
+- **`bool icu::GregorianCalendar::haveDefaultCentury() const`**
+  - `UBool icu::GregorianCalendar::haveDefaultCentury() const`
+  - `UBool icu::GregorianCalendar::haveDefaultCentury() const override`
+- **`bool icu::GregorianCalendar::inDaylightTime(UErrorCode&) const`**
+  - `UBool icu::GregorianCalendar::inDaylightTime(UErrorCode&) const`
+  - `UBool icu::GregorianCalendar::inDaylightTime(UErrorCode&) const override`
+- **`bool icu::GregorianCalendar::isEquivalentTo(const Calendar&) const`**
+  - `UBool icu::GregorianCalendar::isEquivalentTo(const Calendar&) const`
+  - `UBool icu::GregorianCalendar::isEquivalentTo(const Calendar&) const override`
+- **`bool icu::InitialTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const`**
+  - `UBool icu::InitialTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const`
+  - `UBool icu::InitialTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const override`
+- **`bool icu::InitialTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const`**
+  - `UBool icu::InitialTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const`
+  - `UBool icu::InitialTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const override`
+- **`bool icu::InitialTimeZoneRule::getNextStart(UDate, int32_t, int32_t, bool, UDate&) const`**
+  - `UBool icu::InitialTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&) const`
+  - `UBool icu::InitialTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&) const override`
+- **`bool icu::InitialTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, bool, UDate&) const`**
+  - `UBool icu::InitialTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&) const`
+  - `UBool icu::InitialTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&) const override`
+- **`bool icu::InitialTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const`**
+  - `UBool icu::InitialTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const`
+  - `UBool icu::InitialTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const override`
+- **`bool icu::InitialTimeZoneRule::operator!=(const TimeZoneRule&) const`**
+  - `UBool icu::InitialTimeZoneRule::operator!=(const TimeZoneRule&) const`
+  - `bool icu::InitialTimeZoneRule::operator!=(const TimeZoneRule&) const override`
+- **`bool icu::InitialTimeZoneRule::operator==(const TimeZoneRule&) const`**
+  - `UBool icu::InitialTimeZoneRule::operator==(const TimeZoneRule&) const`
+  - `bool icu::InitialTimeZoneRule::operator==(const TimeZoneRule&) const override`
+- **`bool icu::MeasureFormat::operator==(const Format&) const`**
+  - `UBool icu::MeasureFormat::operator==(const Format&) const`
+  - `bool icu::MeasureFormat::operator==(const Format&) const override`
+- **`bool icu::MessageFormat::operator==(const Format&) const`**
+  - `UBool icu::MessageFormat::operator==(const Format&) const`
+  - `bool icu::MessageFormat::operator==(const Format&) const override`
+- **`bool icu::NumberFormat::operator==(const Format&) const`**
+  - `UBool icu::NumberFormat::operator==(const Format&) const`
+  - `bool icu::NumberFormat::operator==(const Format&) const override`
+- **`bool icu::PluralFormat::operator==(const Format&) const`**
+  - `UBool icu::PluralFormat::operator==(const Format&) const`
+  - `bool icu::PluralFormat::operator==(const Format&) const override`
+- **`bool icu::RuleBasedBreakIterator::isBoundary(int32_t)`**
+  - `UBool icu::RuleBasedBreakIterator::isBoundary(int32_t)`
+  - `UBool icu::RuleBasedBreakIterator::isBoundary(int32_t) override`
+- **`bool icu::RuleBasedBreakIterator::operator==(const BreakIterator&) const`**
+  - `UBool icu::RuleBasedBreakIterator::operator==(const BreakIterator&) const`
+  - `bool icu::RuleBasedBreakIterator::operator==(const BreakIterator&) const override`
+- **`bool icu::RuleBasedCollator::operator==(const Collator&) const`**
+  - `UBool icu::RuleBasedCollator::operator==(const Collator&) const`
+  - `bool icu::RuleBasedCollator::operator==(const Collator&) const override`
+- **`bool icu::RuleBasedNumberFormat::isLenient() const`**
+  - `UBool icu::RuleBasedNumberFormat::isLenient() const`
+  - `UBool icu::RuleBasedNumberFormat::isLenient() const override`
+- **`bool icu::RuleBasedNumberFormat::operator==(const Format&) const`**
+  - `UBool icu::RuleBasedNumberFormat::operator==(const Format&) const`
+  - `bool icu::RuleBasedNumberFormat::operator==(const Format&) const override`
+- **`bool icu::RuleBasedTimeZone::getNextTransition(UDate, bool, TimeZoneTransition&) const`**
+  - `UBool icu::RuleBasedTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&) const`
+  - `UBool icu::RuleBasedTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&) const override`
+- **`bool icu::RuleBasedTimeZone::getPreviousTransition(UDate, bool, TimeZoneTransition&) const`**
+  - `UBool icu::RuleBasedTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&) const`
+  - `UBool icu::RuleBasedTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&) const override`
+- **`bool icu::RuleBasedTimeZone::hasSameRules(const TimeZone&) const`**
+  - `UBool icu::RuleBasedTimeZone::hasSameRules(const TimeZone&) const`
+  - `UBool icu::RuleBasedTimeZone::hasSameRules(const TimeZone&) const override`
+- **`bool icu::RuleBasedTimeZone::inDaylightTime(UDate, UErrorCode&) const`**
+  - `UBool icu::RuleBasedTimeZone::inDaylightTime(UDate, UErrorCode&) const`
+  - `UBool icu::RuleBasedTimeZone::inDaylightTime(UDate, UErrorCode&) const override`
+- **`bool icu::RuleBasedTimeZone::operator==(const TimeZone&) const`**
+  - `UBool icu::RuleBasedTimeZone::operator==(const TimeZone&) const`
+  - `bool icu::RuleBasedTimeZone::operator==(const TimeZone&) const override`
+- **`bool icu::RuleBasedTimeZone::useDaylightTime() const`**
+  - `UBool icu::RuleBasedTimeZone::useDaylightTime() const`
+  - `UBool icu::RuleBasedTimeZone::useDaylightTime() const override`
+- **`bool icu::SelectFormat::operator==(const Format&) const`**
+  - `UBool icu::SelectFormat::operator==(const Format&) const`
+  - `bool icu::SelectFormat::operator==(const Format&) const override`
+- **`bool icu::SimpleDateFormat::operator==(const Format&) const`**
+  - `UBool icu::SimpleDateFormat::operator==(const Format&) const`
+  - `bool icu::SimpleDateFormat::operator==(const Format&) const override`
+- **`bool icu::SimpleNumberFormatFactory::visible() const`**
+  - `UBool icu::SimpleNumberFormatFactory::visible() const`
+  - `UBool icu::SimpleNumberFormatFactory::visible() const override`
+- **`bool icu::SimpleTimeZone::getNextTransition(UDate, bool, TimeZoneTransition&) const`**
+  - `UBool icu::SimpleTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&) const`
+  - `UBool icu::SimpleTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&) const override`
+- **`bool icu::SimpleTimeZone::getPreviousTransition(UDate, bool, TimeZoneTransition&) const`**
+  - `UBool icu::SimpleTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&) const`
+  - `UBool icu::SimpleTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&) const override`
+- **`bool icu::SimpleTimeZone::hasSameRules(const TimeZone&) const`**
+  - `UBool icu::SimpleTimeZone::hasSameRules(const TimeZone&) const`
+  - `UBool icu::SimpleTimeZone::hasSameRules(const TimeZone&) const override`
+- **`bool icu::SimpleTimeZone::inDaylightTime(UDate, UErrorCode&) const`**
+  - `UBool icu::SimpleTimeZone::inDaylightTime(UDate, UErrorCode&) const`
+  - `UBool icu::SimpleTimeZone::inDaylightTime(UDate, UErrorCode&) const override`
+- **`bool icu::SimpleTimeZone::operator==(const TimeZone&) const`**
+  - `UBool icu::SimpleTimeZone::operator==(const TimeZone&) const`
+  - `bool icu::SimpleTimeZone::operator==(const TimeZone&) const override`
+- **`bool icu::SimpleTimeZone::useDaylightTime() const`**
+  - `UBool icu::SimpleTimeZone::useDaylightTime() const`
+  - `UBool icu::SimpleTimeZone::useDaylightTime() const override`
+- **`bool icu::StringCharacterIterator::operator==(const ForwardCharacterIterator&) const`**
+  - `UBool icu::StringCharacterIterator::operator==(const ForwardCharacterIterator&) const`
+  - `bool icu::StringCharacterIterator::operator==(const ForwardCharacterIterator&) const override`
+- **`bool icu::StringSearch::operator==(const SearchIterator&) const`**
+  - `UBool icu::StringSearch::operator==(const SearchIterator&) const`
+  - `bool icu::StringSearch::operator==(const SearchIterator&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const`
+  - `UBool icu::TimeArrayTimeZoneRule::getFinalStart(int32_t, int32_t, UDate&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const`
+  - `UBool icu::TimeArrayTimeZoneRule::getFirstStart(int32_t, int32_t, UDate&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::getNextStart(UDate, int32_t, int32_t, bool, UDate&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&) const`
+  - `UBool icu::TimeArrayTimeZoneRule::getNextStart(UDate, int32_t, int32_t, UBool, UDate&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, bool, UDate&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&) const`
+  - `UBool icu::TimeArrayTimeZoneRule::getPreviousStart(UDate, int32_t, int32_t, UBool, UDate&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const`
+  - `UBool icu::TimeArrayTimeZoneRule::isEquivalentTo(const TimeZoneRule&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::operator!=(const TimeZoneRule&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::operator!=(const TimeZoneRule&) const`
+  - `bool icu::TimeArrayTimeZoneRule::operator!=(const TimeZoneRule&) const override`
+- **`bool icu::TimeArrayTimeZoneRule::operator==(const TimeZoneRule&) const`**
+  - `UBool icu::TimeArrayTimeZoneRule::operator==(const TimeZoneRule&) const`
+  - `bool icu::TimeArrayTimeZoneRule::operator==(const TimeZoneRule&) const override`
+- **`bool icu::TimeZoneFormat::operator==(const Format&) const`**
+  - `UBool icu::TimeZoneFormat::operator==(const Format&) const`
+  - `bool icu::TimeZoneFormat::operator==(const Format&) const override`
+- **`bool icu::TimeZoneNames::operator==(const TimeZoneNames&) const`**
+  - `UBool icu::TimeZoneNames::operator==(const TimeZoneNames&) const=0`
+  - `bool icu::TimeZoneNames::operator==(const TimeZoneNames&) const=0`
+- **`bool icu::UCharCharacterIterator::hasNext()`**
+  - `UBool icu::UCharCharacterIterator::hasNext()`
+  - `UBool icu::UCharCharacterIterator::hasNext() override`
+- **`bool icu::UCharCharacterIterator::hasPrevious()`**
+  - `UBool icu::UCharCharacterIterator::hasPrevious()`
+  - `UBool icu::UCharCharacterIterator::hasPrevious() override`
+- **`bool icu::UCharCharacterIterator::operator==(const ForwardCharacterIterator&) const`**
+  - `UBool icu::UCharCharacterIterator::operator==(const ForwardCharacterIterator&) const`
+  - `bool icu::UCharCharacterIterator::operator==(const ForwardCharacterIterator&) const override`
+- **`bool icu::UnicodeSet::contains(UChar32) const`**
+  - `UBool icu::UnicodeSet::contains(UChar32) const`
+  - `UBool icu::UnicodeSet::contains(UChar32) const override`
+- **`bool icu::UnicodeString::hasMetaData() const`**
+  - `UBool icu::UnicodeString::hasMetaData() const`
+  - `UBool icu::UnicodeString::hasMetaData() const override`
+- **`bool icu::UnicodeStringAppendable::appendCodePoint(UChar32)`**
+  - `UBool icu::UnicodeStringAppendable::appendCodePoint(UChar32)`
+  - `UBool icu::UnicodeStringAppendable::appendCodePoint(UChar32) override`
+- **`bool icu::UnicodeStringAppendable::appendCodeUnit(char16_t)`**
+  - `UBool icu::UnicodeStringAppendable::appendCodeUnit(char16_t)`
+  - `UBool icu::UnicodeStringAppendable::appendCodeUnit(char16_t) override`
+- **`bool icu::UnicodeStringAppendable::appendString(const char16_t*, int32_t)`**
+  - `UBool icu::UnicodeStringAppendable::appendString(const char16_t*, int32_t)`
+  - `UBool icu::UnicodeStringAppendable::appendString(const char16_t*, int32_t) override`
+- **`bool icu::UnicodeStringAppendable::reserveAppendCapacity(int32_t)`**
+  - `UBool icu::UnicodeStringAppendable::reserveAppendCapacity(int32_t)`
+  - `UBool icu::UnicodeStringAppendable::reserveAppendCapacity(int32_t) override`
+- **`bool icu::VTimeZone::getNextTransition(UDate, bool, TimeZoneTransition&) const`**
+  - `UBool icu::VTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&) const`
+  - `UBool icu::VTimeZone::getNextTransition(UDate, UBool, TimeZoneTransition&) const override`
+- **`bool icu::VTimeZone::getPreviousTransition(UDate, bool, TimeZoneTransition&) const`**
+  - `UBool icu::VTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&) const`
+  - `UBool icu::VTimeZone::getPreviousTransition(UDate, UBool, TimeZoneTransition&) const override`
+- **`bool icu::VTimeZone::hasSameRules(const TimeZone&) const`**
+  - `UBool icu::VTimeZone::hasSameRules(const TimeZone&) const`
+  - `UBool icu::VTimeZone::hasSameRules(const TimeZone&) const override`
+- **`bool icu::VTimeZone::inDaylightTime(UDate, UErrorCode&) const`**
+  - `UBool icu::VTimeZone::inDaylightTime(UDate, UErrorCode&) const`
+  - `UBool icu::VTimeZone::inDaylightTime(UDate, UErrorCode&) const override`
+- **`bool icu::VTimeZone::operator==(const TimeZone&) const`**
+  - `UBool icu::VTimeZone::operator==(const TimeZone&) const`
+  - `bool icu::VTimeZone::operator==(const TimeZone&) const override`
+- **`bool icu::VTimeZone::useDaylightTime() const`**
+  - `UBool icu::VTimeZone::useDaylightTime() const`
+  - `UBool icu::VTimeZone::useDaylightTime() const override`
+- **`void icu::RuleBasedNumberFormat::setLenient(bool)`**
+  - `void icu::RuleBasedNumberFormat::setLenient(UBool)`
+  - `void icu::RuleBasedNumberFormat::setLenient(UBool) override`
+- **`void icu::RuleBasedTimeZone::getOffset(UDate, bool, int32_t&, int32_t&, UErrorCode&) const`**
+  - `void icu::RuleBasedTimeZone::getOffset(UDate, UBool, int32_t&, int32_t&, UErrorCode&) const`
+  - `void icu::RuleBasedTimeZone::getOffset(UDate, UBool, int32_t&, int32_t&, UErrorCode&) const override`
+- **`void icu::SimpleTimeZone::getOffset(UDate, bool, int32_t&, int32_t&, UErrorCode&) const`**
+  - `void icu::SimpleTimeZone::getOffset(UDate, UBool, int32_t&, int32_t&, UErrorCode&) const`
+  - `void icu::SimpleTimeZone::getOffset(UDate, UBool, int32_t&, int32_t&, UErrorCode&) const override`
+- **`void icu::VTimeZone::getOffset(UDate, bool, int32_t&, int32_t&, UErrorCode&) const`**
+  - `void icu::VTimeZone::getOffset(UDate, UBool, int32_t&, int32_t&, UErrorCode&) const`
+  - `void icu::VTimeZone::getOffset(UDate, UBool, int32_t&, int32_t&, UErrorCode&) const override`
+- **`void* icu::AnnualTimeZoneRule::clone() const`**
+  - `AnnualTimeZoneRule* icu::AnnualTimeZoneRule::clone() const`
+  - `AnnualTimeZoneRule* icu::AnnualTimeZoneRule::clone() const override`
+- **`void* icu::BasicTimeZone::clone() const`**
+  - `BasicTimeZone* icu::BasicTimeZone::clone() const override=0`
+  - `BasicTimeZone* icu::BasicTimeZone::clone() const=0`
+- **`void* icu::ChoiceFormat::clone() const`**
+  - `ChoiceFormat* icu::ChoiceFormat::clone() const`
+  - `ChoiceFormat* icu::ChoiceFormat::clone() const override`
+- **`void* icu::CurrencyAmount::clone() const`**
+  - `CurrencyAmount* icu::CurrencyAmount::clone() const`
+  - `CurrencyAmount* icu::CurrencyAmount::clone() const override`
+- **`void* icu::CurrencyUnit::clone() const`**
+  - `CurrencyUnit* icu::CurrencyUnit::clone() const`
+  - `CurrencyUnit* icu::CurrencyUnit::clone() const override`
+- **`void* icu::DateFormat::clone() const`**
+  - `DateFormat* icu::DateFormat::clone() const override=0`
+  - `DateFormat* icu::DateFormat::clone() const=0`
+- **`void* icu::DateIntervalFormat::clone() const`**
+  - `DateIntervalFormat* icu::DateIntervalFormat::clone() const`
+  - `DateIntervalFormat* icu::DateIntervalFormat::clone() const override`
+- **`void* icu::GregorianCalendar::clone() const`**
+  - `GregorianCalendar* icu::GregorianCalendar::clone() const`
+  - `GregorianCalendar* icu::GregorianCalendar::clone() const override`
+- **`void* icu::InitialTimeZoneRule::clone() const`**
+  - `InitialTimeZoneRule* icu::InitialTimeZoneRule::clone() const`
+  - `InitialTimeZoneRule* icu::InitialTimeZoneRule::clone() const override`
+- **`void* icu::MeasureFormat::clone() const`**
+  - `MeasureFormat* icu::MeasureFormat::clone() const`
+  - `MeasureFormat* icu::MeasureFormat::clone() const override`
+- **`void* icu::MessageFormat::clone() const`**
+  - `MessageFormat* icu::MessageFormat::clone() const`
+  - `MessageFormat* icu::MessageFormat::clone() const override`
+- **`void* icu::NumberFormat::clone() const`**
+  - `NumberFormat* icu::NumberFormat::clone() const override=0`
+  - `NumberFormat* icu::NumberFormat::clone() const=0`
+- **`void* icu::PluralFormat::clone() const`**
+  - `PluralFormat* icu::PluralFormat::clone() const`
+  - `PluralFormat* icu::PluralFormat::clone() const override`
+- **`void* icu::RuleBasedBreakIterator::clone() const`**
+  - `RuleBasedBreakIterator* icu::RuleBasedBreakIterator::clone() const`
+  - `RuleBasedBreakIterator* icu::RuleBasedBreakIterator::clone() const override`
+- **`void* icu::RuleBasedBreakIterator::createBufferClone(void*, int32_t&, UErrorCode&)`**
+  - `RuleBasedBreakIterator* icu::RuleBasedBreakIterator::createBufferClone(void*, int32_t&, UErrorCode&)`
+  - `RuleBasedBreakIterator* icu::RuleBasedBreakIterator::createBufferClone(void*, int32_t&, UErrorCode&) override`
+- **`void* icu::RuleBasedCollator::clone() const`**
+  - `RuleBasedCollator* icu::RuleBasedCollator::clone() const`
+  - `RuleBasedCollator* icu::RuleBasedCollator::clone() const override`
+- **`void* icu::RuleBasedNumberFormat::clone() const`**
+  - `RuleBasedNumberFormat* icu::RuleBasedNumberFormat::clone() const`
+  - `RuleBasedNumberFormat* icu::RuleBasedNumberFormat::clone() const override`
+- **`void* icu::RuleBasedTimeZone::clone() const`**
+  - `RuleBasedTimeZone* icu::RuleBasedTimeZone::clone() const`
+  - `RuleBasedTimeZone* icu::RuleBasedTimeZone::clone() const override`
+- **`void* icu::SelectFormat::clone() const`**
+  - `SelectFormat* icu::SelectFormat::clone() const`
+  - `SelectFormat* icu::SelectFormat::clone() const override`
+- **`void* icu::SimpleDateFormat::clone() const`**
+  - `SimpleDateFormat* icu::SimpleDateFormat::clone() const`
+  - `SimpleDateFormat* icu::SimpleDateFormat::clone() const override`
+- **`void* icu::SimpleTimeZone::clone() const`**
+  - `SimpleTimeZone* icu::SimpleTimeZone::clone() const`
+  - `SimpleTimeZone* icu::SimpleTimeZone::clone() const override`
+- **`void* icu::StringCharacterIterator::clone() const`**
+  - `StringCharacterIterator* icu::StringCharacterIterator::clone() const`
+  - `StringCharacterIterator* icu::StringCharacterIterator::clone() const override`
+- **`void* icu::StringSearch::safeClone() const`**
+  - `StringSearch* icu::StringSearch::safeClone() const`
+  - `StringSearch* icu::StringSearch::safeClone() const override`
+- **`void* icu::TimeArrayTimeZoneRule::clone() const`**
+  - `TimeArrayTimeZoneRule* icu::TimeArrayTimeZoneRule::clone() const`
+  - `TimeArrayTimeZoneRule* icu::TimeArrayTimeZoneRule::clone() const override`
+- **`void* icu::TimeUnit::clone() const`**
+  - `TimeUnit* icu::TimeUnit::clone() const`
+  - `TimeUnit* icu::TimeUnit::clone() const override`
+- **`void* icu::TimeUnitAmount::clone() const`**
+  - `TimeUnitAmount* icu::TimeUnitAmount::clone() const`
+  - `TimeUnitAmount* icu::TimeUnitAmount::clone() const override`
+- **`void* icu::TimeUnitFormat::clone() const`**
+  - `TimeUnitFormat* icu::TimeUnitFormat::clone() const`
+  - `TimeUnitFormat* icu::TimeUnitFormat::clone() const override`
+- **`void* icu::TimeZoneFormat::clone() const`**
+  - `TimeZoneFormat* icu::TimeZoneFormat::clone() const`
+  - `TimeZoneFormat* icu::TimeZoneFormat::clone() const override`
+- **`void* icu::UCharCharacterIterator::clone() const`**
+  - `UCharCharacterIterator* icu::UCharCharacterIterator::clone() const`
+  - `UCharCharacterIterator* icu::UCharCharacterIterator::clone() const override`
+- **`void* icu::UnicodeFilter::clone() const`**
+  - `UnicodeFilter* icu::UnicodeFilter::clone() const override=0`
+  - `UnicodeFilter* icu::UnicodeFilter::clone() const=0`
+- **`void* icu::UnicodeSet::clone() const`**
+  - `UnicodeSet* icu::UnicodeSet::clone() const`
+  - `UnicodeSet* icu::UnicodeSet::clone() const override`
+- **`void* icu::UnicodeString::clone() const`**
+  - `UnicodeString* icu::UnicodeString::clone() const`
+  - `UnicodeString* icu::UnicodeString::clone() const override`
+- **`void* icu::VTimeZone::clone() const`**
+  - `VTimeZone* icu::VTimeZone::clone() const`
+  - `VTimeZone* icu::VTimeZone::clone() const override`
 
 ## Colophon
 
-Contents generated by StableAPI tool on Thu Mar 11 16:09:31 PST 2021
+Contents generated by StableAPI tool on Wed Sep 29 11:59:13 PDT 2021
 
 Copyright © 2019 and later: Unicode, Inc. and others.
 License & terms of use: http://www.unicode.org/copyright.html
diff --git a/icu4j/APIChangeReport.html b/icu4j/APIChangeReport.html
index 525608a..24c7712 100644
--- a/icu4j/APIChangeReport.html
+++ b/icu4j/APIChangeReport.html
@@ -4,260 +4,231 @@
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <!-- © 2021 and later: Unicode, Inc. and others. -->
 <!-- License & terms of use: http://www.unicode.org/copyright.html -->
-<title>ICU4J API Comparison: ICU4J 68.1 with ICU4J 69.1</title>
+<title>ICU4J API Comparison: ICU4J 69.1 with ICU4J 70.1</title>
 </head>
 <body>
-<h1>ICU4J API Comparison: ICU4J 68.1 with ICU4J 69.1</h1>
+<h1>ICU4J API Comparison: ICU4J 69.1 with ICU4J 70.1</h1>
 
 <hr/>
-<h2>Removed from ICU4J 68.1</h2>
+<h2>Removed from ICU4J 69.1</h2>
+
+<h3>Package com.ibm.icu.lang</h3>
+<ul>
+UCharacter
+<ul>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isHighSurrogate</i>(char)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isLowSurrogate</i>(char)</li>
+<li><span style='color:green'>(stable)</span> public static final boolean <i>isSurrogatePair</i>(char, char)</li>
+<li><span style='color:green'>(stable)</span> public static final int <i>toCodePoint</i>(char, char)</li>
+</ul>
+</ul>
 
 <h3>Package com.ibm.icu.text</h3>
 <ul>
-DateIntervalFormat.SpanField
+UTF16
 <ul>
-<li><span style='color:orange'>(draft)</span> protected java.lang.Object <i>readResolve</i>()</li>
-</ul>
-ListFormatter.Field
-<ul>
-<li><span style='color:orange'>(draft)</span> protected java.lang.Object <i>readResolve</i>()</li>
-</ul>
-RelativeDateTimeFormatter.Field
-<ul>
-<li><span style='color:orange'>(draft)</span> protected java.lang.Object <i>readResolve</i>()</li>
-</ul>
-</ul>
-
-<h3>Package com.ibm.icu.util</h3>
-<ul>
-<li><span style='color:orange'>(draft)</span> public static enum <i>MeasureUnit.SIPrefix</i></li>
-MeasureUnit
-<ul>
-<li><span style='color:orange'>(draft)</span> public MeasureUnit.SIPrefix <i>getSIPrefix</i>()</li>
-<li><span style='color:orange'>(draft)</span> public MeasureUnit <i>withSIPrefix</i>(MeasureUnit.SIPrefix)</li>
-</ul>
-MeasureUnit.SIPrefix
-<ul>
-<li><span style='color:orange'>(draft)</span> public int <i>getPower</i>()</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix ATTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix CENTI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix DECI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix DEKA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix EXA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix FEMTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix GIGA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix HECTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix KILO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix MEGA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix MICRO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix MILLI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix NANO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix ONE</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix PETA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix PICO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix TERA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix YOCTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix YOTTA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix ZEPTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.SIPrefix ZETTA</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isLeadSurrogate</i>(char)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isSurrogate</i>(char)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isTrailSurrogate</i>(char)</li>
 </ul>
 </ul>
 
 
 <hr/>
-<h2>Deprecated or Obsoleted in ICU4J 69.1</h2>
+<h2>Deprecated or Obsoleted in ICU4J 70.1</h2>
 <p>(no API obsoleted)</p>
 
 <hr/>
-<h2>Changed in ICU4J 69.1 (old, new)</h2>
-<p>(no API changed)</p>
+<h2>Changed in ICU4J 70.1 (old, new)</h2>
+
+<h3>Package com.ibm.icu.lang</h3>
+<ul>
+UCharacter
+<ul>
+<li>    <span style='color:green'>(stable)</span> public static int <i>getCodePoint</i>(char, char)</br>
+<span style='color:green'>(stable)</span> public static int <i>getCodePoint</i>(int, int)</li>
+</ul>
+</ul>
+
 
 <hr/>
-<h2>Promoted to stable in ICU4J 69.1</h2>
+<h2>Promoted to stable in ICU4J 70.1</h2>
 
 <h3>Package com.ibm.icu.number</h3>
 <ul>
-NumberFormatter.UnitWidth
+FormattedNumber
 <ul>
-<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth FORMAL</li>
-<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth VARIANT</li>
+<li><span style='color:green'>(stable)</span> public MeasureUnit <i>getOutputUnit</i>()</li>
+</ul>
+NumberFormatterSettings
+<ul>
+<li><span style='color:green'>(stable)</span> public T extends NumberFormatterSettings&lt;?&gt; <i>usage</i>(java.lang.String)</li>
 </ul>
 </ul>
 
 <h3>Package com.ibm.icu.text</h3>
 <ul>
-<li><span style='color:green'>(stable)</span> public static final class <i>ListFormatter.Field</i></li>
-<li><span style='color:green'>(stable)</span> public static final class <i>ListFormatter.FormattedList</i></li>
-<li><span style='color:green'>(stable)</span> public static final class <i>ListFormatter.SpanField</i></li>
-<li><span style='color:green'>(stable)</span> public static enum <i>DateFormat.HourCycle</i></li>
-<li><span style='color:green'>(stable)</span> public static enum <i>ListFormatter.Type</i></li>
-<li><span style='color:green'>(stable)</span> public static enum <i>ListFormatter.Width</i></li>
-CurrencyDisplayNames
+DateIntervalFormat
 <ul>
-<li><span style='color:green'>(stable)</span> public abstract java.lang.String <i>getFormalSymbol</i>(java.lang.String)</li>
-<li><span style='color:green'>(stable)</span> public abstract java.lang.String <i>getVariantSymbol</i>(java.lang.String)</li>
+<li><span style='color:green'>(stable)</span> public DisplayContext <i>getContext</i>(DisplayContext.Type)</li>
+<li><span style='color:green'>(stable)</span> public void <i>setContext</i>(DisplayContext)</li>
 </ul>
-DateFormat.HourCycle
+DecimalFormat
 <ul>
-<li><span style='color:green'>(stable)</span> public static final DateFormat.HourCycle HOUR_CYCLE_11</li>
-<li><span style='color:green'>(stable)</span> public static final DateFormat.HourCycle HOUR_CYCLE_12</li>
-<li><span style='color:green'>(stable)</span> public static final DateFormat.HourCycle HOUR_CYCLE_23</li>
-<li><span style='color:green'>(stable)</span> public static final DateFormat.HourCycle HOUR_CYCLE_24</li>
+<li><span style='color:green'>(stable)</span> public static final int MINIMUM_GROUPING_DIGITS_AUTO</li>
+<li><span style='color:green'>(stable)</span> public static final int MINIMUM_GROUPING_DIGITS_MIN2</li>
 </ul>
-DateTimePatternGenerator
+PluralRules
 <ul>
-<li><span style='color:green'>(stable)</span> public DateFormat.HourCycle <i>getDefaultHourCycle</i>()</li>
-</ul>
-ListFormatter
-<ul>
-<li><span style='color:green'>(stable)</span> public ListFormatter.FormattedList <i>formatToValue</i>(java.lang.Object...)</li>
-<li><span style='color:green'>(stable)</span> public ListFormatter.FormattedList <i>formatToValue</i>(java.util.Collection&lt;?&gt;)</li>
-<li><span style='color:green'>(stable)</span> public static ListFormatter <i>getInstance</i>(ULocale, ListFormatter.Type, ListFormatter.Width)</li>
-<li><span style='color:green'>(stable)</span> public static ListFormatter <i>getInstance</i>(java.util.Locale, ListFormatter.Type, ListFormatter.Width)</li>
-</ul>
-ListFormatter.Type
-<ul>
-<li><span style='color:green'>(stable)</span> public static final ListFormatter.Type AND</li>
-<li><span style='color:green'>(stable)</span> public static final ListFormatter.Type OR</li>
-<li><span style='color:green'>(stable)</span> public static final ListFormatter.Type UNITS</li>
-</ul>
-ListFormatter.Width
-<ul>
-<li><span style='color:green'>(stable)</span> public static final ListFormatter.Width NARROW</li>
-<li><span style='color:green'>(stable)</span> public static final ListFormatter.Width SHORT</li>
-<li><span style='color:green'>(stable)</span> public static final ListFormatter.Width WIDE</li>
+<li><span style='color:green'>(stable)</span> public java.lang.String <i>select</i>(FormattedNumberRange)</li>
 </ul>
 </ul>
 
 <h3>Package com.ibm.icu.util</h3>
 <ul>
-<li><span style='color:green'>(stable)</span> public static enum <i>LocaleMatcher.Direction</i></li>
-Currency
+<li><span style='color:green'>(stable)</span> public class <i>ICUInputTooLongException</i></li>
+<li><span style='color:green'>(stable)</span> public final class <i>NoUnit</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>MeasureUnit.Complexity</i></li>
+LocaleMatcher
 <ul>
-<li><span style='color:green'>(stable)</span> public static final int FORMAL_SYMBOL_NAME</li>
-<li><span style='color:green'>(stable)</span> public static final int VARIANT_SYMBOL_NAME</li>
+<li><span style='color:green'>(stable)</span> public boolean <i>isMatch</i>(ULocale, ULocale)</li>
+<li><span style='color:green'>(stable)</span> public boolean <i>isMatch</i>(java.util.Locale, java.util.Locale)</li>
 </ul>
 LocaleMatcher.Builder
 <ul>
-<li><span style='color:green'>(stable)</span> public LocaleMatcher.Builder <i>setDirection</i>(LocaleMatcher.Direction)</li>
+<li><span style='color:green'>(stable)</span> public LocaleMatcher.Builder <i>setMaxDistance</i>(ULocale, ULocale)</li>
+<li><span style='color:green'>(stable)</span> public LocaleMatcher.Builder <i>setMaxDistance</i>(java.util.Locale, java.util.Locale)</li>
+<li><span style='color:green'>(stable)</span> public LocaleMatcher.Builder <i>setNoDefaultLocale</i>()</li>
 </ul>
-LocaleMatcher.Direction
+MeasureUnit
 <ul>
-<li><span style='color:green'>(stable)</span> public static final LocaleMatcher.Direction ONLY_TWO_WAY</li>
-<li><span style='color:green'>(stable)</span> public static final LocaleMatcher.Direction WITH_ONE_WAY</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit CANDELA</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit DESSERT_SPOON</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit DESSERT_SPOON_IMPERIAL</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit DOT</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit DRAM</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit DROP</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit EARTH_RADIUS</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit GRAIN</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit JIGGER</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit LUMEN</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit PINCH</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit QUART_IMPERIAL</li>
+<li><span style='color:green'>(stable)</span> public static MeasureUnit <i>forIdentifier</i>(java.lang.String)</li>
+<li><span style='color:green'>(stable)</span> public MeasureUnit.Complexity <i>getComplexity</i>()</li>
+<li><span style='color:green'>(stable)</span> public int <i>getDimensionality</i>()</li>
+<li><span style='color:green'>(stable)</span> public java.lang.String <i>getIdentifier</i>()</li>
+<li><span style='color:green'>(stable)</span> public MeasureUnit <i>product</i>(MeasureUnit)</li>
+<li><span style='color:green'>(stable)</span> public MeasureUnit <i>reciprocal</i>()</li>
+<li><span style='color:green'>(stable)</span> public java.util.List&lt;MeasureUnit&gt; <i>splitToSingleUnits</i>()</li>
+<li><span style='color:green'>(stable)</span> public MeasureUnit <i>withDimensionality</i>(int)</li>
 </ul>
-ULocale
+MeasureUnit.Complexity
 <ul>
-<li><span style='color:green'>(stable)</span> public static ULocale <i>createCanonical</i>(ULocale)</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit.Complexity COMPOUND</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit.Complexity MIXED</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit.Complexity SINGLE</li>
 </ul>
 </ul>
 
 
 <hr/>
-<h2>Added in ICU4J 69.1</h2>
+<h2>Added in ICU4J 70.1</h2>
 
-<h3>Package com.ibm.icu.number</h3>
+<h3>Package com.ibm.icu.lang</h3>
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final class <i>NumberRangeFormatter.SpanField</i></li>
-<li><span style='color:orange'>(draft)</span> public static enum <i>NumberFormatter.RoundingPriority</i></li>
-<li><span style='color:orange'>(draft)</span> public static enum <i>NumberFormatter.TrailingZeroDisplay</i></li>
-FractionPrecision
+UCharacter
 <ul>
-<li><span style='color:orange'>(draft)</span> public Precision <i>withSignificantDigits</i>(int, int, NumberFormatter.RoundingPriority)</li>
+<li><span style='color:orange'>(draft)</span> public static boolean <i>hasBinaryProperty</i>(java.lang.CharSequence, int)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isHighSurrogate</i>(int)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isLowSurrogate</i>(int)</li>
+<li><span style='color:green'>(stable)</span> public static final boolean <i>isSurrogatePair</i>(int, int)</li>
+<li><span style='color:green'>(stable)</span> public static final int <i>toCodePoint</i>(int, int)</li>
 </ul>
-NumberFormatter.RoundingPriority
+UCharacter.JoiningGroup
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormatter.RoundingPriority RELAXED</li>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormatter.RoundingPriority STRICT</li>
+<li><span style='color:green'>(stable)</span> public static final int THIN_YEH</li>
+<li><span style='color:green'>(stable)</span> public static final int VERTICAL_TAIL</li>
 </ul>
-NumberFormatter.SignDisplay
+UCharacter.UnicodeBlock
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormatter.SignDisplay ACCOUNTING_NEGATIVE</li>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormatter.SignDisplay NEGATIVE</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock ARABIC_EXTENDED_B</li>
+<li><span style='color:green'>(stable)</span> public static final int ARABIC_EXTENDED_B_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock CYPRO_MINOAN</li>
+<li><span style='color:green'>(stable)</span> public static final int CYPRO_MINOAN_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock ETHIOPIC_EXTENDED_B</li>
+<li><span style='color:green'>(stable)</span> public static final int ETHIOPIC_EXTENDED_B_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock KANA_EXTENDED_B</li>
+<li><span style='color:green'>(stable)</span> public static final int KANA_EXTENDED_B_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock LATIN_EXTENDED_F</li>
+<li><span style='color:green'>(stable)</span> public static final int LATIN_EXTENDED_F_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock LATIN_EXTENDED_G</li>
+<li><span style='color:green'>(stable)</span> public static final int LATIN_EXTENDED_G_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock OLD_UYGHUR</li>
+<li><span style='color:green'>(stable)</span> public static final int OLD_UYGHUR_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock TANGSA</li>
+<li><span style='color:green'>(stable)</span> public static final int TANGSA_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock TOTO</li>
+<li><span style='color:green'>(stable)</span> public static final int TOTO_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A</li>
+<li><span style='color:green'>(stable)</span> public static final int UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock VITHKUQI</li>
+<li><span style='color:green'>(stable)</span> public static final int VITHKUQI_ID</li>
+<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock ZNAMENNY_MUSICAL_NOTATION</li>
+<li><span style='color:green'>(stable)</span> public static final int ZNAMENNY_MUSICAL_NOTATION_ID</li>
 </ul>
-NumberFormatter.TrailingZeroDisplay
+UProperty
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormatter.TrailingZeroDisplay AUTO</li>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormatter.TrailingZeroDisplay HIDE_IF_WHOLE</li>
+<li><span style='color:orange'>(draft)</span> public static final int BASIC_EMOJI</li>
+<li><span style='color:orange'>(draft)</span> public static final int EMOJI_KEYCAP_SEQUENCE</li>
+<li><span style='color:orange'>(draft)</span> public static final int RGI_EMOJI</li>
+<li><span style='color:orange'>(draft)</span> public static final int RGI_EMOJI_FLAG_SEQUENCE</li>
+<li><span style='color:orange'>(draft)</span> public static final int RGI_EMOJI_MODIFIER_SEQUENCE</li>
+<li><span style='color:orange'>(draft)</span> public static final int RGI_EMOJI_TAG_SEQUENCE</li>
+<li><span style='color:orange'>(draft)</span> public static final int RGI_EMOJI_ZWJ_SEQUENCE</li>
 </ul>
-Precision
+UScript
 <ul>
-<li><span style='color:orange'>(draft)</span> public Precision <i>trailingZeroDisplay</i>(NumberFormatter.TrailingZeroDisplay)</li>
+<li><span style='color:green'>(stable)</span> public static final int CYPRO_MINOAN</li>
+<li><span style='color:green'>(stable)</span> public static final int OLD_UYGHUR</li>
+<li><span style='color:green'>(stable)</span> public static final int TANGSA</li>
+<li><span style='color:green'>(stable)</span> public static final int TOTO</li>
+<li><span style='color:green'>(stable)</span> public static final int VITHKUQI</li>
+</ul>
+</ul>
+
+<h3>Package com.ibm.icu.text</h3>
+<ul>
+UTF16
+<ul>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isLeadSurrogate</i>(int)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isSurrogate</i>(int)</li>
+<li><span style='color:green'>(stable)</span> public static boolean <i>isTrailSurrogate</i>(int)</li>
+</ul>
+UnicodeSet
+<ul>
+<li><span style='color:orange'>(draft)</span> public boolean <i>hasStrings</i>()</li>
+</ul>
+UnicodeSetIterator
+<ul>
+<li><span style='color:orange'>(draft)</span> public UnicodeSetIterator <i>skipToStrings</i>()</li>
 </ul>
 </ul>
 
 <h3>Package com.ibm.icu.util</h3>
 <ul>
-<li><span style='color:orange'>(draft)</span> public static enum <i>BasicTimeZone.LocalOption</i></li>
-<li><span style='color:orange'>(draft)</span> public static enum <i>MeasureUnit.MeasurePrefix</i></li>
-BasicTimeZone
-<ul>
-<li><span style='color:orange'>(draft)</span> public void <i>getOffsetFromLocal</i>(long, BasicTimeZone.LocalOption, BasicTimeZone.LocalOption, int[])</li>
-</ul>
-BasicTimeZone.LocalOption
-<ul>
-<li><span style='color:orange'>(draft)</span> public static final BasicTimeZone.LocalOption DAYLIGHT_FORMER</li>
-<li><span style='color:orange'>(draft)</span> public static final BasicTimeZone.LocalOption DAYLIGHT_LATTER</li>
-<li><span style='color:orange'>(draft)</span> public static final BasicTimeZone.LocalOption FORMER</li>
-<li><span style='color:orange'>(draft)</span> public static final BasicTimeZone.LocalOption LATTER</li>
-<li><span style='color:orange'>(draft)</span> public static final BasicTimeZone.LocalOption STANDARD_FORMER</li>
-<li><span style='color:orange'>(draft)</span> public static final BasicTimeZone.LocalOption STANDARD_LATTER</li>
-</ul>
 MeasureUnit
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit MILLIGRAM_OFGLUCOSE_PER_DECILITER</li>
-<li><span style='color:orange'>(draft)</span> public MeasureUnit.MeasurePrefix <i>getPrefix</i>()</li>
-<li><span style='color:orange'>(draft)</span> public MeasureUnit <i>withPrefix</i>(MeasureUnit.MeasurePrefix)</li>
+<li><span style='color:orange'>(draft)</span> public static final MeasureUnit ITEM</li>
+<li><span style='color:orange'>(draft)</span> public static final MeasureUnit KILOWATT_HOUR_PER_100_KILOMETER</li>
 </ul>
-MeasureUnit.MeasurePrefix
+VersionInfo
 <ul>
-<li><span style='color:orange'>(draft)</span> public int <i>getBase</i>()</li>
-<li><span style='color:orange'>(draft)</span> public int <i>getPower</i>()</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix ATTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix CENTI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix DECI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix DEKA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix EXA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix EXBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix FEMTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix GIBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix GIGA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix HECTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix KIBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix KILO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix MEBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix MEGA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix MICRO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix MILLI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix NANO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix ONE</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix PEBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix PETA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix PICO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix TEBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix TERA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix YOBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix YOCTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix YOTTA</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix ZEBI</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix ZEPTO</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit.MeasurePrefix ZETTA</li>
-</ul>
-RuleBasedTimeZone
-<ul>
-<li><span style='color:orange'>(draft)</span> public void <i>getOffsetFromLocal</i>(long, BasicTimeZone.LocalOption, BasicTimeZone.LocalOption, int[])</li>
-</ul>
-SimpleTimeZone
-<ul>
-<li><span style='color:orange'>(draft)</span> public void <i>getOffsetFromLocal</i>(long, BasicTimeZone.LocalOption, BasicTimeZone.LocalOption, int[])</li>
-</ul>
-VTimeZone
-<ul>
-<li><span style='color:orange'>(draft)</span> public void <i>getOffsetFromLocal</i>(long, BasicTimeZone.LocalOption, BasicTimeZone.LocalOption, int[])</li>
+<li><span style='color:green'>(stable)</span> public static final VersionInfo UNICODE_14_0</li>
 </ul>
 </ul>
 
 <hr/>
-<p><i><font size="-1">Contents generated by ReportAPI tool on Thu Mar 11 17:12:02 PST 2021<br/>© 2021 and later: Unicode, Inc. and others. License & terms of use: <a href="http://www.unicode.org/copyright.html">http://www.unicode.org/copyright.html</a></font></i></p>
+<p><i><font size="-1">Contents generated by ReportAPI tool on Tue Sep 28 16:43:15 PDT 2021<br/>© 2021 and later: Unicode, Inc. and others. License & terms of use: <a href="http://www.unicode.org/copyright.html">http://www.unicode.org/copyright.html</a></font></i></p>
 </body>
 </html>
diff --git a/tools/release/java/src/main/java/com/ibm/icu/dev/tools/docs/StableAPI.java b/tools/release/java/src/main/java/com/ibm/icu/dev/tools/docs/StableAPI.java
index 5dc98a0..eafe0f8 100644
--- a/tools/release/java/src/main/java/com/ibm/icu/dev/tools/docs/StableAPI.java
+++ b/tools/release/java/src/main/java/com/ibm/icu/dev/tools/docs/StableAPI.java
@@ -548,11 +548,12 @@
                                       //  TODO: notify about this difference, separately
                 "[ ]*U_NOEXCEPT", "", // remove U_NOEXCEPT (this was fixed in Doxyfile, but fixing here so it is
                                       //  retroactive)
-                "[ ]*U_OVERRIDE", "", // remove U_OVERRIDE
+                "[ ]*(override|U_OVERRIDE)", "", // remove U_OVERRIDE and override
                 // Simplify possibly-covariant functions to void*
                 "^([^\\* ]+)\\*(.*)::(clone|safeClone|cloneAsThawed|freeze|createBufferClone)\\((.*)", "void*$2::$3($4",
                 "\\s+$", "", // remove trailing spaces.
-                "^U_NAMESPACE_END ", "" // Bug in processing of uspoof.h
+                "^U_NAMESPACE_END ", "", // Bug in processing of uspoof.h
+                "\\bUBool\\b", "bool"
         };
 
         /**
