ICU-20795 BRS65 ICU4J API status promotion

- Updating API status version for ICU4J 65 release
- Fixed a few minor API doc issues in DecimalFormat and LocaleMatcher
- Update ICU4J API change report
diff --git a/icu4j/APIChangeReport.html b/icu4j/APIChangeReport.html
index f22db68..31795c3 100644
--- a/icu4j/APIChangeReport.html
+++ b/icu4j/APIChangeReport.html
@@ -4,271 +4,244 @@
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <!-- © 2019 and later: Unicode, Inc. and others. -->
 <!-- License & terms of use: http://www.unicode.org/copyright.html#License -->
-<title>ICU4J API Comparison: ICU4J 63.1 with ICU4J 64.2</title>
+<title>ICU4J API Comparison: ICU4J 64.2 with ICU4J 65.1</title>
 </head>
 <body>
-<h1>ICU4J API Comparison: ICU4J 63.1 with ICU4J 64.2</h1>
+<h1>ICU4J API Comparison: ICU4J 64.2 with ICU4J 65.1</h1>
 
 <hr/>
-<h2>Removed from ICU4J 63.1</h2>
-
-<h3>Package com.ibm.icu.number</h3>
-<ul>
-<li><span style='color:gray'>(deprecated)</span> public abstract class <i>CurrencyRounder</i></li>
-<li><span style='color:gray'>(deprecated)</span> public abstract class <i>FractionRounder</i></li>
-<li><span style='color:gray'>(deprecated)</span> public abstract class <i>Rounder</i></li>
-FormattedNumber
-<ul>
-<li><span style='color:gray'>(deprecated)</span> public java.text.AttributedCharacterIterator <i>getFieldIterator</i>()</li>
-<li><span style='color:gray'>(deprecated)</span> public void <i>populateFieldPosition</i>(java.text.FieldPosition)</li>
-</ul>
-NumberFormatterSettings
-<ul>
-<li><span style='color:gray'>(deprecated)</span> public T extends NumberFormatterSettings&lt;?&gt; <i>rounding</i>(Precision)</li>
-</ul>
-Precision
-<ul>
-<li><span style='color:gray'>(deprecated)</span> public static Precision <i>fixedDigits</i>(int)</li>
-<li><span style='color:gray'>(deprecated)</span> public static Precision <i>maxDigits</i>(int)</li>
-<li><span style='color:gray'>(deprecated)</span> public static Precision <i>minDigits</i>(int)</li>
-<li><span style='color:gray'>(deprecated)</span> public static Precision <i>minMaxDigits</i>(int, int)</li>
-<li><span style='color:gray'>(deprecated)</span> public Precision <i>withMode</i>(java.math.RoundingMode)</li>
-</ul>
-</ul>
+<h2>Removed from ICU4J 64.2</h2>
 
 <h3>Package com.ibm.icu.util</h3>
 <ul>
-CharsTrie
+LocaleMatcher
 <ul>
-<li><span style='color:green'>(stable)</span> public java.lang.Object <i>clone</i>()</li>
+<li><span style='color:green'>(stable)</span> public ULocale <i>getBestMatch</i>(LocalePriorityList)</li>
 </ul>
 </ul>
 
 
 <hr/>
-<h2>Deprecated or Obsoleted in ICU4J 64.2</h2>
-
-<h3>Package com.ibm.icu.text</h3>
-<ul>
-BreakIterator
-<ul>
-<li><span style='color:gray'>(deprecated)</span> public static final int KIND_TITLE</li>
-<li><span style='color:gray'>(deprecated)</span> public static BreakIterator <i>getTitleInstance</i>()</li>
-<li><span style='color:gray'>(deprecated)</span> public static BreakIterator <i>getTitleInstance</i>(ULocale)</li>
-<li><span style='color:gray'>(deprecated)</span> public static BreakIterator <i>getTitleInstance</i>(java.util.Locale)</li>
-</ul>
-</ul>
-
-
-<hr/>
-<h2>Changed in ICU4J 64.2 (old, new)</h2>
-
-<h3>Package com.ibm.icu.number</h3>
-<ul>
-<li>    <span style='color:orange'>(draft)</span> public class <i>FormattedNumber</i> extends java.lang.Object</br>
-<span style='color:orange'>(draft)</span> public class <i>FormattedNumber</i> extends java.lang.Object implements com.ibm.icu.text.FormattedValue</li>
-<li>    <span style='color:orange'>(draft)</span> public class <i>FormattedNumberRange</i> extends java.lang.Object</br>
-<span style='color:orange'>(draft)</span> public class <i>FormattedNumberRange</i> extends java.lang.Object implements com.ibm.icu.text.FormattedValue</li>
-</ul>
+<h2>Deprecated or Obsoleted in ICU4J 65.1</h2>
 
 <h3>Package com.ibm.icu.util</h3>
 <ul>
-BytesTrie
+LocaleMatcher
 <ul>
-<li>    <span style='color:green'>(stable)</span> public java.lang.Object <i>clone</i>()</br>
-<span style='color:green'>(stable)</span> public com.ibm.icu.util.BytesTrie <i>clone</i>()</li>
+<li><span style='color:gray'>(deprecated)</span> public double <i>match</i>(ULocale, ULocale, ULocale, ULocale)</li>
 </ul>
 </ul>
 
 
 <hr/>
-<h2>Promoted to stable in ICU4J 64.2</h2>
-
-<h3>Package com.ibm.icu.text</h3>
-<ul>
-<li><span style='color:green'>(stable)</span> public static enum <i>DateTimePatternGenerator.DisplayWidth</i></li>
-CurrencyDisplayNames
-<ul>
-<li><span style='color:green'>(stable)</span> public abstract java.lang.String <i>getNarrowSymbol</i>(java.lang.String)</li>
-</ul>
-DateTimePatternGenerator
-<ul>
-<li><span style='color:green'>(stable)</span> public java.lang.String <i>getFieldDisplayName</i>(int, DateTimePatternGenerator.DisplayWidth)</li>
-</ul>
-DateTimePatternGenerator.DisplayWidth
-<ul>
-<li><span style='color:green'>(stable)</span> public static final DateTimePatternGenerator.DisplayWidth ABBREVIATED</li>
-<li><span style='color:green'>(stable)</span> public static final DateTimePatternGenerator.DisplayWidth NARROW</li>
-<li><span style='color:green'>(stable)</span> public static final DateTimePatternGenerator.DisplayWidth WIDE</li>
-</ul>
-</ul>
-
-<h3>Package com.ibm.icu.util</h3>
-<ul>
-Currency
-<ul>
-<li><span style='color:green'>(stable)</span> public static final int NARROW_SYMBOL_NAME</li>
-</ul>
-</ul>
-
+<h2>Changed in ICU4J 65.1 (old, new)</h2>
+<p>(no API changed)</p>
 
 <hr/>
-<h2>Added in ICU4J 64.2</h2>
+<h2>Promoted to stable in ICU4J 65.1</h2>
 
 <h3>Package com.ibm.icu.lang</h3>
 <ul>
-UCharacter.UnicodeBlock
-<ul>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS</li>
-<li><span style='color:green'>(stable)</span> public static final int EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock ELYMAIC</li>
-<li><span style='color:green'>(stable)</span> public static final int ELYMAIC_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock NANDINAGARI</li>
-<li><span style='color:green'>(stable)</span> public static final int NANDINAGARI_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock NYIAKENG_PUACHUE_HMONG</li>
-<li><span style='color:green'>(stable)</span> public static final int NYIAKENG_PUACHUE_HMONG_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock OTTOMAN_SIYAQ_NUMBERS</li>
-<li><span style='color:green'>(stable)</span> public static final int OTTOMAN_SIYAQ_NUMBERS_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock SMALL_KANA_EXTENSION</li>
-<li><span style='color:green'>(stable)</span> public static final int SMALL_KANA_EXTENSION_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A</li>
-<li><span style='color:green'>(stable)</span> public static final int SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock TAMIL_SUPPLEMENT</li>
-<li><span style='color:green'>(stable)</span> public static final int TAMIL_SUPPLEMENT_ID</li>
-<li><span style='color:green'>(stable)</span> public static final UCharacter.UnicodeBlock WANCHO</li>
-<li><span style='color:green'>(stable)</span> public static final int WANCHO_ID</li>
-</ul>
-UScript
-<ul>
-<li><span style='color:green'>(stable)</span> public static final int ELYMAIC</li>
-<li><span style='color:green'>(stable)</span> public static final int NANDINAGARI</li>
-<li><span style='color:green'>(stable)</span> public static final int NYIAKENG_PUACHUE_HMONG</li>
-<li><span style='color:green'>(stable)</span> public static final int WANCHO</li>
-</ul>
+<li><span style='color:green'>(stable)</span> public final class <i>CharacterProperties</i></li>
 </ul>
 
 <h3>Package com.ibm.icu.number</h3>
 <ul>
-FormattedNumber
+<li><span style='color:green'>(stable)</span> public class <i>CompactNotation</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>CurrencyPrecision</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>FormattedNumber</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>FormattedNumberRange</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>FractionPrecision</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>IntegerWidth</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>LocalizedNumberFormatter</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>LocalizedNumberRangeFormatter</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>Notation</i></li>
+<li><span style='color:green'>(stable)</span> public final class <i>NumberFormatter</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>NumberFormatterSettings</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>NumberRangeFormatter</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>NumberRangeFormatterSettings</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>Precision</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>Scale</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>ScientificNotation</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>SimpleNotation</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>SkeletonSyntaxException</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>UnlocalizedNumberFormatter</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>UnlocalizedNumberRangeFormatter</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberFormatter.DecimalSeparatorDisplay</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberFormatter.GroupingStrategy</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberFormatter.SignDisplay</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberFormatter.UnitWidth</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberRangeFormatter.RangeCollapse</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberRangeFormatter.RangeIdentityFallback</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>NumberRangeFormatter.RangeIdentityResult</i></li>
+NumberFormatter.DecimalSeparatorDisplay
 <ul>
-<li><span style='color:orange'>(draft)</span> public char <i>charAt</i>(int)</li>
-<li><span style='color:orange'>(draft)</span> public int <i>length</i>()</li>
-<li><span style='color:orange'>(draft)</span> public boolean <i>nextPosition</i>(ConstrainedFieldPosition)</li>
-<li><span style='color:orange'>(draft)</span> public java.lang.CharSequence <i>subSequence</i>(int, int)</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.DecimalSeparatorDisplay ALWAYS</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.DecimalSeparatorDisplay AUTO</li>
 </ul>
-FormattedNumberRange
+NumberFormatter.GroupingStrategy
 <ul>
-<li><span style='color:orange'>(draft)</span> public char <i>charAt</i>(int)</li>
-<li><span style='color:orange'>(draft)</span> public int <i>length</i>()</li>
-<li><span style='color:orange'>(draft)</span> public boolean <i>nextPosition</i>(ConstrainedFieldPosition)</li>
-<li><span style='color:orange'>(draft)</span> public java.lang.CharSequence <i>subSequence</i>(int, int)</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.GroupingStrategy AUTO</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.GroupingStrategy MIN2</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.GroupingStrategy OFF</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.GroupingStrategy ON_ALIGNED</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.GroupingStrategy THOUSANDS</li>
+</ul>
+NumberFormatter.SignDisplay
+<ul>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay ACCOUNTING</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay ACCOUNTING_ALWAYS</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay ACCOUNTING_EXCEPT_ZERO</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay ALWAYS</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay AUTO</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay EXCEPT_ZERO</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.SignDisplay NEVER</li>
+</ul>
+NumberFormatter.UnitWidth
+<ul>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth FULL_NAME</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth HIDDEN</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth ISO_CODE</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth NARROW</li>
+<li><span style='color:green'>(stable)</span> public static final NumberFormatter.UnitWidth SHORT</li>
+</ul>
+NumberRangeFormatter.RangeCollapse
+<ul>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeCollapse ALL</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeCollapse AUTO</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeCollapse NONE</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeCollapse UNIT</li>
+</ul>
+NumberRangeFormatter.RangeIdentityFallback
+<ul>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityFallback APPROXIMATELY</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityFallback APPROXIMATELY_OR_SINGLE_VALUE</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityFallback RANGE</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityFallback SINGLE_VALUE</li>
+</ul>
+NumberRangeFormatter.RangeIdentityResult
+<ul>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityResult EQUAL_AFTER_ROUNDING</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityResult EQUAL_BEFORE_ROUNDING</li>
+<li><span style='color:green'>(stable)</span> public static final NumberRangeFormatter.RangeIdentityResult NOT_EQUAL</li>
 </ul>
 </ul>
 
 <h3>Package com.ibm.icu.text</h3>
 <ul>
-<li><span style='color:orange'>(draft)</span> public class <i>ConstrainedFieldPosition</i></li>
-<li><span style='color:orange'>(draft)</span> public static final class <i>DateIntervalFormat.FormattedDateInterval</i></li>
-<li><span style='color:orange'>(draft)</span> public static final class <i>DateIntervalFormat.SpanField</i></li>
-<li><span style='color:orange'>(draft)</span> public interface <i>FormattedValue</i></li>
-<li><span style='color:orange'>(draft)</span> public static class <i>RelativeDateTimeFormatter.Field</i></li>
-<li><span style='color:orange'>(draft)</span> public static class <i>RelativeDateTimeFormatter.FormattedRelativeDateTime</i></li>
-<li><span style='color:orange'>(draft)</span> public static abstract class <i>UFormat.SpanField</i></li>
-DateFormatSymbols
-<ul>
-<li><span style='color:orange'>(draft)</span> public java.lang.String[] <i>getNarrowEras</i>()</li>
-<li><span style='color:orange'>(draft)</span> public void <i>setNarrowEras</i>(java.lang.String[])</li>
-</ul>
-DateIntervalFormat
-<ul>
-<li><span style='color:orange'>(draft)</span> public DateIntervalFormat.FormattedDateInterval <i>formatToValue</i>(Calendar, Calendar)</li>
-<li><span style='color:orange'>(draft)</span> public DateIntervalFormat.FormattedDateInterval <i>formatToValue</i>(DateInterval)</li>
-</ul>
 DecimalFormat
 <ul>
-<li><span style='color:orange'>(draft)</span> public synchronized int <i>getMinimumGroupingDigits</i>()</li>
-<li><span style='color:orange'>(draft)</span> public synchronized boolean <i>isParseCaseSensitive</i>()</li>
-<li><span style='color:orange'>(draft)</span> public synchronized boolean <i>isParseNoExponent</i>()</li>
-<li><span style='color:orange'>(draft)</span> public synchronized boolean <i>isSignAlwaysShown</i>()</li>
-<li><span style='color:orange'>(draft)</span> public synchronized void <i>setMinimumGroupingDigits</i>(int)</li>
-<li><span style='color:orange'>(draft)</span> public synchronized void <i>setParseCaseSensitive</i>(boolean)</li>
-<li><span style='color:orange'>(draft)</span> public synchronized void <i>setParseNoExponent</i>(boolean)</li>
-<li><span style='color:orange'>(draft)</span> public synchronized void <i>setSignAlwaysShown</i>(boolean)</li>
+<li><span style='color:green'>(stable)</span> public LocalizedNumberFormatter <i>toNumberFormatter</i>()</li>
 </ul>
-NumberFormat.Field
+SpoofChecker
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormat.Field COMPACT</li>
-<li><span style='color:orange'>(draft)</span> public static final NumberFormat.Field MEASURE_UNIT</li>
-</ul>
-PluralRules
-<ul>
-<li><span style='color:orange'>(draft)</span> public java.lang.String <i>select</i>(FormattedNumber)</li>
-</ul>
-RelativeDateTimeFormatter
-<ul>
-<li><span style='color:orange'>(draft)</span> public RelativeDateTimeFormatter.FormattedRelativeDateTime <i>formatNumericToValue</i>(double, RelativeDateTimeFormatter.RelativeDateTimeUnit)</li>
-<li><span style='color:orange'>(draft)</span> public RelativeDateTimeFormatter.FormattedRelativeDateTime <i>formatToValue</i>(RelativeDateTimeFormatter.Direction, RelativeDateTimeFormatter.AbsoluteUnit)</li>
-<li><span style='color:orange'>(draft)</span> public RelativeDateTimeFormatter.FormattedRelativeDateTime <i>formatToValue</i>(double, RelativeDateTimeFormatter.Direction, RelativeDateTimeFormatter.RelativeUnit)</li>
-<li><span style='color:orange'>(draft)</span> public RelativeDateTimeFormatter.FormattedRelativeDateTime <i>formatToValue</i>(double, RelativeDateTimeFormatter.RelativeDateTimeUnit)</li>
-</ul>
-RelativeDateTimeFormatter.AbsoluteUnit
-<ul>
-<li><span style='color:orange'>(draft)</span> public static final RelativeDateTimeFormatter.AbsoluteUnit QUARTER</li>
+<li><span style='color:green'>(stable)</span> public static final int HIDDEN_OVERLAY</li>
 </ul>
 </ul>
 
 <h3>Package com.ibm.icu.util</h3>
 <ul>
-BytesTrie
+<li><span style='color:green'>(stable)</span> public abstract class <i>CodePointMap</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointMap.Range</i></li>
+<li><span style='color:green'>(stable)</span> public class <i>CodePointMap.StringIterator</i></li>
+<li><span style='color:green'>(stable)</span> public static interface <i>CodePointMap.ValueFilter</i></li>
+<li><span style='color:green'>(stable)</span> public abstract class <i>CodePointTrie</i></li>
+<li><span style='color:green'>(stable)</span> public static abstract class <i>CodePointTrie.Fast</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointTrie.Fast16</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointTrie.Fast32</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointTrie.Fast8</i></li>
+<li><span style='color:green'>(stable)</span> public static abstract class <i>CodePointTrie.Small</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointTrie.Small16</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointTrie.Small32</i></li>
+<li><span style='color:green'>(stable)</span> public static final class <i>CodePointTrie.Small8</i></li>
+<li><span style='color:green'>(stable)</span> public final class <i>MutableCodePointTrie</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>CodePointMap.RangeOption</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>CodePointTrie.Type</i></li>
+<li><span style='color:green'>(stable)</span> public static enum <i>CodePointTrie.ValueWidth</i></li>
+CodePointMap.RangeOption
 <ul>
-<li><span style='color:orange'>(draft)</span> public <i>BytesTrie</i>(BytesTrie)</li>
-<li><span style='color:orange'>(draft)</span> public long <i>getState64</i>()</li>
-<li><span style='color:orange'>(draft)</span> public BytesTrie <i>resetToState64</i>(long)</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointMap.RangeOption FIXED_ALL_SURROGATES</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointMap.RangeOption FIXED_LEAD_SURROGATES</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointMap.RangeOption NORMAL</li>
 </ul>
-CharsTrie
+CodePointTrie.Type
 <ul>
-<li><span style='color:orange'>(draft)</span> public <i>CharsTrie</i>(CharsTrie)</li>
-<li><span style='color:green'>(stable)</span> public CharsTrie <i>clone</i>()</li>
-<li><span style='color:orange'>(draft)</span> public long <i>getState64</i>()</li>
-<li><span style='color:orange'>(draft)</span> public CharsTrie <i>resetToState64</i>(long)</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointTrie.Type FAST</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointTrie.Type SMALL</li>
 </ul>
-JapaneseCalendar
+CodePointTrie.ValueWidth
 <ul>
-<li><span style='color:green'>(stable)</span> public static final int REIWA</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointTrie.ValueWidth BITS_16</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointTrie.ValueWidth BITS_32</li>
+<li><span style='color:green'>(stable)</span> public static final CodePointTrie.ValueWidth BITS_8</li>
 </ul>
 MeasureUnit
 <ul>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit BARREL</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit BRITISH_THERMAL_UNIT</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit DALTON</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit DAY_PERSON</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit DUNAM</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit EARTH_MASS</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit ELECTRONVOLT</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit FLUID_OUNCE_IMPERIAL</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit KILOPASCAL</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit MEGAPASCAL</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit MOLE</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit MONTH_PERSON</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit NEWTON</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit NEWTON_METER</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit PERMYRIAD</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit POUND_FOOT</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit POUND_FORCE</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit SOLAR_LUMINOSITY</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit SOLAR_MASS</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit SOLAR_RADIUS</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit WEEK_PERSON</li>
-<li><span style='color:orange'>(draft)</span> public static final MeasureUnit YEAR_PERSON</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit ATMOSPHERE</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit PERCENT</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit PERMILLE</li>
+<li><span style='color:green'>(stable)</span> public static final MeasureUnit PETABYTE</li>
 </ul>
-VersionInfo
+</ul>
+
+
+<hr/>
+<h2>Added in ICU4J 65.1</h2>
+
+<h3>Package com.ibm.icu.text</h3>
 <ul>
-<li><span style='color:green'>(stable)</span> public static final VersionInfo UNICODE_12_0</li>
-<li><span style='color:green'>(stable)</span> public static final VersionInfo UNICODE_12_1</li>
+RelativeDateTimeFormatter.AbsoluteUnit
+<ul>
+<li><span style='color:orange'>(draft)</span> public static final RelativeDateTimeFormatter.AbsoluteUnit HOUR</li>
+<li><span style='color:orange'>(draft)</span> public static final RelativeDateTimeFormatter.AbsoluteUnit MINUTE</li>
+</ul>
+</ul>
+
+<h3>Package com.ibm.icu.util</h3>
+<ul>
+<li><span style='color:orange'>(draft)</span> public static final class <i>LocaleMatcher.Builder</i></li>
+<li><span style='color:orange'>(draft)</span> public static final class <i>LocaleMatcher.Result</i></li>
+<li><span style='color:orange'>(draft)</span> public static enum <i>LocaleMatcher.Demotion</i></li>
+<li><span style='color:orange'>(draft)</span> public static enum <i>LocaleMatcher.FavorSubtag</i></li>
+<li><span style='color:orange'>(draft)</span> public static enum <i>ULocale.AvailableType</i></li>
+LocaleMatcher
+<ul>
+<li><span style='color:orange'>(draft)</span> public static LocaleMatcher.Builder <i>builder</i>()</li>
+<li><span style='color:orange'>(draft)</span> public java.util.Locale <i>getBestLocale</i>(java.lang.Iterable&lt;java.util.Locale&gt;)</li>
+<li><span style='color:orange'>(draft)</span> public java.util.Locale <i>getBestLocale</i>(java.util.Locale)</li>
+<li><span style='color:orange'>(draft)</span> public LocaleMatcher.Result <i>getBestLocaleResult</i>(java.lang.Iterable&lt;java.util.Locale&gt;)</li>
+<li><span style='color:orange'>(draft)</span> public LocaleMatcher.Result <i>getBestLocaleResult</i>(java.util.Locale)</li>
+<li><span style='color:green'>(stable)</span> public ULocale <i>getBestMatch</i>(java.lang.Iterable&lt;ULocale&gt;)</li>
+<li><span style='color:orange'>(draft)</span> public LocaleMatcher.Result <i>getBestMatchResult</i>(ULocale)</li>
+<li><span style='color:orange'>(draft)</span> public LocaleMatcher.Result <i>getBestMatchResult</i>(java.lang.Iterable&lt;ULocale&gt;)</li>
+</ul>
+LocaleMatcher.Demotion
+<ul>
+<li><span style='color:orange'>(draft)</span> public static final LocaleMatcher.Demotion NONE</li>
+<li><span style='color:orange'>(draft)</span> public static final LocaleMatcher.Demotion REGION</li>
+</ul>
+LocaleMatcher.FavorSubtag
+<ul>
+<li><span style='color:orange'>(draft)</span> public static final LocaleMatcher.FavorSubtag LANGUAGE</li>
+<li><span style='color:orange'>(draft)</span> public static final LocaleMatcher.FavorSubtag SCRIPT</li>
+</ul>
+LocalePriorityList
+<ul>
+<li><span style='color:orange'>(draft)</span> public java.util.Set&lt;ULocale&gt; <i>getULocales</i>()</li>
+</ul>
+ULocale
+<ul>
+<li><span style='color:orange'>(draft)</span> public static java.util.Collection&lt;ULocale&gt; <i>getAvailableLocalesByType</i>(ULocale.AvailableType)</li>
+</ul>
+ULocale.AvailableType
+<ul>
+<li><span style='color:orange'>(draft)</span> public static final ULocale.AvailableType DEFAULT</li>
+<li><span style='color:orange'>(draft)</span> public static final ULocale.AvailableType ONLY_LEGACY_ALIASES</li>
+<li><span style='color:orange'>(draft)</span> public static final ULocale.AvailableType WITH_LEGACY_ALIASES</li>
 </ul>
 </ul>
 
 <hr/>
-<p><i><font size="-1">Contents generated by ReportAPI tool on Tue Apr 09 17:32:39 EDT 2019<br/>© 2019 and later: Unicode, Inc. and others. License & terms of use: <a href="http://www.unicode.org/copyright.html#License">http://www.unicode.org/copyright.html#License</a></font></i></p>
+<p><i><font size="-1">Contents generated by ReportAPI tool on Wed Sep 04 14:00:20 EDT 2019<br/>© 2019 and later: Unicode, Inc. and others. License & terms of use: <a href="http://www.unicode.org/copyright.html#License">http://www.unicode.org/copyright.html#License</a></font></i></p>
 </body>
 </html>
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/lang/CharacterProperties.java b/icu4j/main/classes/core/src/com/ibm/icu/lang/CharacterProperties.java
index 29a75a9..3e2e350 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/lang/CharacterProperties.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/lang/CharacterProperties.java
@@ -19,8 +19,7 @@
  * <p>For details see the method descriptions.
  * For lookup of property values by code point see class {@link UCharacter}.
  *
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  */
 public final class CharacterProperties {
     private CharacterProperties() {}  // all-static
@@ -112,8 +111,7 @@
      * @return the property as a set
      * @see UProperty
      * @see UCharacter#hasBinaryProperty
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final UnicodeSet getBinaryPropertySet(int property) {
         if (property < 0 || UProperty.BINARY_LIMIT <= property) {
@@ -143,8 +141,7 @@
      * @return the property as a map
      * @see UProperty
      * @see UCharacter#getIntPropertyValue
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final CodePointMap getIntPropertyMap(int property) {
         if (property < UProperty.INT_START || UProperty.INT_LIMIT <= property) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/CompactNotation.java b/icu4j/main/classes/core/src/com/ibm/icu/number/CompactNotation.java
index 806f341..a8b704e 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/CompactNotation.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/CompactNotation.java
@@ -31,8 +31,7 @@
  * This class exposes no public functionality. To create a CompactNotation, use one of the factory
  * methods in {@link Notation}.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class CompactNotation extends Notation {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/CurrencyPrecision.java b/icu4j/main/classes/core/src/com/ibm/icu/number/CurrencyPrecision.java
index 09f3f5d..a174ec9 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/CurrencyPrecision.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/CurrencyPrecision.java
@@ -11,8 +11,7 @@
  * <p>
  * To create a CurrencyPrecision, use one of the factory methods on Precision.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public abstract class CurrencyPrecision extends Precision {
@@ -35,8 +34,7 @@
      * @param currency
      *            The currency to associate with this rounding strategy.
      * @return A Precision for chaining or passing to the NumberFormatter rounding() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public Precision withCurrency(Currency currency) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java b/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java
index c607144..945d907 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java
@@ -21,8 +21,7 @@
  *
  * Instances of this class are immutable and thread-safe.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class FormattedNumber implements FormattedValue {
@@ -37,8 +36,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     @Override
     public String toString() {
@@ -81,8 +79,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     @Override
     public <A extends Appendable> A appendTo(A appendable) {
@@ -103,8 +100,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     @Override
     public AttributedCharacterIterator toCharacterIterator() {
@@ -155,8 +151,7 @@
      * pipeline.
      *
      * @return A BigDecimal representation of the formatted number.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public BigDecimal toBigDecimal() {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumberRange.java b/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumberRange.java
index 9992a5a..8189e59 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumberRange.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumberRange.java
@@ -23,8 +23,7 @@
  * Instances of this class are immutable and thread-safe.
  *
  * @author sffc
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  * @see NumberRangeFormatter
  */
 public class FormattedNumberRange implements FormattedValue {
@@ -44,8 +43,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public String toString() {
@@ -55,8 +53,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public <A extends Appendable> A appendTo(A appendable) {
@@ -149,8 +146,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public AttributedCharacterIterator toCharacterIterator() {
@@ -162,8 +158,7 @@
      * printed after scaling and rounding have been applied by the number range formatting pipeline.
      *
      * @return A BigDecimal representation of the first formatted number.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      * @see #getSecondBigDecimal
      */
@@ -176,8 +171,7 @@
      * printed after scaling and rounding have been applied by the number range formatting pipeline.
      *
      * @return A BigDecimal representation of the second formatted number.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      * @see #getFirstBigDecimal
      */
@@ -191,8 +185,7 @@
      * identity fallback was used.
      *
      * @return A RangeIdentityType indicating the resulting identity situation in the formatted number range.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      * @see NumberRangeFormatter.RangeIdentityFallback
      */
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/FractionPrecision.java b/icu4j/main/classes/core/src/com/ibm/icu/number/FractionPrecision.java
index 882a6c5..107389e 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/FractionPrecision.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/FractionPrecision.java
@@ -11,8 +11,7 @@
  * <p>
  * To create a FractionPrecision, use one of the factory methods on Precision.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public abstract class FractionPrecision extends Precision {
@@ -35,8 +34,7 @@
      * @param minSignificantDigits
      *            The number of significant figures to guarantee.
      * @return A Precision for chaining or passing to the NumberFormatter rounding() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public Precision withMinDigits(int minSignificantDigits) {
@@ -64,8 +62,7 @@
      * @param maxSignificantDigits
      *            Round the number to no more than this number of significant figures.
      * @return A Precision for chaining or passing to the NumberFormatter rounding() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public Precision withMaxDigits(int maxSignificantDigits) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/IntegerWidth.java b/icu4j/main/classes/core/src/com/ibm/icu/number/IntegerWidth.java
index b01a42c..c357109 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/IntegerWidth.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/IntegerWidth.java
@@ -10,8 +10,7 @@
  * <p>
  * To create an IntegerWidth, use one of the factory methods.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class IntegerWidth {
@@ -36,8 +35,7 @@
      * @param minInt
      *            The minimum number of places before the decimal separator.
      * @return An IntegerWidth for chaining or passing to the NumberFormatter integerWidth() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static IntegerWidth zeroFillTo(int minInt) {
@@ -61,8 +59,7 @@
      *            The maximum number of places before the decimal separator. maxInt == -1 means no
      *            truncation.
      * @return An IntegerWidth for passing to the NumberFormatter integerWidth() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public IntegerWidth truncateAt(int maxInt) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberFormatter.java b/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberFormatter.java
index eace5ba..1e3f26a 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberFormatter.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberFormatter.java
@@ -24,8 +24,7 @@
  * Instances of this class are immutable and thread-safe.
  *
  * @see NumberFormatter
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class LocalizedNumberFormatter extends NumberFormatterSettings<LocalizedNumberFormatter> {
@@ -48,8 +47,7 @@
      * @param input
      *            The number to format.
      * @return A FormattedNumber object; call .toString() to get the string.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public FormattedNumber format(long input) {
@@ -63,8 +61,7 @@
      * @param input
      *            The number to format.
      * @return A FormattedNumber object; call .toString() to get the string.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public FormattedNumber format(double input) {
@@ -78,8 +75,7 @@
      * @param input
      *            The number to format.
      * @return A FormattedNumber object; call .toString() to get the string.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public FormattedNumber format(Number input) {
@@ -97,8 +93,7 @@
      * @param input
      *            The number to format.
      * @return A FormattedNumber object; call .toString() to get the string.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public FormattedNumber format(Measure input) {
@@ -127,8 +122,7 @@
      * method.
      *
      * @return A Format wrapping this LocalizedNumberFormatter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public Format toFormat() {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberRangeFormatter.java b/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberRangeFormatter.java
index 864493f..b7d875d 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberRangeFormatter.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/LocalizedNumberRangeFormatter.java
@@ -11,8 +11,7 @@
  * Instances of this class are immutable and thread-safe.
  *
  * @author sffc
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  * @see NumberRangeFormatter
  */
 public class LocalizedNumberRangeFormatter extends NumberRangeFormatterSettings<LocalizedNumberRangeFormatter> {
@@ -32,8 +31,7 @@
      * @param second
      *            The second number in the range, usually to the right in LTR locales.
      * @return A FormattedNumberRange object; call .toString() to get the string.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public FormattedNumberRange formatRange(int first, int second) {
@@ -51,8 +49,7 @@
      * @param second
      *            The second number in the range, usually to the right in LTR locales.
      * @return A FormattedNumberRange object; call .toString() to get the string.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public FormattedNumberRange formatRange(double first, double second) {
@@ -72,8 +69,7 @@
      * @param second
      *            The second number in the range, usually to the right in LTR locales.
      * @return A FormattedNumberRange object; call .toString() to get the string.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public FormattedNumberRange formatRange(Number first, Number second) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/Notation.java b/icu4j/main/classes/core/src/com/ibm/icu/number/Notation.java
index 409a4e9..4be9ec2 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/Notation.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/Notation.java
@@ -8,8 +8,7 @@
 /**
  * A class that defines the notation style to be used when formatting numbers in NumberFormatter.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class Notation {
@@ -53,8 +52,7 @@
      * </pre>
      *
      * @return A ScientificNotation for chaining or passing to the NumberFormatter notation() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static ScientificNotation scientific() {
@@ -81,8 +79,7 @@
      * </pre>
      *
      * @return A ScientificNotation for chaining or passing to the NumberFormatter notation() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static ScientificNotation engineering() {
@@ -128,8 +125,7 @@
      * </pre>
      *
      * @return A CompactNotation for passing to the NumberFormatter notation() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static CompactNotation compactShort() {
@@ -156,8 +152,7 @@
      * </pre>
      *
      * @return A CompactNotation for passing to the NumberFormatter notation() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static CompactNotation compactLong() {
@@ -187,8 +182,7 @@
      * </pre>
      *
      * @return A SimpleNotation for passing to the NumberFormatter notation() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static SimpleNotation simple() {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatter.java b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatter.java
index b109e85..497800e 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatter.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatter.java
@@ -61,8 +61,7 @@
  * design doc</a>.
  *
  * @author Shane Carr
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  */
 public final class NumberFormatter {
 
@@ -83,8 +82,7 @@
      * <p>
      * This enum is similar to {@link com.ibm.icu.text.MeasureFormat.FormatWidth}.
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static enum UnitWidth {
@@ -98,8 +96,7 @@
          * In CLDR, this option corresponds to the "Narrow" format for measure units and the "¤¤¤¤¤"
          * placeholder for currencies.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         NARROW,
@@ -116,8 +113,7 @@
          * In CLDR, this option corresponds to the "Short" format for measure units and the "¤"
          * placeholder for currencies.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         SHORT,
@@ -129,8 +125,7 @@
          * In CLDR, this option corresponds to the default format for measure units and the "¤¤¤"
          * placeholder for currencies.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         FULL_NAME,
@@ -142,8 +137,7 @@
          * <p>
          * In CLDR, this option corresponds to the "¤¤" placeholder for currencies.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         ISO_CODE,
@@ -153,8 +147,7 @@
          * currencies, apply monetary symbols and formats as with SHORT, but omit the currency symbol.
          * For measure units, the behavior is equivalent to not specifying the unit at all.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         HIDDEN,
@@ -184,16 +177,14 @@
      * Note: This enum specifies the strategy for grouping sizes. To set which character to use as the
      * grouping separator, use the "symbols" setter.
      *
-     * @draft ICU 61
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 61
      * @see NumberFormatter
      */
     public static enum GroupingStrategy {
         /**
          * Do not display grouping separators in any locale.
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         OFF,
@@ -210,8 +201,7 @@
          * Locale data is used to determine whether to separate larger numbers into groups of 2
          * (customary in South Asia) or groups of 3 (customary in Europe and the Americas).
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         MIN2,
@@ -227,8 +217,7 @@
          * Locale data is used to determine whether to separate larger numbers into groups of 2
          * (customary in South Asia) or groups of 3 (customary in Europe and the Americas).
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         AUTO,
@@ -245,8 +234,7 @@
          * Locale data is used to determine whether to separate larger numbers into groups of 2
          * (customary in South Asia) or groups of 3 (customary in Europe and the Americas).
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         ON_ALIGNED,
@@ -255,8 +243,7 @@
          * Use the Western defaults: groups of 3 and enabled for all numbers 1000 or greater. Do not use
          * locale data for determining the grouping strategy.
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         THOUSANDS
@@ -279,8 +266,7 @@
      * <p>
      * The exact format, including the position and the code point of the sign, differ by locale.
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static enum SignDisplay {
@@ -288,8 +274,7 @@
          * Show the minus sign on negative numbers, and do not show the sign on positive numbers. This is
          * the default behavior.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         AUTO,
@@ -298,8 +283,7 @@
          * Show the minus sign on negative numbers and the plus sign on positive numbers, including zero.
          * To hide the sign on zero, see {@link #EXCEPT_ZERO}.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         ALWAYS,
@@ -307,8 +291,7 @@
         /**
          * Do not show the sign on positive or negative numbers.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         NEVER,
@@ -326,8 +309,7 @@
          * back to the AUTO sign display strategy when formatting without a currency unit. This
          * limitation may be lifted in the future.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         ACCOUNTING,
@@ -338,8 +320,7 @@
          * ACCOUNTING sign display strategy. To hide the sign on zero, see
          * {@link #ACCOUNTING_EXCEPT_ZERO}.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         ACCOUNTING_ALWAYS,
@@ -348,8 +329,7 @@
          * Show the minus sign on negative numbers and the plus sign on positive numbers. Do not show a
          * sign on zero or NaN, unless the sign bit is set (-0.0 gets a sign).
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         EXCEPT_ZERO,
@@ -360,8 +340,7 @@
          * sign). For more information on the accounting format, see the ACCOUNTING sign display
          * strategy.
          *
-         * @draft ICU 61
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 61
          * @see NumberFormatter
          */
         ACCOUNTING_EXCEPT_ZERO,
@@ -376,8 +355,7 @@
      * <li>ALWAYS: "1." and "1.1"
      * </ul>
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static enum DecimalSeparatorDisplay {
@@ -385,8 +363,7 @@
          * Show the decimal separator when there are one or more digits to display after the separator,
          * and do not show it otherwise. This is the default behavior.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         AUTO,
@@ -394,8 +371,7 @@
         /**
          * Always show the decimal separator, even if there are no digits to display after the separator.
          *
-         * @draft ICU 60
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 60
          * @see NumberFormatter
          */
         ALWAYS,
@@ -419,8 +395,7 @@
      * currently known at the call site.
      *
      * @return An {@link UnlocalizedNumberFormatter}, to be used for chaining.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public static UnlocalizedNumberFormatter with() {
         return BASE;
@@ -433,8 +408,7 @@
      * @param locale
      *            The locale from which to load formats and symbols for number formatting.
      * @return A {@link LocalizedNumberFormatter}, to be used for chaining.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public static LocalizedNumberFormatter withLocale(Locale locale) {
         return BASE.locale(locale);
@@ -447,8 +421,7 @@
      * @param locale
      *            The locale from which to load formats and symbols for number formatting.
      * @return A {@link LocalizedNumberFormatter}, to be used for chaining.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public static LocalizedNumberFormatter withLocale(ULocale locale) {
         return BASE.locale(locale);
@@ -462,8 +435,7 @@
      *            The skeleton string off of which to base this NumberFormatter.
      * @return An {@link UnlocalizedNumberFormatter}, to be used for chaining.
      * @throws SkeletonSyntaxException If the given string is not a valid number formatting skeleton.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     public static UnlocalizedNumberFormatter forSkeleton(String skeleton) {
         return NumberSkeletonImpl.getOrCreate(skeleton);
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatterSettings.java b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatterSettings.java
index cbc93c1..fd510fa 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatterSettings.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberFormatterSettings.java
@@ -23,8 +23,7 @@
  * by {@link UnlocalizedNumberFormatter} and {@link LocalizedNumberFormatter}. This class is not intended
  * for public subclassing.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public abstract class NumberFormatterSettings<T extends NumberFormatterSettings<?>> {
@@ -84,8 +83,7 @@
      *            The notation strategy to use.
      * @return The fluent chain.
      * @see Notation
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T notation(Notation notation) {
         return create(KEY_NOTATION, notation);
@@ -142,8 +140,7 @@
      * @see Currency
      * @see NoUnit
      * @see #perUnit
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T unit(MeasureUnit unit) {
         return create(KEY_UNIT, unit);
@@ -170,8 +167,7 @@
      *            The unit to render in the denominator.
      * @return The fluent chain
      * @see #unit
-     * @draft ICU 61
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 61
      */
     public T perUnit(MeasureUnit perUnit) {
         return create(KEY_PER_UNIT, perUnit);
@@ -205,8 +201,7 @@
      *            The rounding precision to use.
      * @return The fluent chain.
      * @see Precision
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     public T precision(Precision precision) {
         return create(KEY_PRECISION, precision);
@@ -230,8 +225,7 @@
      *            The rounding mode to use.
      * @return The fluent chain.
      * @see Precision
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     public T roundingMode(RoundingMode roundingMode) {
         return create(KEY_ROUNDING_MODE, roundingMode);
@@ -263,8 +257,7 @@
      *            The grouping strategy to use.
      * @return The fluent chain.
      * @see GroupingStrategy
-     * @draft ICU 61
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 61
      */
     public T grouping(GroupingStrategy strategy) {
         return create(KEY_GROUPING, strategy);
@@ -292,8 +285,7 @@
      *            The integer width to use.
      * @return The fluent chain.
      * @see IntegerWidth
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T integerWidth(IntegerWidth style) {
         return create(KEY_INTEGER, style);
@@ -337,8 +329,7 @@
      *            The DecimalFormatSymbols to use.
      * @return The fluent chain.
      * @see DecimalFormatSymbols
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T symbols(DecimalFormatSymbols symbols) {
         symbols = (DecimalFormatSymbols) symbols.clone();
@@ -373,8 +364,7 @@
      *            The NumberingSystem to use.
      * @return The fluent chain.
      * @see NumberingSystem
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T symbols(NumberingSystem ns) {
         return create(KEY_SYMBOLS, ns);
@@ -403,8 +393,7 @@
      *            The width to use when rendering numbers.
      * @return The fluent chain
      * @see UnitWidth
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T unitWidth(UnitWidth style) {
         return create(KEY_UNIT_WIDTH, style);
@@ -433,8 +422,7 @@
      *            The sign display strategy to use when rendering numbers.
      * @return The fluent chain
      * @see SignDisplay
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T sign(SignDisplay style) {
         return create(KEY_SIGN, style);
@@ -463,8 +451,7 @@
      *            The decimal separator display strategy to use when rendering numbers.
      * @return The fluent chain
      * @see DecimalSeparatorDisplay
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public T decimal(DecimalSeparatorDisplay style) {
         return create(KEY_DECIMAL, style);
@@ -493,8 +480,7 @@
      *            An amount to be multiplied against numbers before formatting.
      * @return The fluent chain
      * @see Scale
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     public T scale(Scale scale) {
         return create(KEY_SCALE, scale);
@@ -548,8 +534,7 @@
      * @return A number skeleton string with behavior corresponding to this number formatter.
      * @throws UnsupportedOperationException
      *             If the number formatter has an option that cannot be represented in a skeleton string.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     public String toSkeleton() {
         return NumberSkeletonImpl.generate(resolve());
@@ -659,8 +644,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     @Override
     public int hashCode() {
@@ -670,8 +654,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     @Override
     public boolean equals(Object other) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatter.java b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatter.java
index 47abd1d..611f0b8 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatter.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatter.java
@@ -26,8 +26,7 @@
  * <em>fluent</em> design pattern popularized by libraries such as Google's Guava.
  *
  * @author sffc
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  * @see NumberFormatter
  */
 public abstract class NumberRangeFormatter {
@@ -35,8 +34,7 @@
     /**
      * Defines how to merge fields that are identical across the range sign.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public enum RangeCollapse {
@@ -46,8 +44,7 @@
          * <p>
          * The heuristics used for this option are subject to change over time.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         AUTO,
@@ -55,8 +52,7 @@
         /**
          * Do not collapse any part of the number. Example: "3.2 thousand kilograms – 5.3 thousand kilograms"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         NONE,
@@ -65,8 +61,7 @@
          * Collapse the unit part of the number, but not the notation, if present. Example: "3.2 thousand – 5.3 thousand
          * kilograms"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         UNIT,
@@ -75,8 +70,7 @@
          * Collapse any field that is equal across the range sign. May introduce ambiguity on the magnitude of the
          * number. Example: "3.2 – 5.3 thousand kilograms"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         ALL
@@ -86,16 +80,14 @@
      * Defines the behavior when the two numbers in the range are identical after rounding. To programmatically detect
      * when the identity fallback is used, compare the lower and upper BigDecimals via FormattedNumber.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public static enum RangeIdentityFallback {
         /**
          * Show the number as a single value rather than a range. Example: "$5"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         SINGLE_VALUE,
@@ -104,8 +96,7 @@
          * Show the number using a locale-sensitive approximation pattern. If the numbers were the same before rounding,
          * show the single value. Example: "~$5" or "$5"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         APPROXIMATELY_OR_SINGLE_VALUE,
@@ -114,8 +105,7 @@
          * Show the number using a locale-sensitive approximation pattern. Use the range pattern always, even if the
          * inputs are the same. Example: "~$5"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         APPROXIMATELY,
@@ -124,8 +114,7 @@
          * Show the number as the range of two equal values. Use the range pattern always, even if the inputs are the
          * same. Example (with RangeCollapse.NONE): "$5 – $5"
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         RANGE
@@ -135,16 +124,14 @@
      * Used in the result class FormattedNumberRange to indicate to the user whether the numbers formatted in the range
      * were equal or not, and whether or not the identity fallback was applied.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public static enum RangeIdentityResult {
         /**
          * Used to indicate that the two numbers in the range were equal, even before any rounding rules were applied.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         EQUAL_BEFORE_ROUNDING,
@@ -152,8 +139,7 @@
         /**
          * Used to indicate that the two numbers in the range were equal, but only after rounding rules were applied.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         EQUAL_AFTER_ROUNDING,
@@ -161,8 +147,7 @@
         /**
          * Used to indicate that the two numbers in the range were not equal, even after rounding rules were applied.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          * @see NumberRangeFormatter
          */
         NOT_EQUAL
@@ -175,8 +160,7 @@
      * known at the call site.
      *
      * @return An {@link UnlocalizedNumberRangeFormatter}, to be used for chaining.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static UnlocalizedNumberRangeFormatter with() {
         return BASE;
@@ -189,8 +173,7 @@
      * @param locale
      *            The locale from which to load formats and symbols for number range formatting.
      * @return A {@link LocalizedNumberRangeFormatter}, to be used for chaining.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static LocalizedNumberRangeFormatter withLocale(Locale locale) {
         return BASE.locale(locale);
@@ -203,8 +186,7 @@
      * @param locale
      *            The locale from which to load formats and symbols for number range formatting.
      * @return A {@link LocalizedNumberRangeFormatter}, to be used for chaining.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static LocalizedNumberRangeFormatter withLocale(ULocale locale) {
         return BASE.locale(locale);
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatterSettings.java b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatterSettings.java
index 50df9af..642aec5 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatterSettings.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/NumberRangeFormatterSettings.java
@@ -13,8 +13,7 @@
  * public subclassing.
  *
  * @author sffc
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  * @see NumberRangeFormatter
  */
 public abstract class NumberRangeFormatterSettings<T extends NumberRangeFormatterSettings<?>> {
@@ -49,8 +48,7 @@
      * @param formatter
      *            The formatter to use for both numbers in the range.
      * @return The fluent chain.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberFormatter
      * @see NumberRangeFormatter
      */
@@ -68,8 +66,7 @@
      * @param formatterFirst
      *            The formatter to use for the first number in the range.
      * @return The fluent chain.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberFormatter
      * @see NumberRangeFormatter
      */
@@ -87,8 +84,7 @@
      * @param formatterSecond
      *            The formatter to use for the second number in the range.
      * @return The fluent chain.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberFormatter
      * @see NumberRangeFormatter
      */
@@ -111,8 +107,7 @@
      * @param collapse
      *            The collapsing strategy to use for this range.
      * @return The fluent chain.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public T collapse(RangeCollapse collapse) {
@@ -136,8 +131,7 @@
      * @param identityFallback
      *            The strategy to use when formatting two numbers that end up being the same.
      * @return The fluent chain.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      * @see NumberRangeFormatter
      */
     public T identityFallback(RangeIdentityFallback identityFallback) {
@@ -210,8 +204,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public int hashCode() {
@@ -221,8 +214,7 @@
     /**
      * {@inheritDoc}
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public boolean equals(Object other) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/Precision.java b/icu4j/main/classes/core/src/com/ibm/icu/number/Precision.java
index 99b5ef2..0aa395f 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/Precision.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/Precision.java
@@ -18,8 +18,7 @@
  * <p>
  * To create a Precision, use one of the factory methods.
  *
- * @draft ICU 62
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 62
  * @see NumberFormatter
  */
 public abstract class Precision implements Cloneable {
@@ -45,8 +44,7 @@
      * http://www.serpentine.com/blog/2011/06/29/here-be-dragons-advances-in-problems-you-didnt-even-know-you-had/
      *
      * @return A Precision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static Precision unlimited() {
@@ -57,8 +55,7 @@
      * Show numbers rounded if necessary to the nearest integer.
      *
      * @return A FractionPrecision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static FractionPrecision integer() {
@@ -91,8 +88,7 @@
      *            The minimum and maximum number of numerals to display after the decimal separator
      *            (rounding if too long or padding with zeros if too short).
      * @return A FractionPrecision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static FractionPrecision fixedFraction(int minMaxFractionPlaces) {
@@ -117,8 +113,7 @@
      *            The minimum number of numerals to display after the decimal separator (padding with
      *            zeros if necessary).
      * @return A FractionPrecision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static FractionPrecision minFraction(int minFractionPlaces) {
@@ -140,8 +135,7 @@
      *            The maximum number of numerals to display after the decimal mark (rounding if
      *            necessary).
      * @return A FractionPrecision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static FractionPrecision maxFraction(int maxFractionPlaces) {
@@ -166,8 +160,7 @@
      *            The maximum number of numerals to display after the decimal separator (rounding if
      *            necessary).
      * @return A FractionPrecision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static FractionPrecision minMaxFraction(int minFractionPlaces, int maxFractionPlaces) {
@@ -194,8 +187,7 @@
      *            The minimum and maximum number of significant digits to display (rounding if too long
      *            or padding with zeros if too short).
      * @return A Precision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Precision fixedSignificantDigits(int minMaxSignificantDigits) {
@@ -219,8 +211,7 @@
      * @param minSignificantDigits
      *            The minimum number of significant digits to display (padding with zeros if too short).
      * @return A Precision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Precision minSignificantDigits(int minSignificantDigits) {
@@ -239,8 +230,7 @@
      * @param maxSignificantDigits
      *            The maximum number of significant digits to display (rounding if too long).
      * @return A Precision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Precision maxSignificantDigits(int maxSignificantDigits) {
@@ -262,8 +252,7 @@
      * @param maxSignificantDigits
      *            The maximum number of significant digits to display (rounding if necessary).
      * @return A Precision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Precision minMaxSignificantDigits(int minSignificantDigits, int maxSignificantDigits) {
@@ -298,8 +287,7 @@
      * @param roundingIncrement
      *            The increment to which to round numbers.
      * @return A Precision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static Precision increment(BigDecimal roundingIncrement) {
@@ -326,8 +314,7 @@
      *            Either STANDARD (for digital transactions) or CASH (for transactions where the rounding
      *            increment may be limited by the available denominations of cash or coins).
      * @return A CurrencyPrecision for chaining or passing to the NumberFormatter precision() setter.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public static CurrencyPrecision currency(CurrencyUsage currencyUsage) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/Scale.java b/icu4j/main/classes/core/src/com/ibm/icu/number/Scale.java
index cdcf825..dceda2e 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/Scale.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/Scale.java
@@ -15,8 +15,7 @@
  * <p>
  * To create a Multiplier, use one of the factory methods.
  *
- * @draft ICU 62
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 62
  * @see NumberFormatter
  */
 public class Scale {
@@ -68,8 +67,7 @@
      * Do not change the value of numbers when formatting or parsing.
      *
      * @return A Multiplier to prevent any multiplication.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Scale none() {
@@ -84,8 +82,7 @@
      * </pre>
      *
      * @return A Multiplier for passing to the setter in NumberFormatter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Scale powerOfTen(int power) {
@@ -106,8 +103,7 @@
      * This method takes a BigDecimal; also see the version that takes a double.
      *
      * @return A Multiplier for passing to the setter in NumberFormatter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Scale byBigDecimal(BigDecimal multiplicand) {
@@ -128,8 +124,7 @@
      * This method takes a double; also see the version that takes a BigDecimal.
      *
      * @return A Multiplier for passing to the setter in NumberFormatter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Scale byDouble(double multiplicand) {
@@ -148,8 +143,7 @@
      * Multiply a number by both a power of ten and by an arbitrary double value before formatting.
      *
      * @return A Multiplier for passing to the setter in NumberFormatter.
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public static Scale byDoubleAndPowerOfTen(double multiplicand, int power) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/ScientificNotation.java b/icu4j/main/classes/core/src/com/ibm/icu/number/ScientificNotation.java
index 8246af9..10945cd 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/ScientificNotation.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/ScientificNotation.java
@@ -24,8 +24,7 @@
  * <p>
  * To create a ScientificNotation, use one of the factory methods in {@link Notation}.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class ScientificNotation extends Notation implements Cloneable {
@@ -57,8 +56,7 @@
      * @param minExponentDigits
      *            The minimum number of digits to show in the exponent.
      * @return A ScientificNotation, for chaining.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public ScientificNotation withMinExponentDigits(int minExponentDigits) {
@@ -84,8 +82,7 @@
      * @param exponentSignDisplay
      *            The strategy for displaying the sign in the exponent.
      * @return A ScientificNotation, for chaining.
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      * @see NumberFormatter
      */
     public ScientificNotation withExponentSignDisplay(SignDisplay exponentSignDisplay) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/SimpleNotation.java b/icu4j/main/classes/core/src/com/ibm/icu/number/SimpleNotation.java
index bd9ca6e..85f1afe 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/SimpleNotation.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/SimpleNotation.java
@@ -9,8 +9,7 @@
  * This class exposes no public functionality. To create a SimpleNotation, use one of the factory methods
  * in {@link Notation}.
  *
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  * @see NumberFormatter
  */
 public class SimpleNotation extends Notation {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/SkeletonSyntaxException.java b/icu4j/main/classes/core/src/com/ibm/icu/number/SkeletonSyntaxException.java
index d749c65..53a9302 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/SkeletonSyntaxException.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/SkeletonSyntaxException.java
@@ -5,8 +5,7 @@
 /**
  * Exception used for illegal number skeleton strings.
  *
- * @draft ICU 62
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 62
  * @see NumberFormatter
  */
 public class SkeletonSyntaxException extends IllegalArgumentException {
@@ -15,8 +14,7 @@
     /**
      * Construct a new SkeletonSyntaxException with information about the token at the point of failure.
      *
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public SkeletonSyntaxException(String message, CharSequence token) {
@@ -26,8 +24,7 @@
     /**
      * Construct a new SkeletonSyntaxException with information about the token at the point of failure.
      *
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      * @see NumberFormatter
      */
     public SkeletonSyntaxException(String message, CharSequence token, Throwable cause) {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberFormatter.java b/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberFormatter.java
index 0f49a5a..f89f5ec 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberFormatter.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberFormatter.java
@@ -13,8 +13,7 @@
  * Instances of this class are immutable and thread-safe.
  *
  * @see NumberFormatter
- * @draft ICU 60
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 60
  */
 public class UnlocalizedNumberFormatter extends NumberFormatterSettings<UnlocalizedNumberFormatter> {
 
@@ -41,8 +40,7 @@
      * @param locale
      *            The locale to use when loading data for number formatting.
      * @return The fluent chain
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public LocalizedNumberFormatter locale(Locale locale) {
         return new LocalizedNumberFormatter(this, KEY_LOCALE, ULocale.forLocale(locale));
@@ -55,8 +53,7 @@
      *            The locale to use when loading data for number formatting.
      * @return The fluent chain
      * @see #locale(Locale)
-     * @draft ICU 60
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 60
      */
     public LocalizedNumberFormatter locale(ULocale locale) {
         return new LocalizedNumberFormatter(this, KEY_LOCALE, locale);
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberRangeFormatter.java b/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberRangeFormatter.java
index cde4c2f..14070d6 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberRangeFormatter.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/UnlocalizedNumberRangeFormatter.java
@@ -12,8 +12,7 @@
  * Instances of this class are immutable and thread-safe.
  *
  * @author sffc
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  * @see NumberRangeFormatter
  */
 public class UnlocalizedNumberRangeFormatter extends NumberRangeFormatterSettings<UnlocalizedNumberRangeFormatter> {
@@ -41,8 +40,7 @@
      * @param locale
      *            The locale to use when loading data for number range formatting.
      * @return The fluent chain
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public LocalizedNumberRangeFormatter locale(Locale locale) {
         return new LocalizedNumberRangeFormatter(this, KEY_LOCALE, ULocale.forLocale(locale));
@@ -55,8 +53,7 @@
      *            The locale to use when loading data for number range formatting.
      * @return The fluent chain
      * @see #locale(Locale)
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public LocalizedNumberRangeFormatter locale(ULocale locale) {
         return new LocalizedNumberRangeFormatter(this, KEY_LOCALE, locale);
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java b/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java
index 57e4708..1bfeff4 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java
@@ -2197,8 +2197,10 @@
   /**
    * Android libcore uses this internal method to set {@link ParseMode#JAVA_COMPATIBILITY}.
    * @internal
+   * @deprecated This API is ICU internal only.
    */
-  public synchronized void setParseStrictMode(ParseMode parseMode) {
+  @Deprecated
+public synchronized void setParseStrictMode(ParseMode parseMode) {
     properties.setParseMode(parseMode);
     refreshFormatter();
   }
@@ -2484,8 +2486,7 @@
    * @return An instance of {@link LocalizedNumberFormatter} with the same behavior as this instance of
    * DecimalFormat.
    * @see NumberFormatter
-   * @provisional This API might change or be removed in a future release.
-   * @draft ICU 60
+   * @stable ICU 60
    */
   public LocalizedNumberFormatter toNumberFormatter() {
       return formatter;
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java b/icu4j/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java
index d4a9e7d..8fa702d 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/text/SpoofChecker.java
@@ -471,8 +471,7 @@
      * <p>
      * This list and the number of combing characters considered by this check may grow over time.
      *
-     * @draft ICU 62
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 62
      */
     public static final int HIDDEN_OVERLAY = 256;
 
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointMap.java b/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointMap.java
index 7277053..856689a 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointMap.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointMap.java
@@ -12,8 +12,7 @@
  * Abstract map from Unicode code points (U+0000..U+10FFFF) to integer values.
  * This does not implement java.util.Map.
  *
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  */
 public abstract class CodePointMap implements Iterable<CodePointMap.Range> {
     /**
@@ -21,16 +20,14 @@
      * Most users should use NORMAL.
      *
      * @see #getRange
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public enum RangeOption {
         /**
          * getRange() enumerates all same-value ranges as stored in the map.
          * Most users should use this option.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         NORMAL,
         /**
@@ -47,8 +44,7 @@
          * or for special error behavior for unpaired surrogates,
          * but those values are not to be associated with the lead surrogate code *points*.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         FIXED_LEAD_SURROGATES,
         /**
@@ -65,8 +61,7 @@
          * or for special error behavior for unpaired surrogates,
          * but those values are not to be associated with the lead surrogate code *points*.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         FIXED_ALL_SURROGATES
     }
@@ -82,8 +77,7 @@
      *
      * @see #getRange
      * @see #iterator
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public interface ValueFilter {
         /**
@@ -91,8 +85,7 @@
          *
          * @param value map value
          * @return modified value
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public int apply(int value);
     }
@@ -105,8 +98,7 @@
      *
      * @see #getRange
      * @see #iterator
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Range {
         private int start;
@@ -116,8 +108,7 @@
         /**
          * Constructor. Sets start and end to -1 and value to 0.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public Range() {
             start = end = -1;
@@ -126,20 +117,17 @@
 
         /**
          * @return the start code point
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public int getStart() { return start; }
         /**
          * @return the (inclusive) end code point
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public int getEnd() { return end; }
         /**
          * @return the range value
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public int getValue() { return value; }
         /**
@@ -149,8 +137,7 @@
          * @param start new start code point
          * @param end new end code point
          * @param value new value
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public void set(int start, int end, int value) {
             this.start = start;
@@ -199,8 +186,7 @@
      *
      * <p>This class is not intended for public subclassing.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public class StringIterator {
         /**
@@ -245,8 +231,7 @@
          *
          * @param s string to iterate over
          * @param sIndex string index where the iteration will start
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public void reset(CharSequence s, int sIndex) {
             this.s = s;
@@ -262,8 +247,7 @@
          *
          * @return true if the string index was not yet at the end of the string;
          *         otherwise the iterator did not advance
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public boolean next() {
             if (sIndex >= s.length()) {
@@ -282,8 +266,7 @@
          *
          * @return true if the string index was not yet at the start of the string;
          *         otherwise the iterator did not advance
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public boolean previous() {
             if (sIndex <= 0) {
@@ -296,22 +279,19 @@
         }
         /**
          * @return the string index
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public final int getIndex() { return sIndex; }
         /**
          * @return the code point
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public final int getCodePoint() { return c; }
         /**
          * @return the map value,
          *         or an implementation-defined error value if
          *         the code point is an unpaired surrogate
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public final int getValue() { return value; }
     }
@@ -319,8 +299,7 @@
     /**
      * Protected no-args constructor.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     protected CodePointMap() {
     }
@@ -333,8 +312,7 @@
      * @return the map value,
      *         or an implementation-defined error value if
      *         the code point is not in the range 0..U+10FFFF
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public abstract int get(int c);
 
@@ -371,8 +349,7 @@
      *     or null if the values from the map are to be used unmodified
      * @param range the range object that will be set to the code point range and value
      * @return true if start is 0..U+10FFFF; otherwise no new range is fetched
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public abstract boolean getRange(int start, ValueFilter filter, Range range);
 
@@ -395,8 +372,7 @@
      *     or null if the values from the map are to be used unmodified
      * @param range the range object that will be set to the code point range and value
      * @return true if start is 0..U+10FFFF; otherwise no new range is fetched
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public boolean getRange(int start, RangeOption option, int surrogateValue,
             ValueFilter filter, Range range) {
@@ -453,8 +429,7 @@
      * <p>The iterator always returns the same Range object.
      *
      * @return a Range iterator
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public Iterator<Range> iterator() {
@@ -468,8 +443,7 @@
      * @param s string to iterate over
      * @param sIndex string index where the iteration will start
      * @return the iterator
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public StringIterator stringIterator(CharSequence s, int sIndex) {
         return new StringIterator(s, sIndex);
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointTrie.java b/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointTrie.java
index 904b971..d5ee8ab 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointTrie.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/CodePointTrie.java
@@ -22,8 +22,7 @@
  * <p>This class is not intended for public subclassing.
  *
  * @see MutableCodePointTrie
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  */
 public abstract class CodePointTrie extends CodePointMap {
     /**
@@ -36,8 +35,7 @@
      * @see MutableCodePointTrie#buildImmutable(CodePointTrie.Type, CodePointTrie.ValueWidth)
      * @see #fromBinary
      * @see #getType
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public enum Type {
         /**
@@ -45,16 +43,14 @@
          * The {@link Fast} subclasses have additional functions for lookup for BMP and supplementary code points.
          *
          * @see Fast
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         FAST,
         /**
          * Small/slower BMP data structure.
          *
          * @see Small
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         SMALL
     }
@@ -65,31 +61,27 @@
      * <p>Use null for {@link #fromBinary} to accept any data value width;
      * {@link #getValueWidth} will return the actual data value width.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public enum ValueWidth {
         /**
          * The trie stores 16 bits per data value.
          * It returns them as unsigned values 0..0xffff=65535.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         BITS_16,
         /**
          * The trie stores 32 bits per data value.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         BITS_32,
         /**
          * The trie stores 8 bits per data value.
          * It returns them as unsigned values 0..0xff=255.
          *
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         BITS_8
     }
@@ -135,8 +127,7 @@
      * @see MutableCodePointTrie#MutableCodePointTrie(int, int)
      * @see MutableCodePointTrie#buildImmutable(CodePointTrie.Type, CodePointTrie.ValueWidth)
      * @see #toBinary(OutputStream)
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static CodePointTrie fromBinary(Type type, ValueWidth valueWidth, ByteBuffer bytes) {
         ByteOrder outerByteOrder = bytes.order();
@@ -279,23 +270,20 @@
      * Returns the trie type.
      *
      * @return the trie type
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public abstract Type getType();
     /**
      * Returns the number of bits in a trie data value.
      *
      * @return the number of bits in a trie data value
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public final ValueWidth getValueWidth() { return data.getValueWidth(); }
 
     /**
      * {@inheritDoc}
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public int get(int c) {
@@ -307,8 +295,7 @@
      *
      * @param c the input code point; must be U+0000..U+007F
      * @return The ASCII code point's trie value.
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public final int asciiGet(int c) {
         return ascii[c];
@@ -330,8 +317,7 @@
 
     /**
      * {@inheritDoc}
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public final boolean getRange(int start, ValueFilter filter, Range range) {
@@ -488,8 +474,7 @@
      *
      * @param os the output stream
      * @return the number of bytes written
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public final int toBinary(OutputStream os) {
         try {
@@ -754,8 +739,7 @@
     /**
      * A CodePointTrie with {@link Type#FAST}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static abstract class Fast extends CodePointTrie {
         private Fast(char[] index, Data data, int highStart,
@@ -773,8 +757,7 @@
          *                  use null to accept any data value width
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Fast fromBinary(ValueWidth valueWidth, ByteBuffer bytes) {
             return (Fast) CodePointTrie.fromBinary(Type.FAST, valueWidth, bytes);
@@ -782,8 +765,7 @@
 
         /**
          * @return {@link Type#FAST}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final Type getType() { return Type.FAST; }
@@ -795,8 +777,7 @@
          *
          * @param c the input code point, must be U+0000..U+FFFF
          * @return The BMP code point's trie value.
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public abstract int bmpGet(int c);
 
@@ -806,8 +787,7 @@
          *
          * @param c the input code point, must be U+10000..U+10FFFF
          * @return The supplementary code point's trie value.
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public abstract int suppGet(int c);
 
@@ -830,8 +810,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final StringIterator stringIterator(CharSequence s, int sIndex) {
@@ -898,8 +877,7 @@
     /**
      * A CodePointTrie with {@link Type#SMALL}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static abstract class Small extends CodePointTrie {
         private Small(char[] index, Data data, int highStart,
@@ -917,8 +895,7 @@
          *                  use null to accept any data value width
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Small fromBinary(ValueWidth valueWidth, ByteBuffer bytes) {
             return (Small) CodePointTrie.fromBinary(Type.SMALL, valueWidth, bytes);
@@ -926,8 +903,7 @@
 
         /**
          * @return {@link Type#SMALL}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final Type getType() { return Type.SMALL; }
@@ -951,8 +927,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final StringIterator stringIterator(CharSequence s, int sIndex) {
@@ -1019,8 +994,7 @@
     /**
      * A CodePointTrie with {@link Type#FAST} and {@link ValueWidth#BITS_16}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Fast16 extends Fast {
         private final char[] dataArray;
@@ -1038,8 +1012,7 @@
          *
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Fast16 fromBinary(ByteBuffer bytes) {
             return (Fast16) CodePointTrie.fromBinary(Type.FAST, ValueWidth.BITS_16, bytes);
@@ -1047,8 +1020,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int get(int c) {
@@ -1057,8 +1029,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int bmpGet(int c) {
@@ -1068,8 +1039,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int suppGet(int c) {
@@ -1081,8 +1051,7 @@
     /**
      * A CodePointTrie with {@link Type#FAST} and {@link ValueWidth#BITS_32}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Fast32 extends Fast {
         private final int[] dataArray;
@@ -1100,8 +1069,7 @@
          *
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Fast32 fromBinary(ByteBuffer bytes) {
             return (Fast32) CodePointTrie.fromBinary(Type.FAST, ValueWidth.BITS_32, bytes);
@@ -1109,8 +1077,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int get(int c) {
@@ -1119,8 +1086,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int bmpGet(int c) {
@@ -1130,8 +1096,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int suppGet(int c) {
@@ -1143,8 +1108,7 @@
     /**
      * A CodePointTrie with {@link Type#FAST} and {@link ValueWidth#BITS_8}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Fast8 extends Fast {
         private final byte[] dataArray;
@@ -1162,8 +1126,7 @@
          *
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Fast8 fromBinary(ByteBuffer bytes) {
             return (Fast8) CodePointTrie.fromBinary(Type.FAST, ValueWidth.BITS_8, bytes);
@@ -1171,8 +1134,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int get(int c) {
@@ -1181,8 +1143,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int bmpGet(int c) {
@@ -1192,8 +1153,7 @@
 
         /**
          * {@inheritDoc}
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         @Override
         public final int suppGet(int c) {
@@ -1205,8 +1165,7 @@
     /**
      * A CodePointTrie with {@link Type#SMALL} and {@link ValueWidth#BITS_16}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Small16 extends Small {
         Small16(char[] index, char[] data16, int highStart,
@@ -1221,8 +1180,7 @@
          *
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Small16 fromBinary(ByteBuffer bytes) {
             return (Small16) CodePointTrie.fromBinary(Type.SMALL, ValueWidth.BITS_16, bytes);
@@ -1232,8 +1190,7 @@
     /**
      * A CodePointTrie with {@link Type#SMALL} and {@link ValueWidth#BITS_32}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Small32 extends Small {
         Small32(char[] index, int[] data32, int highStart,
@@ -1248,8 +1205,7 @@
          *
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Small32 fromBinary(ByteBuffer bytes) {
             return (Small32) CodePointTrie.fromBinary(Type.SMALL, ValueWidth.BITS_32, bytes);
@@ -1259,8 +1215,7 @@
     /**
      * A CodePointTrie with {@link Type#SMALL} and {@link ValueWidth#BITS_8}.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final class Small8 extends Small {
         Small8(char[] index, byte[] data8, int highStart,
@@ -1275,8 +1230,7 @@
          *
          * @param bytes a buffer containing the binary data of a CodePointTrie
          * @return the trie
-         * @draft ICU 63
-         * @provisional This API might change or be removed in a future release.
+         * @stable ICU 63
          */
         public static Small8 fromBinary(ByteBuffer bytes) {
             return (Small8) CodePointTrie.fromBinary(Type.SMALL, ValueWidth.BITS_8, bytes);
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/LocaleMatcher.java b/icu4j/main/classes/core/src/com/ibm/icu/util/LocaleMatcher.java
index f15a44b..e0fd569 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/LocaleMatcher.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/LocaleMatcher.java
@@ -88,7 +88,7 @@
     /**
      * Builder option for whether the language subtag or the script subtag is most important.
      *
-     * @see Builder#setFavorSubtag(FavorSubtag)
+     * @see LocaleMatcher.Builder#setFavorSubtag(LocaleMatcher.FavorSubtag)
      * @draft ICU 65
      * @provisional This API might change or be removed in a future release.
      */
@@ -114,7 +114,7 @@
      * Builder option for whether all desired locales are treated equally or
      * earlier ones are preferred.
      *
-     * @see Builder#setDemotionPerDesiredLocale(Demotion)
+     * @see LocaleMatcher.Builder#setDemotionPerDesiredLocale(LocaleMatcher.Demotion)
      * @draft ICU 65
      * @provisional This API might change or be removed in a future release.
      */
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/MeasureUnit.java b/icu4j/main/classes/core/src/com/ibm/icu/util/MeasureUnit.java
index 2e80a5d..4e670d2 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/MeasureUnit.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/MeasureUnit.java
@@ -509,15 +509,13 @@
 
     /**
      * Constant for unit of concentr: percent
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final MeasureUnit PERCENT = MeasureUnit.internalGetInstance("concentr", "percent");
 
     /**
      * Constant for unit of concentr: permille
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final MeasureUnit PERMILLE = MeasureUnit.internalGetInstance("concentr", "permille");
 
@@ -602,8 +600,7 @@
 
     /**
      * Constant for unit of digital: petabyte
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final MeasureUnit PETABYTE = MeasureUnit.internalGetInstance("digital", "petabyte");
 
@@ -1090,8 +1087,7 @@
 
     /**
      * Constant for unit of pressure: atmosphere
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static final MeasureUnit ATMOSPHERE = MeasureUnit.internalGetInstance("pressure", "atmosphere");
 
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/MutableCodePointTrie.java b/icu4j/main/classes/core/src/com/ibm/icu/util/MutableCodePointTrie.java
index b9c171e..33262c0 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/MutableCodePointTrie.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/MutableCodePointTrie.java
@@ -22,8 +22,7 @@
  * Iterate over those source ranges; for each of them iterate over this trie;
  * add the source value into the value of each trie range.
  *
- * @draft ICU 63
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 63
  */
 public final class MutableCodePointTrie extends CodePointMap implements Cloneable {
     /**
@@ -36,8 +35,7 @@
      *
      * @param initialValue the initial value that is set for all code points
      * @param errorValue the value for out-of-range code points and ill-formed UTF-8/16
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public MutableCodePointTrie(int initialValue, int errorValue) {
         index = new int[BMP_I_LIMIT];
@@ -54,8 +52,7 @@
      * Clones this mutable trie.
      *
      * @return the clone
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public MutableCodePointTrie clone() {
@@ -90,8 +87,7 @@
      *
      * @param map the source map or trie
      * @return the mutable trie
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public static MutableCodePointTrie fromCodePointMap(CodePointMap map) {
         // TODO: Consider special code branch for map instanceof CodePointTrie?
@@ -126,8 +122,7 @@
 
     /**
      * {@inheritDoc}
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public int get(int c) {
@@ -160,8 +155,7 @@
      *
      * <p>The trie can be modified between calls to this function.
      *
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     @Override
     public boolean getRange(int start, CodePointTrie.ValueFilter filter,
@@ -253,8 +247,7 @@
      *
      * @param c the code point
      * @param value the value
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public void set(int c, int value) {
         if (c < 0 || MAX_UNICODE < c) {
@@ -277,8 +270,7 @@
      * @param start the first code point to get the value
      * @param end the last code point to get the value (inclusive)
      * @param value the value
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public void setRange(int start, int end, int value) {
         if (start < 0 || MAX_UNICODE < start || end < 0 || MAX_UNICODE < end || start > end) {
@@ -353,8 +345,7 @@
      *                   then the values stored in the trie will be truncated first
      *
      * @see #fromCodePointMap(CodePointMap)
-     * @draft ICU 63
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 63
      */
     public CodePointTrie buildImmutable(CodePointTrie.Type type, CodePointTrie.ValueWidth valueWidth) {
         if (type == null || valueWidth == null) {