<?xml version="1.0" encoding="UTF-8"?>
<issues format="6" by="lint 7.2.0-dev" type="baseline" client="" dependencies="true" name="" variant="all" version="7.2.0-dev">
<!-- generated by libcore/tools/update-lint-baseline/update-lint-baseline.sh -->

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="final class ArrayElementVarHandle extends VarHandle {"
        errorLine2="                                          ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/ArrayElementVarHandle.java"
            line="26"
            column="43"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="        new BigDecimal(BigInteger.TWO,        2,  0, 1),"
        errorLine2="                       ~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigDecimal.java"
            line="296"
            column="24"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                rb = BigInteger.TWO.pow(exponent).multiply(compactVal);"
        errorLine2="                     ~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigDecimal.java"
            line="956"
            column="22"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="            return TWO;"
        errorLine2="                   ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="865"
            column="20"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                        result = result.add(TWO);"
        errorLine2="                                            ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="883"
            column="45"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                result = result.add(TWO);"
        errorLine2="                                    ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="896"
            column="37"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                z = z.modPow(TWO, this);"
        errorLine2="                             ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="1113"
            column="30"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="        if (w.equals(TWO))"
        errorLine2="                     ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="3846"
            column="22"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="final class ByteArrayViewVarHandle extends VarHandle {"
        errorLine2="                                           ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/ByteArrayViewVarHandle.java"
            line="25"
            column="44"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="final class ByteBufferViewVarHandle extends VarHandle {"
        errorLine2="                                            ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/ByteBufferViewVarHandle.java"
            line="26"
            column="45"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.ref.Cleaner.Cleanable`"
        errorLine1="                Cleanable ref = (Cleanable) queue.remove(60 * 1000L);"
        errorLine2="                                 ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/jdk/internal/ref/CleanerImpl.java"
            line="152"
            column="34"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/DatagramSocketImpl.java"
            line="288"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/DatagramSocketImpl.java"
            line="333"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.spec.NamedParameterSpec`"
        errorLine1="public class ECGenParameterSpec extends NamedParameterSpec implements AlgorithmParameterSpec {"
        errorLine2="                                        ~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/spec/ECGenParameterSpec.java"
            line="38"
            column="41"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.interfaces.EdECKey`"
        errorLine1="public interface EdECPrivateKey extends EdECKey, PrivateKey {"
        errorLine2="                                        ~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/EdECPrivateKey.java"
            line="44"
            column="41"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.interfaces.EdECKey`"
        errorLine1="public interface EdECPublicKey extends EdECKey, PublicKey {"
        errorLine2="                                       ~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/EdECPublicKey.java"
            line="42"
            column="40"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="class FieldVarHandle extends VarHandle {"
        errorLine2="                             ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/FieldVarHandle.java"
            line="26"
            column="30"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="                                || VarHandle.class.isAssignableFrom(declaringClass))) {"
        errorLine2="                                   ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandleImpl.java"
            line="165"
            column="36"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="            } else if (refc == VarHandle.class) {"
        errorLine2="                               ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandles.java"
            line="955"
            column="32"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="        Class&lt;?> refc = VarHandle.class;"
        errorLine2="                        ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandles.java"
            line="2580"
            column="25"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="        MethodType methodType = type.insertParameterTypes(0, VarHandle.class);"
        errorLine2="                                                             ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandles.java"
            line="2587"
            column="62"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.lang.ref.Cleaner.Cleanable`"
        errorLine1="        implements Cleaner.Cleanable {"
        errorLine2="                   ~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/jdk/internal/ref/PhantomCleanable.java"
            line="44"
            column="20"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/SocketImpl.java"
            line="400"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 33 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/SocketImpl.java"
            line="443"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.cert.URICertStoreParameters`"
        errorLine1="        if (p == null || (!(p instanceof URICertStoreParameters))) {"
        errorLine2="                                         ~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/cert/URICertStoreParameters.java"
            line="127"
            column="42"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.cert.URICertStoreParameters`"
        errorLine1="        URICertStoreParameters other = (URICertStoreParameters)p;"
        errorLine2="                                        ~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/cert/URICertStoreParameters.java"
            line="135"
            column="41"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.interfaces.XECKey`"
        errorLine1="public interface XECPrivateKey extends XECKey, PrivateKey {"
        errorLine2="                                       ~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/XECPrivateKey.java"
            line="45"
            column="40"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 33 (current min is 31): `java.security.interfaces.XECKey`"
        errorLine1="public interface XECPublicKey extends XECKey, PublicKey {"
        errorLine2="                                      ~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/XECPublicKey.java"
            line="45"
            column="39"/>
    </issue>

    <!-- TODO(b/205570605): The following repeats all the issues above, but with
         required API level 32 instead of 33 in the messages. This happens in
         unbundled Mainline builds, e.g.
         m TARGET_PRODUCT=mainline_modules_arm TARGET_BUILD_APPS=com.android.art TARGET_BUILD_UNBUNDLED=true lint-check
    -->

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="final class ArrayElementVarHandle extends VarHandle {"
        errorLine2="                                          ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/ArrayElementVarHandle.java"
            line="26"
            column="43"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="        new BigDecimal(BigInteger.TWO,        2,  0, 1),"
        errorLine2="                       ~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigDecimal.java"
            line="296"
            column="24"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                rb = BigInteger.TWO.pow(exponent).multiply(compactVal);"
        errorLine2="                     ~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigDecimal.java"
            line="956"
            column="22"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="            return TWO;"
        errorLine2="                   ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="865"
            column="20"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                        result = result.add(TWO);"
        errorLine2="                                            ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="883"
            column="45"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                result = result.add(TWO);"
        errorLine2="                                    ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="896"
            column="37"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="                z = z.modPow(TWO, this);"
        errorLine2="                             ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="1113"
            column="30"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.math.BigInteger#TWO`"
        errorLine1="        if (w.equals(TWO))"
        errorLine2="                     ~~~">
        <location
            file="libcore/ojluni/src/main/java/java/math/BigInteger.java"
            line="3846"
            column="22"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="final class ByteArrayViewVarHandle extends VarHandle {"
        errorLine2="                                           ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/ByteArrayViewVarHandle.java"
            line="25"
            column="44"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="final class ByteBufferViewVarHandle extends VarHandle {"
        errorLine2="                                            ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/ByteBufferViewVarHandle.java"
            line="26"
            column="45"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.ref.Cleaner.Cleanable`"
        errorLine1="                Cleanable ref = (Cleanable) queue.remove(60 * 1000L);"
        errorLine2="                                 ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/jdk/internal/ref/CleanerImpl.java"
            line="152"
            column="34"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/DatagramSocketImpl.java"
            line="288"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/DatagramSocketImpl.java"
            line="333"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.spec.NamedParameterSpec`"
        errorLine1="public class ECGenParameterSpec extends NamedParameterSpec implements AlgorithmParameterSpec {"
        errorLine2="                                        ~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/spec/ECGenParameterSpec.java"
            line="38"
            column="41"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.interfaces.EdECKey`"
        errorLine1="public interface EdECPrivateKey extends EdECKey, PrivateKey {"
        errorLine2="                                        ~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/EdECPrivateKey.java"
            line="44"
            column="41"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.interfaces.EdECKey`"
        errorLine1="public interface EdECPublicKey extends EdECKey, PublicKey {"
        errorLine2="                                       ~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/EdECPublicKey.java"
            line="42"
            column="40"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="class FieldVarHandle extends VarHandle {"
        errorLine2="                             ~~~~~~~~~">
        <location
            file="libcore/libart/src/main/java/java/lang/invoke/FieldVarHandle.java"
            line="26"
            column="30"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="                                || VarHandle.class.isAssignableFrom(declaringClass))) {"
        errorLine2="                                   ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandleImpl.java"
            line="165"
            column="36"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="            } else if (refc == VarHandle.class) {"
        errorLine2="                               ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandles.java"
            line="955"
            column="32"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="        Class&lt;?> refc = VarHandle.class;"
        errorLine2="                        ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandles.java"
            line="2580"
            column="25"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.invoke.VarHandle`"
        errorLine1="        MethodType methodType = type.insertParameterTypes(0, VarHandle.class);"
        errorLine2="                                                             ~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/lang/invoke/MethodHandles.java"
            line="2587"
            column="62"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.lang.ref.Cleaner.Cleanable`"
        errorLine1="        implements Cleaner.Cleanable {"
        errorLine2="                   ~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/jdk/internal/ref/PhantomCleanable.java"
            line="44"
            column="20"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/SocketImpl.java"
            line="400"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Field requires API level 32 (current min is 31): `java.net.StandardSocketOptions#SO_REUSEPORT`"
        errorLine1="        } else if (name == StandardSocketOptions.SO_REUSEPORT &amp;&amp;"
        errorLine2="                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/net/SocketImpl.java"
            line="443"
            column="28"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.cert.URICertStoreParameters`"
        errorLine1="        if (p == null || (!(p instanceof URICertStoreParameters))) {"
        errorLine2="                                         ~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/cert/URICertStoreParameters.java"
            line="127"
            column="42"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.cert.URICertStoreParameters`"
        errorLine1="        URICertStoreParameters other = (URICertStoreParameters)p;"
        errorLine2="                                        ~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/cert/URICertStoreParameters.java"
            line="135"
            column="41"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.interfaces.XECKey`"
        errorLine1="public interface XECPrivateKey extends XECKey, PrivateKey {"
        errorLine2="                                       ~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/XECPrivateKey.java"
            line="45"
            column="40"/>
    </issue>

    <issue
        id="NewApi"
        message="Class requires API level 32 (current min is 31): `java.security.interfaces.XECKey`"
        errorLine1="public interface XECPublicKey extends XECKey, PublicKey {"
        errorLine2="                                      ~~~~~~">
        <location
            file="libcore/ojluni/src/main/java/java/security/interfaces/XECPublicKey.java"
            line="45"
            column="39"/>
    </issue>

</issues>
