<root>
  <item name="java.lang.AbstractStringBuilder int indexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder int lastIndexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(java.lang.StringBuffer)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;!null-&gt;!null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder append(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder appendCodePoint(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder delete(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder deleteCharAt(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, char[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, char[], int, int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.Object) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder replace(int, int, java.lang.String) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder replace(int, int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.AbstractStringBuilder reverse()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AbstractStringBuilder java.lang.String substring(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.AssertionError AssertionError(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Boolean Boolean(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Boolean boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Boolean boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Boolean boolean parseBoolean(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Boolean boolean parseBoolean(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Boolean boolean toBoolean(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Boolean boolean toBoolean(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Boolean int compareTo(java.lang.Boolean) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Boolean int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Boolean java.lang.Boolean valueOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Boolean java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Boolean java.lang.String toString(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte Byte(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Byte boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Byte byte parseByte(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte byte parseByte(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte int compareTo(java.lang.Byte) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.Byte decode(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.Byte decode(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.Byte valueOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.Byte valueOf(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.Byte valueOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.Byte valueOf(java.lang.String, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Byte java.lang.String toString(byte)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Character boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Character char[] toChars(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int codePointAt(char[], int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int codePointAt(java.lang.CharSequence, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int codePointBefore(char[], int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int codePointBefore(java.lang.CharSequence, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int compareTo(java.lang.Character) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character int toChars(int, char[], int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character java.lang.Character valueOf(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character java.lang.String toString(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Character void toSurrogates(int, char[], int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class A getAnnotation(java.lang.Class&lt;A&gt;) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class T cast(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;!null-&gt;!null;null-&gt;null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Class T newInstance()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class T newInstance0()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class T[] getEnumConstants()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class boolean access$100(java.lang.Object[], java.lang.Object[]) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class boolean access$100(java.lang.Object[], java.lang.Object[]) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class boolean access$202(boolean)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;false-&gt;false;true-&gt;true&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Class boolean access$302(boolean)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;false-&gt;false;true-&gt;true&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Class boolean arrayContentsEq(java.lang.Object[], java.lang.Object[]) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class boolean arrayContentsEq(java.lang.Object[], java.lang.Object[]) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class boolean isAnnotationPresent(java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.io.InputStream getResourceAsStream(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.Class toClass(java.lang.reflect.Type)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Class java.lang.Class&lt;? extends U&gt; asSubclass(java.lang.Class&lt;U&gt;) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.Class&lt;? extends U&gt; asSubclass(java.lang.Class&lt;U&gt;)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.Class.EnclosingMethodInfo getEnclosingMethodInfo()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.ClassLoader getClassLoader()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.String argumentTypesToString(java.lang.Class[]) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.String argumentTypesToString(java.lang.Class[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.String getCanonicalName()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.String getSimpleBinaryName()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.String getSimpleName()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.String resolveName(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;!null-&gt;!null;null-&gt;null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Class java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Constructor&lt;?&gt; getEnclosingConstructor()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Constructor&lt;T&gt; getConstructor(java.lang.Class...) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Constructor&lt;T&gt; getConstructor0(java.lang.Class[], int) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Constructor&lt;T&gt; getDeclaredConstructor(java.lang.Class...) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Constructor[] copyConstructors(java.lang.reflect.Constructor[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field getDeclaredField(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field getField(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field getField0(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field getField0(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field searchFields(java.lang.reflect.Field[], java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field searchFields(java.lang.reflect.Field[], java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field searchFields(java.lang.reflect.Field[], java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field[] copyFields(java.lang.reflect.Field[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Field[] privateGetPublicFields(java.util.Set) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method getDeclaredMethod(java.lang.String, java.lang.Class...) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method getDeclaredMethod(java.lang.String, java.lang.Class...) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method getEnclosingMethod()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method getMethod(java.lang.String, java.lang.Class...) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method getMethod0(java.lang.String, java.lang.Class[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method getMethod0(java.lang.String, java.lang.Class[])">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method searchMethods(java.lang.reflect.Method[], java.lang.String, java.lang.Class[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method searchMethods(java.lang.reflect.Method[], java.lang.String, java.lang.Class[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method searchMethods(java.lang.reflect.Method[], java.lang.String, java.lang.Class[]) 2">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Method[] copyMethods(java.lang.reflect.Method[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class java.lang.reflect.Type getGenericSuperclass()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class java.net.URL getResource(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Class void addAll(java.util.Collection, java.lang.reflect.Field[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Class void checkMemberAccess(int, java.lang.ClassLoader) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader boolean compareCerts(java.security.cert.Certificate[], java.security.cert.Certificate[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader boolean compareCerts(java.security.cert.Certificate[], java.security.cert.Certificate[]) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader boolean isAncestor(java.lang.ClassLoader) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader boolean loadLibrary0(java.lang.Class, java.io.File)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;_,null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.ClassLoader java.io.InputStream getResourceAsStream(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.io.InputStream getSystemResourceAsStream(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.ClassLoader getCallerClassLoader()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.ClassLoader getParent()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.ClassLoader getSystemClassLoader()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.Package definePackage(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.net.URL)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.String findLibrary(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.String findLibrary(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;!null-&gt;null;null-&gt;null&quot;"/>
    </annotation>
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.lang.String[] initializePath(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader java.net.URL findResource(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.net.URL findResource(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;!null-&gt;null;null-&gt;null&quot;"/>
    </annotation>
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.net.URL getBootstrapResource(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.net.URL getResource(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.net.URL getSystemResource(java.lang.String)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.util.Enumeration findResources(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ClassLoader java.util.Enumeration findResources(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader java.util.Enumeration getBootstrapResources(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader java.util.Enumeration getResources(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader java.util.Enumeration getSystemResources(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader void checkCerts(java.lang.String, java.security.CodeSource) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ClassLoader void setSigners(java.lang.Class, java.lang.Object[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Double boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Double boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Double int compareTo(java.lang.Double) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Double int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Double java.lang.Double valueOf(double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Double java.lang.Double valueOf(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Enum T valueOf(java.lang.Class&lt;T&gt;, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Enum boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Enum int compareTo(E) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Enum int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Float boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Float boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Float int compareTo(java.lang.Float) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Float int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Float java.lang.Float valueOf(float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Float java.lang.Float valueOf(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer Integer(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Integer boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Integer int compareTo(java.lang.Integer) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer int parseInt(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer int parseInt(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer decode(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer decode(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer getInteger(java.lang.String, java.lang.Integer)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;_,!null-&gt;!null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Integer java.lang.Integer valueOf(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer valueOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer valueOf(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer valueOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.Integer valueOf(java.lang.String, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toBinaryString(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toHexString(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toOctalString(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toString(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toString(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer java.lang.String toUnsignedString(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Integer void getChars(int, int, char[]) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long Long(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Long boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Long int compareTo(java.lang.Long) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.Long decode(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.Long decode(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.Long getLong(java.lang.String, java.lang.Long)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;_,!null-&gt;!null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Long java.lang.Long valueOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.Long valueOf(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.Long valueOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.Long valueOf(java.lang.String, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toBinaryString(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toHexString(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toOctalString(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toString(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toString(long, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long java.lang.String toUnsignedString(long, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long long parseLong(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long long parseLong(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Long void getChars(long, int, char[]) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.NumberFormatException java.lang.NumberFormatException forInputString(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.NumberFormatException java.lang.NumberFormatException forInputString(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Object boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Object java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short Short(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Short boolean equals(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;false&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.Short int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short int compareTo(java.lang.Short) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short decode(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short decode(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short valueOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short valueOf(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short valueOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short valueOf(java.lang.String, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.Short valueOf(short)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short java.lang.String toString(short)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short short parseShort(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Short short parseShort(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], int, int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], int, int, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], int, int, java.lang.String) 3">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(byte[], java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(char[], int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(int[], int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String String(java.lang.StringBuilder) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean contains(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean contentEquals(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean contentEquals(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean endsWith(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean equals(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.String boolean equalsIgnoreCase(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.String boolean regionMatches(boolean, int, java.lang.String, int, int) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean regionMatches(int, java.lang.String, int, int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean startsWith(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String boolean startsWith(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String byte[] getBytes(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String char[] toCharArray()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String int compareTo(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String int compareTo(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String int indexOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String int indexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String int lastIndexOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String int lastIndexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.CharSequence subSequence(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String concat(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String concat(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String copyValueOf(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String copyValueOf(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String copyValueOf(char[], int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String copyValueOf(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String replace(char, char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String replace(java.lang.CharSequence, java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String replace(java.lang.CharSequence, java.lang.CharSequence) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String substring(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String substring(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toLowerCase()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toLowerCase(java.util.Locale) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toLowerCase(java.util.Locale)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toUpperCase()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toUpperCase(java.util.Locale) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String toUpperCase(java.util.Locale)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String trim()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(char[], int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.String java.lang.String valueOf(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;null-&gt;!null&quot;"/>
    </annotation>
  </item>
  <item name="java.lang.String java.lang.String valueOf(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String void checkBounds(byte[], int, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String.CaseInsensitiveComparator CaseInsensitiveComparator(java.lang.String.1) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.String.CaseInsensitiveComparator int compare(java.lang.String, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.String.CaseInsensitiveComparator int compare(java.lang.String, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer StringBuffer(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer StringBuffer(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer int indexOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer int indexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer int lastIndexOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer int lastIndexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(java.lang.StringBuffer)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder append(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder appendCodePoint(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder delete(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder deleteCharAt(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, char[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, char[], int, int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.Object) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder insert(int, long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder replace(int, int, java.lang.String) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder replace(int, int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.AbstractStringBuilder reverse()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.Appendable append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.Appendable append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.Appendable append(java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.Appendable append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.CharSequence subSequence(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.String substring(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.String substring(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(java.lang.StringBuffer)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer append(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer appendCodePoint(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer delete(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer deleteCharAt(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, char[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, char[], int, int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.CharSequence) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.Object) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer insert(int, long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer replace(int, int, java.lang.String) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer replace(int, int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer java.lang.StringBuffer reverse()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer void readObject(java.io.ObjectInputStream) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuffer void writeObject(java.io.ObjectOutputStream) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder StringBuilder(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder StringBuilder(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder int indexOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder int indexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder int lastIndexOf(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder int lastIndexOf(java.lang.String, int) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(java.lang.StringBuffer)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder append(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder appendCodePoint(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder delete(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder deleteCharAt(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, char[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, char[], int, int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.Object) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder insert(int, long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder replace(int, int, java.lang.String) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder replace(int, int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.AbstractStringBuilder reverse()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.Appendable append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.Appendable append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.Appendable append(java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.Appendable append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(char[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.CharSequence) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.StringBuffer) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.StringBuffer)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.StringBuilder) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(java.lang.StringBuilder)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder append(long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder appendCodePoint(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder delete(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder deleteCharAt(int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, boolean)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, char)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, char[]) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, char[])">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, char[], int, int) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, char[], int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, double)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, float)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.CharSequence) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.CharSequence)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.CharSequence, int, int)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.Object) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.Object)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder insert(int, long)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder replace(int, int, java.lang.String) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder replace(int, int, java.lang.String)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder java.lang.StringBuilder reverse()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder void readObject(java.io.ObjectInputStream) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.StringBuilder void writeObject(java.io.ObjectOutputStream) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System java.io.InputStream nullInputStream()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.System java.io.PrintStream nullPrintStream()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.System java.lang.String clearProperty(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System java.lang.String getProperty(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System java.lang.String getProperty(java.lang.String, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System java.lang.String setProperty(java.lang.String, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System void checkKey(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System void setProperties(java.util.Properties) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.System void setSecurityManager0(java.lang.SecurityManager) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.System.1 java.lang.Object run()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.System.2 sun.reflect.ConstantPool getConstantPool(java.lang.Class) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System.2 sun.reflect.annotation.AnnotationType getAnnotationType(java.lang.Class) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System.2 void blockedOn(java.lang.Thread, sun.nio.ch.Interruptible) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.System.2 void setAnnotationType(java.lang.Class, sun.reflect.annotation.AnnotationType) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.Runnable, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.Runnable) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Thread Thread(java.lang.ThreadGroup, java.lang.String) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread java.lang.ClassLoader getContextClassLoader()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Thread java.lang.String getName()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread java.lang.String toString()">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread void init(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Thread void init(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long) 2">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Thread void setName(java.lang.String) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal T childValue(T) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal T get()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal T initialValue()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal T setInitialValue()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal int access$400(java.lang.ThreadLocal) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal java.lang.ThreadLocal.ThreadLocalMap createInheritedMap(java.lang.ThreadLocal.ThreadLocalMap) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal java.lang.ThreadLocal.ThreadLocalMap createInheritedMap(java.lang.ThreadLocal.ThreadLocalMap)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal java.lang.ThreadLocal.ThreadLocalMap getMap(java.lang.Thread) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal void createMap(java.lang.Thread, T) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap ThreadLocalMap(java.lang.ThreadLocal, java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap ThreadLocalMap(java.lang.ThreadLocal.ThreadLocalMap) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap ThreadLocalMap(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal.1) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap ThreadLocalMap(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal.1) 1">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry access$000(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry access$000(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry access$000(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry getEntry(java.lang.ThreadLocal) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry getEntry(java.lang.ThreadLocal)">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry getEntryAfterMiss(java.lang.ThreadLocal, int, java.lang.ThreadLocal.ThreadLocalMap.Entry) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry getEntryAfterMiss(java.lang.ThreadLocal, int, java.lang.ThreadLocal.ThreadLocalMap.Entry) 2">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap java.lang.ThreadLocal.ThreadLocalMap.Entry getEntryAfterMiss(java.lang.ThreadLocal, int, java.lang.ThreadLocal.ThreadLocalMap.Entry)">
    <annotation name="org.jetbrains.annotations.Contract">
      <val val="&quot;_,_,null-&gt;null&quot;"/>
    </annotation>
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap void access$100(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal, java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap void access$100(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal, java.lang.Object) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap void access$200(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap void access$200(java.lang.ThreadLocal.ThreadLocalMap, java.lang.ThreadLocal) 1">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap void remove(java.lang.ThreadLocal) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.ThreadLocal.ThreadLocalMap void set(java.lang.ThreadLocal, java.lang.Object) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable java.lang.Throwable getCause()">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Throwable java.lang.Throwable initCause(java.lang.Throwable)">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable void printEnclosedStackTrace(java.lang.Throwable.PrintStreamOrWriter, java.lang.StackTraceElement[], java.lang.String, java.lang.String, java.util.Set&lt;java.lang.Throwable&gt;) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable void printEnclosedStackTrace(java.lang.Throwable.PrintStreamOrWriter, java.lang.StackTraceElement[], java.lang.String, java.lang.String, java.util.Set&lt;java.lang.Throwable&gt;) 2">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
  <item name="java.lang.Throwable void printEnclosedStackTrace(java.lang.Throwable.PrintStreamOrWriter, java.lang.StackTraceElement[], java.lang.String, java.lang.String, java.util.Set&lt;java.lang.Throwable&gt;) 4">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable void printStackTrace(java.lang.Throwable.PrintStreamOrWriter) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable void readObject(java.io.ObjectInputStream) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable void setStackTrace(java.lang.StackTraceElement[]) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable void writeObject(java.io.ObjectOutputStream) 0">
    <annotation name="org.jetbrains.annotations.NotNull"/>
  </item>
  <item name="java.lang.Throwable.PrintStreamOrWriter PrintStreamOrWriter(java.lang.Throwable.1) 0">
    <annotation name="org.jetbrains.annotations.Nullable"/>
  </item>
</root>
